godot: UPNP finding invalid gateway on network with DMZ

Godot version:

3.1-beta.1

OS/device including version:

Windows 10

Issue description:

I would like to start by saying that I’m a beginner on computer network.

The UPNP class can’t find the gateway, not sure what is going on. Note that this NPM package package on a node server can successfully do port-forwarding on the Xiaomi router (more info bellow).

Here is the output produced by the bellow repro project:

device[0]:
- igd_our_addr:
- igd_service_type:
- igd_status: 5
- service_type: urn:schemas-upnp-org:device:InternetGatewayDevice:1
gateway:[Object:null]
no valid gateway

NB: IGD_STATUS_DISCONNECTED = 5

ISP Router Xiaomi Router PC
DMZ set to Xiaomi Router IP - UPNP enabled | static ip -

Steps to reproduce:

var port = 12345
var upnp = UPNP.new()
upnp.discover()
if upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():
	upnp.add_port_mapping(port, port, 'Godot', 'UDP')
	upnp.add_port_mapping(port, port, 'Godot', 'TCP')

Minimal reproduction project: test-network.zip

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 20 (4 by maintainers)

Most upvoted comments

@hk-32 you can build the engine from source or wait for 3.2.1 to be released.

According to this reddit post similar issues seem to exist with the TP-Link Archer C2 AC900.