UPnP: randomize external port
Some routers are so broken that UPnP NAT don't report ConflictInMappingEntry when redirecting the same port several times. Here is for example what we had with a Numericable Box (France): 0 (1024, 'TCP', ('192.168.0.29', 1194), 're6stnet openvpn server (1194/tcp)', '1', '', 0) 1 (1024, 'TCP', ('192.168.0.16', 1194), 're6stnet openvpn server (1194/tcp)', '1', '', 0) 2 (1024, 'TCP', ('192.168.0.33', 1194), 're6stnet openvpn server (1194/tcp)', '1', '', 0) 3 (1024, 'TCP', ('192.168.0.20', 1194), 're6stnet openvpn server (1194/tcp)', '1', '', 0) ('192.168.0.29', 1194, 're6stnet openvpn server (1194/tcp)', True, 0) Obviously, this can't work. It seems that this router also accepts a limited number of NAT rules, far less than we'd like, so even if there's still a probability of conflict with this commit, it will be good enough for our use.
Showing
Please register or sign in to comment