QNetworkProxy proxy(
    QNetworkProxy::Socks5Proxy,
    QStringLiteral("proxy.example.net"),
    1080);
udpSocket->setProxy(proxy);

Aplique isto ao QUdpSocket existente da aplicación antes de bind ou connect. O servidor SOCKS debe implementar a asociación UDP; os indicadores de capacidade do proxy e a navegación TCP correcta non proban esa operación. Para unha proba UDP pública permitida, a lista de proxies SOCKS5 ofrece enderezos candidatos, pero a asociación UDP e o acceso ao destino de cada candidato deben verificarse por separado.

OperaciónConsideración sobre SOCKS5 UDP documentada por Qt
bindPode esgotar o tempo de espera
Solicitar un porto local distinto de ceroNon garante que se use ese porto
Inspeccionar o resultadoLea localPort e localAddress para obter información real

O relé engade unha ruta UDP na que a perda de paquetes segue sendo posible. Os valores da conta de proxy usan as propiedades user/password do obxecto.

Cambiar o proxy non pode mover un socket conectado. Interprete tamén con coidado as probas con localhost: Qt omite os proxies de rede para os seus enderezos localhost documentados en connectToHost, bind ou listen.

Artigos relacionados