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 شیء استفاده می‌کنند.

تغییر پروکسی نمی‌تواند سوکت متصل را جابه‌جا کند. آزمون‌های localhost را هم با دقت تفسیر کنید: Qt برای آدرس‌های localhost مستندش در connectToHost، bind یا listen از پروکسی‌های شبکه عبور می‌کند.

مقالات مرتبط