Postavite Qt SOCKS5 UDP proxy prije povezivanja socketa
Koristite setProxy na postojećem QUdpSocket, zatim pročitajte stvarnu vezanu adresu i port umjesto da pretpostavljate da je traženi port zadržan.
QNetworkProxy proxy(
QNetworkProxy::Socks5Proxy,
QStringLiteral("proxy.example.net"),
1080);
udpSocket->setProxy(proxy);Primijenite ovo na postojeći QUdpSocket aplikacije prije bind ili connect. SOCKS server mora implementirati UDP asocijaciju; zastavice sposobnosti proxyja i uspješno TCP pregledanje ne testiraju tu operaciju. Za dopušteni javni UDP test lista SOCKS5 proxyja nudi kandidate za adrese, ali UDP asocijacija i pristup cilju svakog kandidata moraju se provjeriti zasebno.
| Operacija | SOCKS5 UDP razmatranje koje dokumentuje Qt |
|---|---|
| bind | Može isteći |
| Zahtjev za lokalni port različit od nule | Ne garantuje da će taj port biti korišten |
| Pregled rezultata | Pročitajte localPort i localAddress za stvarne informacije |
Relej dodaje UDP put na kojem je gubitak paketa i dalje moguć. Vrijednosti proxy računa koriste svojstva user/password objekta.
Promjena proxyja ne može premjestiti povezani socket. Pažljivo tumačite i localhost testove: Qt zaobilazi mrežne proxije za svoje dokumentovane localhost adrese u connectToHost, bind ili listen.