ضبط کردن ترافیک شبکه به کمک ابزار Netsh در CMD
هنگامیکه قادر به نصب برنامه Wireshark یا Microsoft Network Monitor یا سایر نرم افزارهای مانیتورینگ شبکه در یک سرور نیستید، میتوانید با اجرای برنامه netsh.exe که به صورت پیش فرض داخل ویندوز قرار دارد و از طریق command line قابل دسترس و اجرا میباشد، تمامیترافیکهای داخل شبکه خود را در حالتهای مختلف ضبط کنید. از این عمل برای شنود (Sniff) عملکرد شبکه نیز میتوان استفاده کرد. پس در این مقاله با نحوه “ضبط کردن ترافیک شبکه” آشنا خواهید شد.
netsh چیست؟
netsh یا Network Shell یک ابزار اسکریپتی یا نوعی برنامه نویسی خط فرمان است که امکان نمایش اطلاعات مربوط به شبکه خود که در حال اجرا هستند را فراهم میکند و به شما اجازه میدهد پیکربندیهای کامپیوتر خود را که داخل شبکه ارتباطی قرار دارد یعنی به شبکه متصل و در حین کار کردن باشد را تغییر دهید. با اجرای این ابزار یا دستور میتوان از بخشهای مختلف در پروندههای دستهای یا اسکریپتها نیز استفاده کرد و حتی کامپیوترهای از راه دور و محلی local را میتوان با استفاده از دستورات netsh پیکربندی کرد.
مراحل انجام ضبط کردن ترافیک شبکه در ویندوز
برای این کار لازم است ابتدا با سطح دسترسی administrator وارد محیط cmd شوید. سپس با زدن کلیدهای ترکیبی windows+R از صفحه کلید یا keyboard وارد پنجره Run شده سپس دستور cmd را تایپ کرده و کلیدهای Ctrl+Shift+Enter را به صورت همزمان میفشاریم، زدن این کلیدها معادل اجرای برنامه با Run as administrator میباشد. در محیط command Prompt دستورات زیر را اجرا میکنیم.
netsh trace start capture=yes tracefile=c:dedsec.etl fileMode=single maxSize=250 |
با این دستور فایلی با پسوند etl در مسیر تعیین شده درایور C با نام dedsec.etl ایجاد شده که تا 250 مگابایت ظرفیت برای نگهداری اطلاعات ضبط شده یا کپچرشده از تمام ترافیکهای شبکه به صورت کدگذاری شده به کار میرود.
چنانچه حجم این فایل کامل شود ضبط ترافیک شبکه متوقف میشود و اگر قصد توقف دستی را داشته باشیم میتوانیم با دستور زیر عملیات ضبط ترافیک شبکه را به اتمام برسانیم.
netsh trace stop |
با اجرای دستور بالا یک فایل با پسوند Cab برای ما در همان مسیر ایجاد خواهد شد که این فایل را میتوانیم با برنامههای مانیتوریگ مثل وایرشاک نیز اجرا کنیم در ضمن فایل ایجاد شده عملیات ضبط تمام ترافیک شبکه که با پسوند etl بود را میتوان با برنامه Event Viewer در ویندوز باز کرد و اطلاعات مربوط به هر Log را دید.
برای دیدن وضعیت ترافیک شبکه از دستور زیر استفاده میکنیم:
netsh trace show status |
برای دیدن تنظیمات بیشتری که قابلیت اعمال در ضبط ترافیک شبکه را دارند از دستور زیر استفاده میکنیم.
netsh trace show capturefilterHelp |
چناچه قصد ضبط تمام ترافیکهای بین سرور محلی و آدرس مقصد را داشته باشیم مطابق دستور زیر عمل میکنیم:
netsh trace start capture=yes Ethernet.Type=IPv4 IPv4.Address=x.x.x.x tracefile=c:temptrace.etl |
اگرچه قصد ضبط کردن ترافیک یک پروتکل خاصی را داشته باشییم میتوانیم شماره پروتکل مربوطه را مطابق دستور زیر وارد کنیم.
netsh trace start capture=yes protocol=17 tracefile=c:temptrace.etl |
در دستور بالا تمام ترافیکهای پروتکل UDP که با شماره 17 مشخص شده است ضبط میشود. حجم پیش فرض برای توقف فایل ضبط ترافیک etl معادل 250مگابایت میباشد.
چنانچه کارت شبکه کامپیوتر یا سرور شما دارای چندین رابط یا اینترفیس مختلف اعم از Lan وWireless باشد و قصد ضبط کردن تمام ترافیک یک رابط خاصی را داشته باشید به صورت زیر عمل میکنیم.
netsh trace start capture=yes tracefile=c:temptrace.etl CaptureInterface=”Local Area Connection” |
dedsec will give you the truth
join us
لینا چت.چت روم.شیرین چت.چت فارسی