В настоящее время я пытаюсь реализовать простой дырокол и установить TCP-соединение с сервером, который отправляет TCP-клиентам информацию о конечных точках друг друга. Может ли эта информация использоваться для создания соединений udp, чтобы пробить дыру в NAT и создать соединение p2p с использованием UdpClient?
В моем текущем подходе я использую стандарт. NET UdpClient, чтобы установить все это вверх. Я установил для NatTraversal значение true и для параметра ReuseAddress SocketOption также задано значение true. Можно ли вообще создать успешное соединение с этим клиентом udp, так как он не отправил никакой информации на сервер, не делая маршрут через NAT.
udpClient.AllowNatTraversal(true);
udpClient.Client.SetIPProtectionLevel(IPProtectionLevel.Unrestricted);
udpClient.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);