برای استفاده از تحریم شکن برای لینوکس باید تنظیمات شبکه یا DNS متناسب با همین دستگاه انجام شود. در این راهنما مسیر تنظیم، آزمایش اتصال و رفع خطاهای رایج لینوکس را مرحلهبهمرحله و با تصویر توضیح میدهیم.
اگر از لینوکس استفاده میکنید و برای دسترسی به بعضی سایتها و سرویسهای خارجی با خطای محدودیت دسترسی روبهرو میشوید، میتوانید با تنظیم DNS شکن روی سیستم خود، اتصال به این سرویسها را امتحان کنید. روش راهاندازی به توزیع لینوکس، محیط دسکتاپ و ابزار مدیریت شبکه بستگی دارد؛ برای مثال، تنظیم DNS در اوبونتو با NetworkManager با روش مورد استفاده در بعضی سرورها یا توزیعهای سبک لینوکس متفاوت است.

تفاوت شکن رایگان و شکن حرفهای در لینوکس
برای انتخاب روش مناسب، ابتدا باید تفاوت تنظیم DNS رایگان و حرفهای را بدانید. مراحل وارد کردن آدرسها در تنظیمات شبکه تقریباً مشابه است؛ اما آدرس DNS و شرایط اتصال در دو سرویس تفاوت دارد.
مقایسه DNS شکن رایگان و حرفهای در لینوکس
برای تنظیم صحیح DNS، آدرسهای متناسب با نوع سرویس خود را انتخاب کنید.
| ویژگی | شکن رایگان | شکن حرفهای |
|---|---|---|
| آدرس DNS اول | 178.22.122.100 |
178.22.122.101 |
| آدرس DNS دوم | 185.51.200.2 |
185.51.200.1 |
| روش راهاندازی | تنظیم DNS در شبکه | تنظیم DNS در شبکه |
| نیاز به ثبت IP | مطابق شرایط سرویس رایگان | ثبت یا بهروزرسانی IP طبق راهنمای سرویس |
| مناسب برای | استفاده از سرویس رایگان | کاربران دارای اشتراک حرفهای |
اول بفهمید DNS سیستم شما را چهکسی مدیریت میکند
پیش از تنظیم، این دستور را اجرا کنید:
ls -l /etc/resolv.conf
اگر فایل به /run/systemd/resolve/... اشاره میکند، سیستم شما از systemd-resolved استفاده میکند. اگر یک فایل معمولی است، احتمالاً NetworkManager یا خود شما آن را مدیریت میکنید. این تشخیص ساده بیشترین خطاها را جلوگیری میکند، چون ویرایش دستی /etc/resolv.conf وقتی مدیر دیگری فعال باشد اثر ندارد یا برمیگردد.
| وضعیت سیستم | روش مناسب تنظیم DNS |
|---|---|
| دسکتاپ با محیط GNOME، اوبونتو و توزیعهای مشابه | تنظیم DNS از طریق تنظیمات گرافیکی شبکه |
| Debian / Ubuntu با سرویس systemd-resolved | ویرایش فایل resolved.conf |
| Fedora / RHEL / CentOS با NetworkManager | استفاده از دستورهای nmcli |
| Arch Linux | استفاده از resolved.conf یا resolvconf، بسته به تنظیمات سیستم |
| Alpine Linux یا سرورهای ساده | ویرایش مستقیم resolv.conf، در صورتی که فایل توسط سرویس دیگری مدیریت نشود |
آموزش تنظیم شکن رایگان در لینوکس از طریق محیط دسکتاپ
اگر از نسخه دسکتاپ اوبونتو یا توزیعی استفاده میکنید که تنظیمات شبکه گرافیکی دارد، میتوانید DNS را بدون اجرای دستورهای ترمینال تغییر دهید. این روش برای بیشتر کاربران دسکتاپ سادهتر است.
بخش اول: شکن رایگان در لینوکس
روش اول: تنظیمات دسکتاپ (حدود ۲ دقیقه)
- تنظیمات شبکه را باز کنید. Settings ← Network را باز کنید، اتصال فعال را انتخاب کنید و روی چرخدنده بزنید، سپس برگه IPv4 را باز کنید.
- آدرسها را وارد کنید. گزینه DNS را از حالت خودکار به Off بگذارید، دو آدرس رایگان را بنویسید، Apply را بزنید و اتصال را یک بار قطع و وصل کنید.

