آموزش دستور Netstat

نویسنده: آبتین حیدرآبادیان| دسته بندی: آموزش سرور مجازی ویندوز | نظرات: 2 نفر
آموزش دستور Netstat
18554
14 شهریور 1396
آبتین حیدرآبادیان نویسنده

در این بخش از آموزش‌های آذرآنلاین با آموزش دستور Netstat در خدمت شما خواهیم بود.

دستور Netstat که مخفف Network statistics است دستوری برای دریافت وضعیت شبکه می باشد. حال در این مقاله ما قصد داریم به بررسی این دستور به صورت کامل پرداخته و نحوه کار کردن با آن را خدمت شما توضیح دهیم.

ابتدا قبل از آموزش دستور Netstat به توضیح کلی و کامل آن می‌پردازیم.

دستور Netstat چیست و چه کاربردی دارد ؟

Netstat همانند دستور Netsh یک ابزار خدماتی در سیستم‌عامل ویندوز است که همانند یک دستور خارجی Command Prompt ویندوز عمل می‌کند.

این دستور یک فایل اجرایی با نام netstat.exe دارد که در پوشه Windows وجود داشته و در مجموع برای نمایش تمام ارتباطات ما در شبکه اعم از پورت‌ها ، آدرس IP ها ، سیستم‌هایی که با ما ارتباط دارند و ... بکار می‌رود.

این دستور همانطور که توضیح داده شد ، در محیط CMD یا همان Command Prompt عمل کرده و نتایج و خروجی دستور نیز در همان محیط به نمایش در می‌آید.

البته امروزه ابزارهای و نرم‌افزارهای متفاوت دیگری مانند Xnetstat وجود دارند که تمامی اطلاعات دستور Netstat را به صورت گرافیکی در محیط ویندوز به شما نمایش می‌دهد. اما با این تفاسیر همچنان این دستور کاربردی‌تر و دم دست‌تر از سایر ابزارهای گرافیکی می‌باشد.

خُب تا بدین جای مطلب با دستور Netstat آشنایی مختصری پیدا کردید ، حال در ادامه به آموزش دستور Netstat می‌پردازیم تا بیش از پیش با مفهوم و عملکرد آن آشنا شوید.

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

آموزش دستور Netstat

دستور اجرایی این ابزار همان Netstat است که پس از وارد کردن آن در محیط Cmd اطلاعاتی از قبیل ، آدرس IP به همراه پورت‌های ارتباطی بین سیستم شما و سیستم دیگر ، وضعیت پورت‌ها  و ... را به نمایش می‌گذارد.

حال دستور را ما وارد کرده و اطلاعاتی از قبیل زیر به نمایش در آمده که توضیح آن به شرح زیر می‌باشد.

اجرای دستور Netstat در ویندوز

پس از وارد کردن دستور به صورت پیش‌فرض شما چهار ستون اصلی را خواهید دید که به شرح زیر می باشند.

Proto : پروتکل ارتباطی بین سیستم شما و سیستم مقصد را نمایش می‌دهد.

Local Address : آدرس IP فعلی شما که درگیر ارتباط با سیستم دیگر می‌باشد در این ستون نمایش داده می‌شود.

Foreign Address : آدرس و پورت ارتباطی سیستم مقصد با شما در این ستون نمایش داده خواهد شد.

State : وضعیت ارتباط در این بخش به نمایش درخواهد آمد که نشانگر عملیات فعلی آن پورت می‌باشد.

وضعیت و یا همان State حالت‌های مختلفی دارد که در ادامه به شرح آن می‌پردازیم.

نکته : ارتباط در شبکه همیشه به صورت سرویس گیرنده و سرویس دهنده برقرار می‌شود و در توضیحات پایین ما این کلمات را به عنوان سرور و کلاینت معرفی کرده‌ایم ؛ اما صرفاً توضیحات ما مربوط به یک سرور فیزیکی نیست و به معنای سرویس دهنده می‌باشد.

انواع وضعیت ( State ) در دستور Netstat

CLOSED : هنگامی که سرور یک سیگنال ACK از کلاینت دریافت کرده و اتصال به صورت کامل بسته می‌شود ، این وضعیت به نمایش در خواهد آمد.

CLOSED_WAIT : هنگامی که از سمت کلاینت مبنی بر پایان دادن به ارتباط یک سیگنال FIN ارسال می‌شود وضعیت به حالت CLOSED_WAIT در خواهد آمد.

ESTABLISHED : هنگامی که سیگنال SYN از سمت کلاینت به سرور ارسال شده و ارتباط به صورت کامل برقرار می‌شود وضعیت ESTABLISHED خواهد شد.

FIN_WAIT_1 : در این وضعیت ارتباط برقرار است و سیگنالی مبنی بر بسته شدن ارتباط دریافت نشده است.

FIN_WAIT_2 : پس از مدتی که ارتباط در سرور از سمت کلاینت در انتظار بسته شدن می‌باشد و همچنان سیگنال FIN دریافت نشده است این وضعیت نمایش داده می‌شود.

LAST_ACK : هنگامی که سرور در حال ارسال سیگنال FIN خود به سمت کلاینت می‌باشد این وضعیت نماینگر خواهد شد

LISTENING : در این وضعیت ، سرور آماده دریافت و برقراری ارتباط با کلاینت است.

SYN_RECEIVED : در این حالت سرور تنها سیگنال SYN را از طرف کلاینت دریافت کرده است.

