சாக்கெட்டை பிணைப்பதற்கு முன் Qt இன் SOCKS5 UDP பிராக்சியை அமைக்கவும்
இருக்கும் QUdpSocket இல் setProxy பயன்படுத்தி, பின்னர் கோரப்பட்ட போர்ட் தக்கவைக்கப்பட்டதாக கருதுவதற்குப் பதிலாக உண்மையில் பிணைக்கப்பட்ட முகவரி மற்றும் போர்ட்டைப் படிக்கவும்.
QNetworkProxy proxy(
QNetworkProxy::Socks5Proxy,
QStringLiteral("proxy.example.net"),
1080);
udpSocket->setProxy(proxy);bind அல்லது connect செய்வதற்கு முன் பயன்பாட்டின் இருக்கும் QUdpSocket இல் இதைப் பயன்படுத்தவும். SOCKS சேவையகம் UDP association-ஐ செயல்படுத்த வேண்டும்; பிராக்சி திறன் கொடிகள் மற்றும் வெற்றிகரமான TCP உலாவல் அந்த செயல்பாட்டைச் சோதிப்பதில்லை. அனுமதிக்கப்பட்ட பொது UDP சோதனைக்கு SOCKS5 பிராக்சி பட்டியல் முகவரி வேட்பாளர்களை வழங்குகிறது, ஆனால் ஒவ்வொரு வேட்பாளரின் UDP association மற்றும் இலக்கு அணுகலை தனியாகச் சரிபார்க்க வேண்டும்.
| செயல்பாடு | Qt ஆவணப்படுத்திய SOCKS5 UDP பரிசீலனை |
|---|---|
| bind | நேரம் முடியலாம் |
| பூஜ்ஜியமற்ற உள்ளூர் போர்ட்டைக் கோரு | அந்த போர்ட் பயன்படுத்தப்படும் என்று உறுதி அளிக்கவில்லை |
| முடிவைச் சரிபார் | உண்மையான தகவலுக்கு localPort மற்றும் localAddress படிக்கவும் |
ரிலே பேக்கெட் இழப்பு இன்னும் சாத்தியமான UDP பாதையைச் சேர்க்கிறது. பிராக்சி கணக்கு மதிப்புகள் பொருளின் user/password பண்புகளைப் பயன்படுத்துகின்றன.
பிராக்சியை மாற்றுவது இணைக்கப்பட்ட சாக்கெட்டை நகர்த்த முடியாது. localhost சோதனைகளையும் கவனமாகப் பொருள்கொள்ளுங்கள்: Qt தனது ஆவணப்படுத்தப்பட்ட localhost முகவரிகளுக்கு connectToHost, bind அல்லது listen இல் வலைய பிராக்சிகளைத் தவிர்க்கிறது.