UPNP Plugin - UDP/TCP port mapping on network devices


UPNP Plugin is code plugin to make you easy to add and delete UDP/TCP port mapping on network devices which are compatible with UPNP Protocal (Universal Plug and Play - Wikipedia). It allows your game to use P2P under NAT. It’s based on WANIPConnection:1 Service Template Version 1.01 (…v1-Service.pdf). It uses SocketSubsystem and HttpModule in UE4 and exposes necessary fuctions in blueprint. It doens’t use any third party library.

**Available on Marketplace

Buy Simpleon Gumroad**

UPNP Plugin demo under NAT

Here are sample binaries on windows. GitHub - woodsshin/UPNPSample



Device Status

UDP/TCP Port Mapping

Engine Compatibility

4.10 - 4.25 on Gumroad
Intended Platform : Window, Mac, Mobile
Platforms Tested : Window, Mac, Android


Here is android build.

In order to run it on android, you have to enable USB debugging and modify ANDROIDHOME as your local path in Install_UPNPSample_Development-armv7-es2.bat and Uninstall_UPNPSample_Development-armv7-es2.bat.

Released on marketplace

Updated 4.18

Thanks so much for creating this! I have been having a problem where Androids either can’t see each other’s sessions or if they can, they don’t successfully join them. When I get the devices IP address from within a runtime of Unreal, it returns instead of the Android’s actual device IP on the LAN. Does this plugin solve that problem or provide a different way to connect two or more Androids within the same LAN?

Hi, how did you get device IP? I’ve tested on Androids, It’s working well.

It turns out my version of the Unreal Engine was broken. I updated from 4.23 to 4.24 and now it works.