آشنایی جامع با دستورات پرکاربرد شبکه در ویندوز و لینوکس

فهرست مطالب
- مقدمه: چرا دانستن دستورات شبکه مهم است؟
- دستور ping ـ بررسی ارتباط و رفع اشکال سریع
- ipconfig (ویندوز) و ifconfig/hostname/ip (لینوکس) ـ انواع نمایش IP و تنظیمات کارت شبکه
- netstat ـ مشاهده وضعیت اتصالات و پورتها
- tracert (ویندوز) و traceroute (لینوکس) ـ ردگیری مسیر بستهها تا مقصد
- nslookup و dig ـ حل مشکلات دامنه و DNS
- arp و route ـ مشاهده و مدیریت جدولهای شبکه
- دستورات کاربردی دیگر: راهنمای سریع و جمعبندی
1. مقدمه: چرا باید دستورات شبکه را بلد باشیم؟
در هر سطحی از کار با کامپیوتر یا شبکه باشید، احتمالا روزی با قطعی اینترنت، کندی اتصال، فعالسازی سرور یا حتی هک شدن روبهرو میشوید! دستورات ساده متنی شبکه، دقیقا همان ابزاری هستند که متخصصها و حتی پشتیبانها برای عیبیابی سریع (troubleshoot) بهکار میبرند.
حتی اگر مبتدی باشید، بلد بودن چند دستور پایه شما را حسابی کاربلد نشان میدهد و در وقت و هزینه هم صرفهجویی میکند. در این مقاله دستورات اصلی و معروف را با مثال، خطاهای رایج و راهحلشان یاد میگیرید.
2. دستور ping ـ ساده و ضروری برای تست ارتباط
🔸 وظیفه: بررسی رسیدن و برگشت داده بین دو دستگاه شبکه
🔸 کاربرد: چک کردن اینترنت، سایت، دستگاه شبکه، پیدا کردن مشکل کندی یا قطعی
نحوه اجرا
ویندوز:
ping example.com
لینوکس:
ping example.com
(برای توقف در لینوکس: Ctrl+C)
گزینههای مهم:
- تعداد پینگ:
ویندوز:
ping -n 5 google.com
لینوکس:
ping -c 5 google.com
- پینگ مداوم در ویندوز:
ping -t 8.8.8.8
- پینگ IP داخلی:
ping 192.168.1.1
رفع اشکال سریع با ping
- اگر به
127.0.0.1(localhost) پینگ زدی و جواب گرفتی→ کارت شبکه سالم. - اگر به مودم (
192.168.1.1) پینگ جواب نداد→ کابل، وایفای، یا کارت شبکه مشکل دارد. - اگر به
8.8.8.8پینگ جواب نداد→ اینترنت قطع است یا مشکل بیرونی. - اگر به
google.comپینگ نکرد و با IP کرد→ مشکل DNS.
خطاهای مهم
- Request timed out: وصل نبودن یا فایروال مقصد
- Destination host unreachable: مسیر یا گیتوی ایراد دارد
- General failure: مشکل سختافزاری یا تنظیمات داخلی
نکته:
بسیاری از سرورها یا سایتهای بزرگ، برای امنیت، پاسخ به پینگ را بستهاند.
3. ipconfig (ویندوز) و ifconfig/ip/hostname (لینوکس)
دیدن آدرس IP و وضعیت کارت شبکه
🔹 وظیفه: نمایش (و در موارد حرفهایتر، تغییر) تنظیمات شبکه (IP، ماسک، گیتوی، DNS و…)
3.1 در ویندوز:
آدرس IP فعلی خود را با این دستور ببین:
ipconfig
برای جزئیات بیشتر (مثلاً DNS و…):
ipconfig /all
تازهسازی (در صورت مشکل):
ipconfig /renew
پاککردن کش DNS (وقتی سایت باز نمیشود):
ipconfig /flushdns
3.2 در لینوکس (مدرن و کلاسیک):
نمایش اطلاعات کارت شبکه (ابزار مدرن):
ip a
یا:
ip address show
برای دیدن آدرس های کلاسیک:
ifconfig
(روی بعضی توزیعها باید نصب شود)
نام سیستم را در شبکه بدانیم:
hostname
بروزرسانی DHCP (تازهسازی):
sudo dhclient
مثال کاربردی:
فرض کنید اینترنت نداری. با دستورات ipconfig یا ip a ببین آیا آدرس IP گرفتی یا “Media disconnected” یا “NO-CARRIER” نمایش میدهد.
اگر آدرس “169.254.x.x” داشت، یعنی DHCP کار نکرده.
4. netstat ـ دیدن وضعیت اتصالات، پورتها و مشکلات مشکوک
🔸 وظیفه: دیدن همه ارتباطات فعال، پورتهای باز، پیدا کردن برنامههای استفادهکننده از پورت، حتی ردگیری ترافیکهای مشکوک
اجرا:
ویندوز:
netstat
لینوکس:
netstat
(معمولاً باید نصب شود)
گزینههای پرکاربرد:
- دیدن همه ارتباطات و پورتهای باز:
ویندوز:
netstat -an
لینوکس:
netstat -an
- دیدن چه برنامهای از چه پورتی استفاده میکند:
ویندوز:
netstat -ano
لینوکس:
sudo netstat -tunlp
- دیدن کانکشنهای خارجی فعال:
netstat -f
مثال رفع اشکال:
مثلاً میخواهی ببینی چه برنامهای پورت 80 رو اشغال کرده:
- ویندوز:
netstat -ano | findstr :80
- لینوکس:
sudo netstat -tunlp | grep :80
نکات:
- اگر دیدی پورت خاصی زیاد در وضعیت “LISTENING” است، شاید بدافزار یا برنامه غیرضروری روی سیستم فعاله.
- netstat برای بررسی باز بودن پورت سرور هم عالی است.
5. tracert (ویندوز) و traceroute (لینوکس)
مسیریابی قدمبهقدم تا سرور مقصد
🔹 وظیفه: بررسی اینکه داده پیش از رسیدن به مقصد از چه روترها (مسیرها) عبور میکند؛ عالی برای پیدا کردن کندی در یک نقطه خاص.
دستور:
- ویندوز:
tracert example.com
- لینوکس:
traceroute example.com
در لینوکس باید نصب باشد:
Ubuntu:
sudo apt install traceroute
کاربرد عملی:
مثلاً وقتی سایتی دیر باز میشود/قطعی دارد، با traceroute میفهمی در کجای راه مشکل وجود دارد (در داخل ایران؟ خارج؟ خود سرور مقصد؟).
نمونه خروجی:
1 2 ms 2 ms 2 ms 192.168.1.1
2 20 ms 15 ms 16 ms 10.10.0.1
3 54 ms 53 ms 53 ms tehran1.gigacenter.net
...
N timed out timed out timed out
تاخیر یا قطع ناگهانی یعنی مشکل از همان نقطه به بعد است.
6. nslookup و dig
حل مشکلات دامنه و DNS
🔸 وظیفه: تست اینکه ترجمه دامنه به IP درست کار میکند یا نه (و اطلاعات دامنه و رکوردهای آن را بخوانی)
ویندوز و لینوکس:
nslookup example.com
در صورت داشتن dig در لینوکس:
dig example.com
دیدن مشخصات خاص رکورد:
nslookup -type=MX google.com
dig MX google.com
کاربرد عملی:
اگر سایتی با IP باز میشود، اما با نام دامنه نه، از این دستورات برای بررسی مشکل DNS استفاده کن.
7. arp و route
دیدن و مدیریت جدول های آدرس شبکه
arp
- نمایش جدول آدرسهای MAC:
- ویندوز:
arp -a - لینوکس:
arp -a - اگر اتصال تا لایه شبکه کار میکند اما داده رد و بدل نمیشود، با arp میتوانی بررسی کنی آیا دستگاه مقصد MAC دارد یا نه.
route
- دیدن جدول روت (تنظیمات مسیر عبور دادهها):
- ویندوز:
route print - لینوکس:
route -n
یاip route
8. دستورات کاربردی دیگر، نکات سریع و جمعبندی
- telnet: برای تست دستی پورتها
telnet host.com 80
(در ویندوز باید فعال شود – لینوکس باید نصب شود)
- curl / wget: دانلود و تست HTTP و FTP
curl https://example.com
wget https://example.com
- systemctl/restart network (لینوکس):
ریستارت سرویس شبکه برای حل مشکلی که با تغییر فایل کانفیگ ایجاد شده:
sudo systemctl restart networking
جدول رفع اشکالات رایج شبکه با دستورات بالا
| مشکل | رایجترین دستور عیبیابی | توضیح یا نتیجه |
|---|---|---|
| قطع کامل اینترنت | ipconfig/ifconfig + ping 8.8.8.8 | دلیل پیدا میشود؛ تنظیمات یا ارتباط بیرونی مشکل دارد |
| سایت فقط با IP باز میشود | nslookup/dig و ipconfig /flushdns | مشکل DNS |
| پورت خاص باز نیست | netstat -an یا telnet host port | شاید سرویس موردنظر فعال نباشد |
| کندی یا قطع در یک مرحله | tracert/traceroute | نقطه کند یا قطع پیدا میشود |
| آدرس شبکه نگرفتهام | ipconfig/renew یا dhclient | مشکل DHCP |
تمرین عملی برای حرفهایشدن
- آدرس IP و MAC کارت شبکه خودت را در هر دو سیستم عامل پیدا کن.
- چند پینگ به سایتهای مهم و IP داخلی بزن و نتیجه را تفسیر کن.
- با netstat، پورتها و برنامههای فعال روی سیستم را مشاهده کن: آیا پورت مشکوک میبینی؟
- یک traceroute به سایتهای داخلی و خارجی تست کن. محل تأخیر یا قطع کجا است؟
- یکبار سعی کن با nslookup و dig اطلاعات دامنه سایتت را ببینی.