Skip to content
Intermediate / 2 min read

تنظیم ChangeMyIP WireGuard روی ویندوز: مسیریابی تونل کامل و تونل تقسیم‌شده

WireGuard روی ویندوز هر برنامه را از طریق خروجی ChangeMyIP با یک تونل واحد مسیریابی می‌کند. این راهنما پیکربندی را وارد می‌کند، IP عمومی جدید، DNS و مسیر IPv6 را تأیید می‌کند و نشان می‌دهد چه زمانی مسیریابی تقسیم‌شده مبتنی بر مقصد انتخاب بهتری است.

Windows WireGuard حریم خصوصی/ناشناسی

بررسی اجمالی

ChangeMyIP WireGuard را در کنار اندپوینت‌های HTTP، HTTPS، SOCKS5، Shadowsocks و Trojan خود ارائه می‌دهد. در ویندوز، WireGuard به عنوان یک سرویس پس‌زمینه اجرا می‌شود، بنابراین به محض فعال بودن تونل، هر برنامه به جای اتصال خانگی شما از طریق خروجی ChangeMyIP خارج می‌شود. این کار کم دردسرترین راه برای تغییر آدرس IP شما در ویندوز است زمانی که نمی‌خواهید برای هر برنامه یک پروکسی پیکربندی کنید.

شما این کارها را انجام خواهید داد:

۱. یک تونل WireGuard از جزئیات اتصال ChangeMyIP خود بسازید. ۲. handshake، IP عمومی جدید و وضوح DNS را تأیید کنید. ۳. بین مسیریابی تونل کامل و مسیریابی تقسیم‌شده بر اساس مقصد یکی را انتخاب کنید. ۴. خرابی‌هایی را که عامل بیشتر تنظیمات خراب هستند، عیب‌یابی کنید.

آنچه نیاز دارید

  • ویندوز ۱۰ یا ویندوز ۱۱ با دسترسی مدیر.
  • یک طرح ChangeMyIP که شامل دسترسی WireGuard باشد، به همراه جزئیات اتصال آن: میزبان اندپوینت و پورت UDP، کلید عمومی سرور، کلید خصوصی شما، آدرس تونل تخصیص‌یافته و مقدار DNS.
  • کلاینت رسمی WireGuard برای ویندوز از صفحه دانلود WireGuard.
  • هر سرویس بازتاب IP عمومی برای تأیید (مثال‌های زیر از یکی استفاده می‌کنند؛ هر سرویس معادلی کار می‌کند).

تونل کامل یا تونل تقسیم‌شده؟

حالت AllowedIPs ویندوز چه می‌کند کاربرد معمول
تونل کامل 0.0.0.0/0, ::/0 هر بسته IPv4 و IPv6 را از طریق ChangeMyIP ارسال می‌کند تغییر IP برای همه برنامه‌ها؛ مشاهده یک سایت همان‌طور که از کشور دیگر دیده می‌شود
تقسیم بر اساس مقصد محدوده‌های مشخص، مثلاً 203.0.113.0/24 فقط ترافیک آدرس‌دهی‌شده به آن محدوده‌ها را تونل می‌کند دسترسی به یک سرویس یا زیرشبکه از طریق پروکسی در حالی که بقیه چیزها محلی می‌مانند
به تفکیک برنامه در WireGuard موجود نیست بر اساس IP مقصد مسیریابی می‌کند، نه بر اساس فرآیند از اندپوینت‌های SOCKS5 یا HTTP ChangeMyIP با یک مسیریاب به تفکیک برنامه مانند Proxifier استفاده کنید

WireGuard تصمیم می‌گیرد چه چیزی را تونل کند بر اساس آدرس IP مقصد، نه بر اساس برنامه. اگر به "فقط این مرورگر از طریق پروکسی" نیاز دارید، پیکربندی پروکسی ابزار درست است، نه رابط WireGuard.

خط پایه: IP و DNS فعلی خود را ثبت کنید

# IP عمومی قبل از تونل
curl.exe -s https://ifconfig.co/ip

# سرورهای DNS که در حال حاضر استفاده می‌شوند
Get-DnsClientServerAddress -AddressFamily IPv4 |
  Where-Object { $_.ServerAddresses } |
  Select-Object InterfaceAlias, ServerAddresses

هر دو خروجی را نگه دارید. شما به یک مقدار قبل شناخته‌شده نیاز دارید تا پس از بالا آمدن تونل با آن مقایسه کنید.

مراحل

۱. مقادیر WireGuard ChangeMyIP را جمع‌آوری کنید

وارد حساب ChangeMyIP خود شوید و جزئیات اتصال WireGuard را پیدا کنید. یک پیکربندی WireGuard به صورت یک‌به‌یک به این فیلدها نگاشت می‌شود:

  • Interface > PrivateKey — کلید خصوصی تخصیص‌یافته به دستگاه شما
  • Interface > Address — آدرس تونل برای دستگاه شما، معمولاً یک /32
  • Interface > DNS — ریزولور مورد استفاده در داخل تونل
  • Peer > PublicKey — کلید عمومی سرور ChangeMyIP
  • Peer > Endpoint — نام میزبان یا آدرس IP به همراه پورت UDP
  • Peer > AllowedIPs — 0.0.0.0/0, ::/0 برای یک تونل کامل

