I am writing a P2P application and do not want users to manually configure port forwarding.
I'm a bit confused, because there are two different protocols for setting up NAT, UPnP / IGD, and NAT-PMP. Which one should I use? Are they supported by all NATs? Or should I support both to make sure that at least one of them will be supported by NAT?
NAT-PMP (now PCP) is an ietf project, so it needs to be implemented. However, to ensure compatibility, you must allow your application to silently refuse UPnP / IGD, since not all NAT devices support PCP / NAT-PMP, and many of the older devices only support UPnP / IGD.
Consider using STUN instead of NAT-PMP or UPnP-IGD. It usually works all over the place and will almost certainly work through the large-scale NAT services NAT NAT and NAT64.
UDP. , , 4G LTE ( ) , UDP-. , UDP.
Source: https://habr.com/ru/post/1783573/More articles:Eclipse rcp disables the exit button in the eclipse application - buttonHow to show the amount of stocks available in Ubercart? - drupalFailed to load DLL 'iclit09b.dll' - .netHow can I override get and set methods for all properties in a class? - c #Как создать текстовое поле с адресом IPv4? - c#An optimized way to retrieve ManyToMany fields in a django model in a single query - performanceQuestion about "this" reserved word in JavaScript - javascriptGAE vs S3 for storing images / images - google-app-engineStop video playback in webview, navigation controller - youtubeFirefox 3 cookie access in Python - pythonAll Articles