Blog entry by ♥️ آقای مهمان نواز ♥️

Anyone in the world

🔍 آشنایی با دستور netstat و مفهوم "در حال گوش دادن" (Listening)

network2

دستور netstat (مخفف Network Statistics) یک ابزار خط فرمان قدرتمند است که برای نمایش اطلاعات مربوط به اتصالات شبکه، جداول مسیریابی، آمار اینترفیس‌های شبکه و پروتکل‌ها استفاده می‌شود. این ابزار در سیستم‌عامل‌های ویندوز، لینوکس و مک‌اواس موجود است.

💡 نکته: در این راهنما، تمامی مثال‌ها به همراه سوئیچ‌های رایج در ویندوز و لینوکس ارائه شده است.

⚙️ کاربردهای اصلی netstat

در ادامه پرکاربردترین گزینه‌های این دستور را مرور می‌کنیم:

1. نمایش اتصالات فعال شبکه

netstat

تمام اتصالات TCP فعال را به همراه آدرس محلی، آدرس خارجی و وضعیت اتصال نمایش می‌دهد.

2. نمایش همه اتصالات و پورت‌های در حال گوش دادن

netstat -a

اتصالات TCP فعال و همچنین پورت‌هایی که در حال گوش دادن (listening) هستند را نشان می‌دهد.

3. نمایش آدرس‌ها به صورت عددی

netstat -n

آدرس‌ها و شماره پورت‌ها را به صورت عددی نمایش می‌دهد (بدون تلاش برای حل نام میزبان).

4. نمایش پروسس‌های درگیر با هر اتصال

# در ویندوز
netstat -b

# در لینوکس
netstat -p

شناسه و نام برنامه‌ای که هر اتصال را ایجاد کرده است نشان می‌دهد.

5. نمایش آمار پروتکل‌ها

netstat -s

آمار مربوط به پروتکل‌های شبکه (TCP، UDP، ICMP و ...) را نمایش می‌دهد.

6. نمایش جدول مسیریابی

netstat -r

جدول مسیریابی هسته را نشان می‌دهد (معادل دستور route).

7. نمایش اینترفیس‌های شبکه

netstat -i

آمار مربوط به اینترفیس‌های شبکه را نمایش می‌دهد.

8. به‌روزرسانی مداوم اطلاعات

# در ویندوز
netstat -e

# در لینوکس
netstat -c

اطلاعات را به صورت مداوم به‌روزرسانی می‌کند.

🔀 ترکیب سوئیچ‌ها

می‌توانید چندین سوئیچ را با هم ترکیب کنید:

netstat -an          # همه اتصالات با آدرس‌های عددی
netstat -tuln       # در لینوکس: نمایش پورت‌های TCP و UDP در حال listening با فرمت عددی

📌 مثال‌های کاربردی

  • تشخیص پورت‌های باز: netstat -an | findstr LISTENING (ویندوز)
  • مشاهده اتصال یک برنامه خاص: netstat -anob (ویندوز)
  • مشاهده اتصالات روی پورت خاص: netstat -an | findstr :80

👂 مفهوم "در حال گوش دادن" (Listening)

وقتی می‌گوییم یک پورت یا سرویس "در حال گوش دادن" است، یعنی برنامه یا سرویسی روی سیستم شما منتظر دریافت اتصالات ورودی از شبکه است.

📖 توضیح ساده:

گوش دادن = آماده پذیرش اتصال = منتظر مشتری

مثال ساده: یک رستوران را تصور کنید. وقتی رستوران باز است و منتظر مشتری‌هاست، می‌گوییم "در حال گوش دادن" است! پورت 80 روی یک وب‌سرور "در حال گوش دادن" است یعنی سرور آماده است تا مرورگرها به آن متصل شوند.

🖥️ نمایش در netstat:

وقتی دستور netstat -an را اجرا می‌کنید، ستون وضعیت (State) مقادیر زیر را نشان می‌دهد:

پروتکل آدرس محلی آدرس خارجی وضعیت
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
TCP 0.0.0.0:443 0.0.0.0:0 LISTENING
TCP 192.168.1.10:54321 185.15.56.23:443 ESTABLISHED
  • LISTENING : یعنی پورت باز است و منتظر اتصال (در حال گوش دادن)
  • ESTABLISHED : یعنی یک اتصال فعال برقرار شده

🔢 انواع پورت‌های در حال گوش دادن:

  1. پورت‌های سیستمی (0-1023): نیاز به دسترسی مدیر دارند. مثال: پورت 80 (HTTP)، پورت 443 (HTTPS)، پورت 21 (FTP)
  2. پورت‌های ثبت‌شده (1024-49151): برای برنامه‌های کاربردی. مثال: پورت 3306 (MySQL)، پورت 5432 (PostgreSQL)
  3. پورت‌های پویا (49152-65535): معمولاً برای اتصالات موقت مشتری‌ها

🔐 چرا باید بدانیم چه پورت‌هایی در حال گوش دادن هستند؟

  • امنیت: پورت‌های بی‌استفاده که در حال گوش دادن هستند می‌توانند نقطه نفوذ باشند.
  • عیب‌یابی: اگر سرویسی کار نمی‌کند، ببینید آیا پورت آن در حال گوش دادن است.
  • تداخل پورت: وقتی دو برنامه می‌خواهند از یک پورت استفاده کنند.

🧪 مثال عملی:

فرض کنید می‌خواهید یک وب‌سرور راه‌اندازی کنید:

# قبل از اجرای سرور
netstat -an | findstr :80
# (نتیجه: خالی است - پورت 80 در حال گوش دادن نیست)

# بعد از اجرای IIS یا Apache
netstat -an | findstr :80
# نتیجه: TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
# یعنی سرور با موفقیت اجرا شده و منتظر درخواست‌هاست

پس "در حال گوش دادن" یعنی "من اینجام، آماده خدمت‌رسانی، هرکی خواست می‌تونه بهم وصل شه!"


✍️ تهیه شده بر اساس راهنمای کاربردی netstat – تمامی حقوق برای کاربرد آموزشی آزاد است.

[ Modified: Tuesday, 17 February 2026, 12:06 AM ]