اگر ChangeMyIP یک فایل .conf قابل دانلود ارائه می‌دهد، می‌توانید آن را مستقیماً در مرحله ۳ وارد کنید. به هر حال یک بار آن را باز کنید تا خطوط DNS و AllowedIPs را تأیید کنید.

۲. نصب WireGuard برای ویندوز

۱. نصب‌کننده را از سایت رسمی WireGuard دانلود کنید. ۲. آن را به عنوان مدیر اجرا کنید و ویزارد را کامل کنید. ۳. تأیید کنید که سرویس پس‌زمینه در حال اجراست:

Get-Service -Name 'WireGuardManager' |
  Select-Object Name, Status, StartType

اگر آن نام سرویس در نسخه شما وجود ندارد، services.msc را باز کنید و به دنبال سرویسی بگردید که نامش با WireGuard شروع می‌شود.

۳. ایجاد تونل

اگر یک فایل پیکربندی دریافت کرده‌اید، Import tunnel(s) from file را انتخاب کنید و به مرحله ۴ بروید. در غیر این صورت، مقادیر خود را در یک تونل جدید جایگذاری کنید:

[Interface]
PrivateKey = <client-private-key-from-changemyip>
Address = 10.7.0.2/32
DNS = <dns-server-from-your-changemyip-config>

[Peer]
PublicKey = <changemyip-server-public-key>
Endpoint = <endpoint-host-or-ip>:<udp-port>
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

۱. WireGuard را باز کنید و Add tunnel > Add empty tunnel را انتخاب کنید. ۲. آن را به نام مکان خروج نام‌گذاری کنید، مثلاً changemyip-de-frankfurt، تا بعداً تغییر شهرها واضح باشد. ۳. هر <placeholder> را با مقادیر خود جایگزین کنید. علامت نقل‌قول، کاما یا نقطه‌ویرگول انتهایی اضافه نکنید. ۴. تونل را ذخیره کنید.

مقدار Address آدرس شما در داخل پیوند رمزنگاری‌شده است، نه IPی که وب‌سایت‌ها خواهند دید. IP عمومی متعلق به اندپوینت ChangeMyIP است.

۴. فعال‌سازی و تأیید handshake

۱. تونل را انتخاب کنید و روی Activate کلیک کنید. ۲. خط وضعیت را تماشا کنید: باید در عرض چند ثانیه از Waiting for handshake به یک برچسب زمانی handshake تازه تغییر کند. ۳. به صورت اختیاری از یک ترمینال تأیید کنید. ابزار wg.exe همراه با کلاینت ویندوز ارائه می‌شود:

& 'C:\\Program Files\\WireGuard\\wg.exe' show

به دنبال خط latest handshake بگردید. شمارنده‌های transfer غیرصفر تأیید می‌کنند که ترافیک در هر دو جهت جریان دارد. اگر wg.exe در پوشه نصب شما نیست، به وضعیت نمایش‌داده‌شده در پنجره WireGuard تکیه کنید.

۵. تأیید IP عمومی جدید

curl.exe -s https://ifconfig.co/ip

سپس هر سه مورد زیر را تأیید کنید:

  • مقدار با خط پایه‌ای که قبلاً ثبت کردید متفاوت است.
  • کشوری که توسط یک سرویس جستجوی IP گزارش می‌شود با اندپوینتی که وارد کرده‌اید مطابقت دارد.
  • یک مرورگر در یک پنجره خصوصی تازه همان آدرس را گزارش می‌کند. یک پنجره عادی می‌تواند از موقعیت مکانی ذخیره‌شده و نتایج DNS قدیمی استفاده مجدد کند.

۶. بررسی DNS و IPv6

۱. ریزولورها را قبل و بعد از فعال‌سازی مقایسه کنید:

Get-DnsClientServerAddress -AddressFamily IPv4 |
  Where-Object { $_.ServerAddresses } |
  Select-Object InterfaceAlias, ServerAddresses

۲. اگر خط DNS در پیکربندی شما خالی بود، جستجوها همچنان به ریزولور ISP شما می‌روند. این در عمل یک نشت DNS است حتی اگر تونل بالا باشد. مقدار DNS ارائه‌شده توسط ChangeMyIP را اضافه کنید و دوباره فعال کنید. ۳. یک تست اتصال IPv6 در مرورگر اجرا کنید. یک تونل که فقط 0.0.0.0/0 در AllowedIPs دارد، ترافیک IPv6 را خارج از تونل رها می‌کند. ::/0 را اضافه کنید یا IPv6 را روی آداپتور فعال غیرفعال کنید. ۴. یک تست نشت WebRTC اجرا کنید. اگر آدرس ISP شما را فاش کرد، WebRTC را در آن مرورگر غیرفعال کنید یا از مرورگری استفاده کنید که به طور پیش‌فرض کاندیدهای محلی را افشا نمی‌کند.

۷. اختیاری: تقسیم تونل بر اساس مقصد

