Configure o proxy SOCKS5 UDP de Qt antes de enlazar o socket
Use setProxy no QUdpSocket existente e despois lea o enderezo e o porto realmente enlazados en lugar de supor que se conservou o porto solicitado.
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ón | Consideración sobre SOCKS5 UDP documentada por Qt |
|---|---|
| bind | Pode esgotar o tempo de espera |
| Solicitar un porto local distinto de cero | Non garante que se use ese porto |
| Inspeccionar o resultado | Lea 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.