Netstat چیست و چطور اتصالات فعال را نمایش میدهد؟

مقدمه: چرا Netstat ابزار محبوبِ عیبیابی شبکه است؟
شاید برات پیش اومده وقتی اینترنت کند میشه، یا حس میکنی برنامهای به شکل پنهان اطلاعات میفرسته یا میگیره؛
یا حتی میخوای ببینی چه پورتهایی روی دستگاه بازه و به کجا متصلند.
اینجا دستور netstat وارد میشه:
یک ابزار همهفنحریف برای نمایش همه اتصالات شبکهای فعال، پورتهای باز، ارتباطات با سرورها و بسیاری اطلاعات پشتپرده!
دستور Netstat چیست و چه کاری انجام میدهد؟
- netstat (مخفف network statistics) یک دستور خط فرمان است که اطلاعات کامل درباره اتصالات فعال، پورتها، وضعیت شنود (listening)، و ترافیک ورودی/خروجی شبکه را به تو نشان میدهد.
- مناسب برای ویندوز و لینوکس – کافی است خط فرمان را باز کنی و تایپ کنی:
netstat
مهمترین کاربردهای netstat
- نمایش اتصالات فعال شبکه (Active Connections)
- بررسی اینکه کدام برنامه یا سرویس به اینترنت وصل است
- نمایش وضعیت پورتهای باز (listening) یا بسته
- پیدا کردن برنامههای مشکوک یا غیرمجاز که داده میفرستند
- دیباگ یا عیبیابی مشکلات شبکه و کندی اینترنت
تفسیر خروجی netstat
یک خروجی ساده معمولاً شبیه زیر است:
Proto Local Address Foreign Address State
TCP 192.168.1.5:50234 172.217.22.14:80 ESTABLISHED
TCP 192.168.1.5:50438 192.168.1.1:53 CLOSE_WAIT
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
توضیح ستونها:
- Proto: نوع پروتکل (معمولاً TCP یا UDP)
- Local Address: آدرس و پورت دستگاه خودت
- Foreign Address: آدرس و پورت مقصد ارتباط
- State: وضعیت اتصال
- ESTABLISHED: اتصال برقرار و داده رد و بدل میشود
- LISTENING: این پورت برای ارتباط جدید آماده است
- CLOSE_WAIT، TIME_WAIT، SYN_SENT و…: وضعیتهای مختلف ارتباط TCP
گزینههای پرکاربرد Netstat (ویندوز و لینوکس)
| دستور | کاربرد |
|---|---|
| netstat | نمایش اتصالات و پورتهای شبکه |
| netstat -a | نمایش همه ارتباطات و پورتهای در حال شنود |
| netstat -n | نشان دادن آدرس به صورت عددی (بدون حل به نام دامنه) |
| netstat -o | نمایش شناسه پردازش (PID) برنامهای که از پورت استفاده میکند |
| netstat -ano | همه موارد بالا باهم (پیشنهاد برای عیبیابی سریع!) |
| netstat -anp (لینوکس) | نمایش پورت، وضعیت، و برنامه در لینوکس |
نکات طلایی و کاربردی
- اگر برنامهی مشکوکی روی پورت خاصی فعال است با
netstat -anoPID آن را ببین، بعد با Task Manager پیدا کن. - با netstat، پر شدن و حمله به پورتها (مثلاً ویروس یا هک) را به سرعت میتوانی ردیابی کنی.
- در لینوکس برای دیدن برنامه پشت پورت، معمولا باید با
sudoاجرا شود:
sudo netstat -tunlp
مثال عملی سریع
میخواهی بدانی چه اپلیکیشنی به چه آدرسی وصل است؟
- در CMD بنویس:
netstat -ano - PID (عدد سمت راست) را یادداشت کن.
- در Task Manager، تب Details، دنبال آن PID بگرد!
سوالات متداول (FAQ)
۱. netstat با چه دستوری بهتر اجرا میشود؟
معمولاً
netstat -anoدر ویندوز، وsudo netstat -tunlpدر لینوکس کاملترین اطلاعات را میدهد.
۲. پورت LISTENING یعنی چه؟
یعنی برنامهای منتظر ارتباط جدید روی آن پورت است (مثلاً سرورهای محلی).
۳. آیا دیدن ارتباطات ناشناس خطرناک است؟
اگر آدرسهای ناشناس یا پورتهای غیرمعمول زیاد دیدی، میتواند نشانه ویروس یا برنامه ناخواسته باشد. بررسی کن!
۴. تفاوت ESTABLISHED و LISTENING چیست؟
ESTABLISHED یعنی ارتباط برقرار است. LISTENING یعنی آماده پذیرش ارتباط است اما هنوز کسی وصل نشده.
جمعبندی
دستور netstat یکی از بهترین ابزارها برای حرفهایها و حتی کاربران خانگی جهت رصد شبکه، شناسایی ارتباطات مشکوک و عیبیابی است.
اگر حس کردی چیزی توی شبکه غیرعادی کار میکند، netstat همیشه راهنمای توست!