۱. تونل را غیرفعال کنید. ۲. خط AllowedIPs همتای خود را به محدوده‌هایی که می‌خواهید تونل شوند کاهش دهید، مثلاً 198.51.100.0/24, 203.0.113.10/32. ۳. خط DNS را فقط در صورتی نگه دارید که می‌خواهید آن جستجوها نیز تونل شوند. در غیر این صورت آن را حذف کنید و بگذارید ریزولور سیستم همه چیز را مدیریت کند. ۴. دوباره فعال کنید، سپس IP عمومی را دوباره بررسی کنید. مرور معمولی آدرس اصلی شما را حفظ می‌کند در حالی که درخواست‌ها به محدوده‌های فهرست‌شده از خروجی ChangeMyIP استفاده می‌کنند.

۸. تغییر مکان‌های خروج

هر اندپوینت ChangeMyIP که وارد می‌کنید به یک تونل جداگانه تبدیل می‌شود. یک پیکربندی برای هر شهر ذخیره کنید، سپس تونل فعلی را غیرفعال کرده و دیگری را فعال کنید. IP عمومی با اندپوینت تغییر می‌کند، که این را سریع‌ترین راه برای مقایسه نحوه رفتار یک صفحه از کشورهای مختلف می‌کند.

عیب‌یابی

  • وضعیت هرگز از Waiting for handshake خارج نمی‌شود. UDP معمولاً مسدود است، که در شبکه‌های شرکتی، دانشگاهی و هتلی رایج است. Windows Firewall را برای یک قانون WireGuard بررسی کنید، یک اندپوینت یا پورت متفاوت از ChangeMyIP درخواست کنید، و اگر UDP کاملاً مسدود است، به یکی از گزینه‌های مبتنی بر TCP ChangeMyIP مانند اندپوینت‌های HTTP، HTTPS یا SOCKS5 آن تغییر دهید.
  • handshake موفق می‌شود اما صفحات بارگذاری نمی‌شوند. بررسی کنید که AllowedIPs شامل 0.0.0.0/0, ::/0 باشد، که یک مقدار DNS وجود داشته باشد، و که MTU معقول باشد. در شبکه‌هایی با کپسوله‌سازی غیرمعمول، MTU = 1280 را به بخش [Interface] اضافه کنید و دوباره فعال کنید.
  • IP عمومی تغییر نکرده است. ممکن است تونل واقعاً فعال نباشد، صفحه تست کش شده باشد، یا یک کلاینت VPN یا پروکسی دوم روی دستگاه مسیرها را بازنویسی کند. با curl.exe در یک ترمینال تازه تست کنید.
  • IP تغییر می‌کند اما سایت هنوز کشور خانه شما را نشان می‌دهد. سایت از موقعیت مکانی ذخیره‌شده، زبان مرورگر، یا تنظیمات حساب به جای آدرس شما استفاده می‌کند. در یک پنجره خصوصی با کش پاک‌شده تست کنید.
  • همه چیز در لحظه‌ای که تونل قطع می‌شود متوقف می‌شود. با پیکربندی تونل کامل، ویندوز هیچ مسیری به بیرون جز تونل ندارد، بنابراین یک handshake ناموفق دقیقاً شبیه قطعی اینترنت به نظر می‌رسد. این حالت خرابی امن‌تری است؛ تونل را غیرفعال کنید تا اتصال عادی بازگردد.
  • CAPTCHA یا مسدودسازی مکرر. آدرس خروجی مشترک است و ممکن است قبلاً علامت‌گذاری شده باشد. یک پیکربندی برای شهر دیگر وارد کنید، یا از اندپوینت‌های مسکونی ChangeMyIP استفاده کنید جایی که کار به IP تمیزتری نیاز دارد.
  • توان عبوری پایین. یک اندپوینت دیگر نزدیک‌تر به خود را امتحان کنید، MTU را کاهش دهید، و Wi-Fi را با Ethernet مقایسه کنید قبل از اینکه ارائه‌دهنده را سرزنش کنید.

خلاصه

  • WireGuard روی ویندوز ترافیک را در کل سیستم مسیریابی می‌کند، بنابراین IP را برای هر برنامه به طور همزمان تغییر می‌دهد.
  • جزئیات اتصال ChangeMyIP را وارد یا جایگذاری کنید در یک تونل نام‌گذاری‌شده، سپس handshake را قبل از تست هر چیز دیگری تأیید کنید.
  • همیشه IP عمومی، ریزولور DNS و مسیر IPv6 را تأیید کنید. وضعیت متصل اثبات نمی‌کند که نشتی وجود ندارد.
  • WireGuard بر اساس IP مقصد تقسیم می‌کند، نه بر اساس برنامه. از اندپوینت‌های SOCKS5 یا HTTP ChangeMyIP با یک مسیریاب به تفکیک برنامه استفاده کنید زمانی که به کنترل سطح فرآیند نیاز دارید.
  • یک تونل ذخیره‌شده برای هر شهر نگه دارید تا بتوانید مکان‌های خروج را بدون پیکربندی مجدد هر چیزی تغییر دهید.