روش دوم: بر اساس توزیع (حدود ۵ دقیقه)
Debian / Ubuntu (با systemd-resolved)
- فایل را ویرایش کنید:
sudo nano /etc/systemd/resolved.conf
- در بخش
[Resolve]این مقادیر را بگذارید:
DNS=178.22.122.100 185.51.200.2
FallbackDNS=8.8.8.8
- سرویس را ریاستارت کنید و لینک
resolv.confرا بسازید:
sudo systemctl restart systemd-resolved
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Fedora / RHEL / CentOS (با NetworkManager)
بهجای <connection-name> نام اتصال خود را بگذارید:
nmcli con mod <connection-name> ipv4.dns "178.22.122.100 185.51.200.2"
nmcli con mod <connection-name> ipv4.ignore-auto-dns yes
nmcli con down <connection-name> && nmcli con up <connection-name>
Arch Linux (systemd-resolved یا resolvconf)
با systemd-resolved همان فایل resolved.conf بالا را ویرایش کنید. اگر از resolvconf استفاده میکنید:
echo -e "nameserver 178.22.122.100\nnameserver 185.51.200.2" | sudo tee /etc/resolv.conf
Alpine Linux
echo -e "nameserver 178.22.122.100\nnameserver 185.51.200.2" | sudo tee /etc/resolv.conf
بخش دوم: شکن حرفهای در لینوکس
شکن حرفهای ابتدا نیاز به خرید دارد. بعد از ثبت سفارش، DNS را تنظیم کنید و IP را ثبت کنید.
تنظیم DNS حرفهای (حدود ۲ دقیقه)
- تنظیمات شبکه را باز کنید. در اوبونتو روی آیکن اپلیکیشنها در نوار سمت چپ بزنید، Settings و بعد Network را باز کنید، اتصال را انتخاب کنید، روی چرخدنده بزنید و برگه IPv4 را باز کنید.
- آدرسها را وارد کنید. DNS را از Automatic به Off بگذارید، این دو آدرس را بنویسید، Apply را بزنید، اتصال را قطع و وصل کنید و مرورگر را ریاستارت کنید:
178.22.122.101185.51.200.1
- IP را ثبت کنید. در پنل روی سفارش خود کلیک کنید و در صفحه اطلاعات سرویس یک بار روی لینک بهروزرسان کلیک کنید. بعد از حدود یک دقیقه اتصال برقرار میشود.
برای توزیعهای دیگر، همان دستورهای بخش رایگان را اجرا کنید و فقط آدرسها را با دو آدرس حرفهای عوض کنید. در پایان لینک بهروزرسان را فراخوانی کنید.
چرا باید IP ثبت کنیم؟
IP اینترنت بسیاری از کاربران پویاست. پیش از استفاده از شکن حرفهای در پنل مطمئن شوید دکمه اعلام آیپی غیرفعال باشد. اگر IP ثابت دارید، آن را به پشتیبانی شکن اعلام کنید.
بهروزرسانی خودکار IP در لینوکس (شکن حرفهای، اختیاری)
لینوکس دو روش خودکار دارد. هر دو به لینک بهروزرسان اختصاصی سفارش شما نیاز دارند که از پنل برمیدارید.
روش اول: cron (ساده و سازگار با همه توزیعها)
- Terminal را باز کنید و
crontab -eرا اجرا کنید. - مسیر curl را با
which curlبررسی کنید. - این خط را اضافه کنید (هر ۵ دقیقه) و بهجای
YourLinkلینک خود را بگذارید:
*/5 * * * * /usr/bin/curl -s "YourLink" > /dev/null 2>&1
روش دوم: systemd timer (پایدار و حرفهای)
- فایل سرویس را بسازید:
sudo nano /etc/systemd/system/shecan-ipupdate.service
با این محتوا:
[Unit]
Description=Update Shecan IP
[Service]
ExecStart=/usr/bin/curl -s https://ddns.shecan.ir/update?password=your_token
- فایل تایمر را بسازید:
sudo nano /etc/systemd/system/shecan-ipupdate.timer
با این محتوا:
[Unit]
Description=Run Shecan IP update every 5 minutes
[Timer]
OnBootSec=1min
OnUnitActiveSec=5min
Unit=shecan-ipupdate.service
[Install]
WantedBy=timers.target
- تایمر را فعال کنید:
sudo systemctl daemon-reexec
sudo systemctl enable --now shecan-ipupdate.timer
- وضعیت را بررسی کنید:
sudo systemctl status shecan-ipupdate.timer
آدرس ddns.shecan.ir/update?password=your_token و your_token مقدار نمونه است. توکن یا لینک واقعی را از پنل بگیرید.
لینک و توکن بهروزرسان اختصاصی سفارش شماست. آن را در مخزنهای عمومی، اسکرینشات یا گفتگو منتشر نکنید.
بررسی DNS در لینوکس
بعد از تنظیم، اعمال آن را ببینید:
resolvectl status
cat /etc/resolv.conf
در systemd-resolved دستور اول DNS هر اتصال را نشان میدهد. برای آزمایش مستقیم هم میتوانید یک دامنه را با dig یا nslookup از سرور شکن بپرسید.
ویژگیهای مخصوص لینوکس که روی نتیجه اثر دارند
بازنویسی resolv.conf
اگر /etc/resolv.conf را دستی ویرایش کردهاید و بعد از ریاستارت یا قطع و وصل برگشت، مدیر دیگری (NetworkManager یا systemd-resolved) آن را بازنویسی میکند. تنظیم را از همان ابزار انجام دهید.
FallbackDNS
در روش resolved.conf مقدار FallbackDNS فقط وقتی به کار میآید که DNS اصلی جواب ندهد. اگر میخواهید فقط از آدرسهای شکن استفاده شود، آن خط را حذف کنید یا آدرس دیگری بگذارید. توجه کنید که با یک DNS عمومی بهعنوان جایگزین، گاهی درخواستها بهجای شکن به آن میروند و سرویس تحریمشده باز نمیشود.
Docker، Git و ابزارهای خط فرمان
Docker daemon تنظیم DNS خودش را دارد و ممکن است از DNS سیستم استفاده نکند. اگر مرورگر کار میکند ولی docker pull یا npm install نه، تنظیم DNS دیمن را بررسی کنید. راهنمای اختصاصی را در Docker و GitHub ببینید. [روش تنظیم DNS در daemon.json تأیید فنی شود]
مخزنهای بسته (apt، dnf، pacman)
بعد از تنظیم DNS، دستورهایی مثل apt update از همان DNS استفاده میکنند. اگر مخزن خاصی (مثل Ubuntu) باز نشد، راهنمای Ubuntu را ببینید.
سرور بدون دسکتاپ
در سرور، پیکربندی شبکه معمولاً با Netplan (اوبونتو سرور) یا ifupdown انجام میشود و مثالهای بالا مستقیماً اثر نمیکنند.
IPv6
اگر شبکه IPv6 فعال دارد، سیستم ممکن است از DNS IPv6 قبلی استفاده کند و تنظیم IPv4 را دور بزند.
آزمایش اتصال در لینوکس
resolvectl statusیاcat /etc/resolv.confرا ببینید.- اتصال شبکه را قطع و وصل کنید.
- کش DNS را پاک کنید. در systemd-resolved:
sudo resolvectl flush-caches. - مرورگر را کامل ببندید و در پنجره ناشناس سرویس را باز کنید.
- ابزار خط فرمان (مثل
curl) را جداگانه امتحان کنید. - اگر نشد، سیستم را ریاستارت کنید.
مشکلات رایج هنگام استفاده از تحریم شکن در لینوکس
۱. DNS پس از راهاندازی مجدد به حالت قبلی برمیگردد
این مشکل ممکن است زمانی رخ دهد که NetworkManager، systemd-resolved یا ابزار دیگری فایل تنظیمات DNS را مدیریت کند. در چنین شرایطی، تغییر مستقیم /etc/resolv.conf ممکن است موقتی باشد.
راهحل: مشخص کنید DNS از کدام ابزار مدیریت میشود و تنظیمات را در همان بخش تغییر دهید. اگر از NetworkManager استفاده میکنید، روش nmcli یا تنظیمات گرافیکی معمولاً انتخاب مناسبتری است.
۲. سایت موردنظر همچنان باز نمیشود
ابتدا آدرسهای DNS را بررسی کنید و مطمئن شوید مقدارهای مربوط به سرویس رایگان یا حرفهای را درست وارد کردهاید. سپس اتصال را دوباره برقرار کنید و سایت را در مرورگر آزمایش کنید.
اگر فقط یک سایت مشکل دارد، ممکن است علت آن به خود سرویس، وضعیت شبکه یا محدودیت دیگری مربوط باشد؛ بنابراین نباید هر خطایی را به DNS نسبت داد.
۳. شکن حرفهای پس از تغییر اینترنت کار نمیکند
اگر IP عمومی شما تغییر کرده باشد، ممکن است لازم باشد آن را از طریق پنل بهروزرسانی کنید.
راهحل: ابتدا لینک اختصاصی بهروزرسانی را بهصورت دستی اجرا کنید و سپس اتصال را آزمایش کنید. اگر مشکل برطرف شد، میتوانید برای جلوگیری از انجام دستی این کار از Cron یا systemd timer استفاده کنید.
۴. دستور nmcli خطا میدهد
ممکن است نام اتصال را اشتباه وارد کرده باشید یا سیستم شما از NetworkManager استفاده نکند.
راهحل: ابتدا این دستور را اجرا کنید:
nmcli connection show
نام دقیق اتصال را از خروجی بردارید. اگر دستور nmcli در دسترس نیست، ابزار مدیریت شبکه سیستم را بررسی کنید و دستورهای مربوط به NetworkManager را بدون اطمینان اجرا نکنید.
۵. تنظیم DNS باعث قطع دسترسی به بعضی سرویسها شده است
اگر پس از تغییر DNS مشکلات تازهای ایجاد شده، تنظیمات جدید را بررسی کنید. ممکن است سیستم به DNS داخلی شبکه، تنظیمات VPN یا سازوکار خاصی وابسته باشد.
راهحل: مقادیر قبلی را که پیش از تغییر یادداشت کردهاید بازیابی کنید یا تنظیم DNS را به حالت خودکار برگردانید. سپس اتصال را دوباره آزمایش کنید.
نکات امنیتی تحریم شکن برای لینوکس
- آدرسها را فقط از منبع رسمی بردارید.
- دستورهای
sudoرا پیش از اجرا بخوانید و فقط از منبع معتبر اجرا کنید. - لینک و توکن بهروزرسانی را منتشر نکنید.
- دستورهایی که از تالارها و کانالها کپی میکنید ممکن است
resolv.confرا به DNS ناشناس تغییر دهند. - هنگام ورود به حسابهای مهم قفل HTTPS را بررسی کنید.
- DNS ناشناسی ایجاد نمیکند.
محدودیتهای واقعی تحریم شکن برای لینوکس
شکن برای سرویسهای محدودشده بر اثر تحریم است و جایگزین ابزار عبور از فیلترینگ نیست. نتیجه روی اپراتورها، توزیعها و سیستمهای مختلف متفاوت است و سرعت یا پایداری تضمینی داده نمیشود. فهرست سرویسها را در صفحه DNS تحریم شکن ببینید.
پرسشهای متداول
کدام روش در لینوکس بهتر است؟
در دسکتاپ تنظیمات گرافیکی، در Ubuntu/Debian مدرن resolved.conf و در Fedora/RHEL nmcli. اول مدیر DNS سیستم را تشخیص دهید.
چرا /etc/resolv.conf برمیگردد؟
چون NetworkManager یا systemd-resolved آن را مدیریت میکند. از همان ابزار تنظیم کنید.
آیا برای لینوکس اپ رسمی دارد؟
در اطلاعات موجود فقط تنظیم دستی آمده است. [تأیید شود]
برای سرور هم همینطور است؟
اصل کار یکی است، اما سرور ممکن است Netplan یا ابزار دیگری داشته باشد.
cron بهتر است یا systemd timer؟
cron ساده و در همه توزیعها هست. systemd timer پایدارتر است ولی به systemd نیاز دارد.
اگر کار نکرد چه کنم؟
توزیع، نسخه، مدیر شبکه، روش تنظیم و شبکه را مشخص کنید و بخش مشکلات رایج را بخوانید.
جمعبندی
در لینوکس اول بفهمید DNS را چهکسی مدیریت میکند و با همان ابزار تنظیم کنید، نه با ویرایش دستی فایلی که بازنویسی میشود. آدرسها را از منبع رسمی بردارید، با resolvectl status بررسی کنید و اگر شکن حرفهای دارید، بهروزرسانی IP را با cron یا systemd timer خودکار کنید.