SYN_SEND : در این وضعیت کلاینت درخواست برای باز کردن و فعال شدن ارتباط داده است.

TIME_WAIT : این وضعیت در هنگامی نمایش داده می‌شود که ارتباط بین کلاینت و سرور شناخته شده ولی ارتباط به صورت کامل برقرار نشده است.

وضعیت‌هایی که در بالا خدمت شما توضیح دادیم ، کلیه وضعیت‌هایی بود که ممکن است شما در هنگام وارد کردن دستور Netstat ببینید. اما شما بیشتر با سه الی چهار وضعیت برخورد خواهید کرد و مابقی حالات به سرعت رد شده و مربوط به سرور نیز می‌باشد.

مثالی برای درک بهتر کاربرد دستور Netstat

به طور مثال پس از وارد کردن این دستور در صورتی که دیدید از یک IP خاص در بخش Foreign بر روی یک پورت بی ربط ارتباطی برقرار است ، شما متوجه خواهید شد که اطلاعاتی از سیستم شما در حال جابه‌جا شدن می‌باشد که ممکن است با کمی تحقیق متوجه تروجان و یا بدافزار شوید.

به عنوان مثال تروجانی با نام sub7 از پورت 27374 استفاده می‌کند و اگر در بخش Foreign Address یک آدرس بیگانه و ناشناس با پورت ذکر شده به شما متصل شده و وضعیت در حال listening است بدانید این تروجان در حال فعالیت بر روی سیستم شما می‌باشد.

حال پس از توضیحاتی که خدمت شما ارائه دادیم در ادامه به آموزش پارامترهای کاربردی این دستور پرداخته تا آموزش دستور netstat را به صورت کامل فراگیرید.

پارامترهای دستور Netstat

a- : تمامی ارتباط‌های شبکه سیستم خود را به صورت کامل دریافت خواهید کرد.

b- : نمایش نام برنامه‌هایی که به صورت باینری در حال ارتباط هستند ؛ تمامی برنامه‌های ویندوز در هنگام اتصال به اینترنت در این بخش نمایش داده خواهد شد.

e- : نمایش وضعیت اینترفیس شبکه و میزان پکت‌هایی که ارسال و دریافت شدند.

f- : نام کامل دامنه ( FQDN ) آدرس‌های خارجی که به سیستم شما متصل هستند.

n- : لیستی از تمام ارتباطات فعال TCP که در حال حاضر برقرار می‌باشد.

o- : نمایش تمام ارتباطات فعال TCP به همراه شماره پردازش ( PID ) ، که توسط آن می‌توانید پردازش را توسط Task Manager ببندید.

p- : با استفاده از این دستور می‌توانید ارتباطات یک پروتکل خاص را بررسی کنید ؛ این دستور پروتکل‌های TCP ، UDP ، TCPv6 ، UDPv6 ، ICMP و ICMPv6 را پشتیبانی می‌کند. این پارامتر می‌توانید همراه پارامتر s- استفاده شود تا خروجی بهتری بگیرید.

r- : این دستور جدول Route ویندوز شما را نمایش می‌دهد. ( این دستور همانند route print عمل می‌کند )

s- : پارامتر s یک آمار کلی از پروتکل‌ها به همراه وضعیت ارتباط و داده‌های رد و بدل شده نمایش می‌دهد. این دستور همراه با پارمتر p می‌تواند فیلتر خوبی برای نمایش وضعیت یک پروتکل و ارتباط خاص باشد.

t- : توسط این پارامتر شما تمامی اتصال‌های فعال با پروتکل TCP که به بیرون از سیستم شما زده شده را ببینید.

v- : فعالیت هرگونه ارتباط را به شما نمایش می‌دهد.

?- : نمایش Help دستور Netstat

Interval : این پارامتر دستوری نیست و تنها کافی است پس از وارد کردن دستور و پارامترها عددی را وارد کنید تا به ثانیه دستور تکرار شود.

پارامترهای دستور Netstat  در این قسمت به پایان رسیده و حال برای استفاده از آن و نحوه کارایی آنها ، نظر شما را به مثال‌های زیر جلب می‌نماییم.

ساختار و مثال دستور Netstat

ساختار دستور Netstat
netstat –parameter1 –parameter2 proto [interval]

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

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

netstat -an

یا

netstat -a -n
مثال‌های کاربردی دستور Netstat

مثال 1:

netstat –an

با وارد کردن دستور بالا ، لیستی از تمامی ارتباطات TCP و UDP برای شما به نمایش در می‌آید.

مثال 2:

netstat -b 5 >> C:\connections.txt

با وارد کردن دستور بالا ، ارتباطات فعال مربوط به اپلیکیشن‌ها هر 5 ثانیه در فایل connection.txt ذخیره می‌شود.

مثال 3:

Netstat –aop tcp

دستور بالا لیستی از ارتباط های برقرار شده با پروتکل TCP را به همراه PID هر پردازش نمایش خواهد داد.

مثال 4:

netstat -an 10 | findstr :80

دستور بالا یک دستور ترکیبی است که با وارد شدن آن هر 10 ثانیه ، لیستی از ارتباط‌های که با پروتکل 80 برقرار شده را نمایش می‌دهد.

خُب ، در این جای مطلب آموزش دستور Netstat به پایان رسیده است.

امیدواریم از توضیحات و آموزش بالا رضایت کامل را داشته باشید.