Սահմանեք Qt-ի SOCKS5 UDP վստահված սերվերը նախքան socket-ի կապումը
Օգտագործեք setProxy-ն գոյություն ունեցող QUdpSocket-ի վրա, ապա կարդացեք իրականում կապված հասցեն և պորտը՝ փոխարենու ենթադրելու, որ պահանջված պորտը պահպանվել է։
QNetworkProxy proxy(
QNetworkProxy::Socks5Proxy,
QStringLiteral("proxy.example.net"),
1080);
udpSocket->setProxy(proxy);Կիրառեք սա հավելվածի գոյություն ունեցող QUdpSocket-ի վրա bind-ից կամ connect-ից առաջ։ SOCKS սերվերը պետք է իրականացնի UDP association; վստահված սերվերի հնարավորությունների դրոշները և հաջող TCP զննարկումը չեն փորձարկում այդ գործողությունը։ Թույլատրված հանրային UDP փորձարկման համար SOCKS5 վստահված սերվերների ցանկը առաջարկում է հասցեների թեկնածուներ, սակայն յուրաքանչյուրքի UDP association-ը և թիրախի հասանելիությունը պետք է ստուգել առանցին։
| Գործողություն | SOCKS5 UDP դիտարկում՝ փաստաթղթված Qt-ի կողմից |
|---|---|
| bind | Կարող է ժամանակային սահմանակում ունենալ |
| Պահանջել ոչ զրոյական տեղական պորտ | Չի երաշխավորում, որ այդ պորտը կօգտագործվի |
| Արդյունքի ստուգում | Իրական տեղեկության համար կարդացեք localPort-ը և localAddress-ը |
Ռելեն ավելացնում է UDP ուղի, որի վրա փաթեթների կորուստը մինևնույն հնարավոր է մնում։ Վստահված սերվերի հաշվի արժեքները օգտագործում են օբյեկտի user/password հատկությունները։
Վստահված սերվերի փոփոխությունը չի կարող տեղափոխել միացված socket-ը։ Զգուշությամբ մեկնաբանեք և localhost փորձարկումները. Qt-ն շրջանցում է ցանցային վստահված սերվերները իր փաստաթղթված localhost հասցեների համար connectToHost-ում, bind-ում կամ listen-ում։