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

Aplique isto ao QUdpSocket existente da aplicação antes de bind ou connect. O servidor SOCKS deve implementar a associação UDP; os sinalizadores de capacidade do proxy e a navegação TCP bem-sucedida não testam essa operação. Para um teste UDP público permitido, a lista de proxies SOCKS5 oferece endereços candidatos, mas a associação UDP e o acesso ao destino de cada candidato devem ser verificados separadamente.

OperaçãoConsideração sobre SOCKS5 UDP documentada pelo Qt
bindPode expirar
Solicitar uma porta local diferente de zeroNão garante que essa porta será usada
Inspecionar o resultadoLeia localPort e localAddress para obter informações reais

O relay adiciona um caminho UDP no qual a perda de pacotes continua possível. Os valores da conta de proxy usam as propriedades user/password do objeto.

Alterar o proxy não pode mover um socket conectado. Interprete também os testes com localhost com cuidado: o Qt ignora os proxies de rede para seus endereços localhost documentados em connectToHost, bind ou listen.

Artigos relacionados