Я пытаюсь сделать одноранговое приложение, и я хочу, чтобы порт обменивался информацией о соединении, и я хочу убедиться, что этот порт не будет закрыт от брандмауэра на пути между узлами, и этот порт не используется другим приложением
1 ответ
0
По сути, существует несколько способов установить соединение между одноранговыми узлами, которые не могут принимать входящие соединения по их очевидным интернет-адресам.
- Определите, существует ли трансляция сетевых адресов (NAT), и, если есть, попытайтесь использовать UPnP и / или другие протоколы преобразования портов NAT для настройки любых маршрутизаторов NAT, которые отвечают на переадресацию порта с Интернет-адреса на локальный адрес.
- Если один из пиров может принимать входящие соединения, координируйте так, чтобы он прослушивал соединение, а другой пир подключался к нему
- Используйте методы обхода NAT, чтобы попытаться установить соединение https://en.wikipedia.org/wiki/NAT_traversal