Можно ли создать дырокол P2P UDP с информацией о сокете из сокета TCP? - PullRequest
0 голосов
/ 18 января 2020

В настоящее время я пытаюсь реализовать простой дырокол и установить 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);
...