شروع کار با Wireshark برای بررسی ترافیک شبکه
Wireshark بستههایی را که در نقطه ضبط دیده شدهاند نمایش و تفسیر میکند. برای شروع، یک پرسش محدود انتخاب کنید: آیا درخواست DNS ارسال و پاسخ آن دریافت شده؟ یا آیا اتصال TCP موردنظر آغاز شده است؟ ضبط طولانی همه ترافیک، جای پرسش مشخص را نمیگیرد.
این راهنما براساس مستندات رسمی تهیه شده و توسط نتمسترز بهصورت عملی آزمایش نشده است.
آخرین بازبینی متن:
در این صفحه
نقطه ضبط و مجوز را مشخص کنید
محیط هدف، Wireshark سری۴٫۶ نصبشده روی یک کلاینت آزمایشگاهی با مجوز ضبط است. نسخه دقیق را از About Wireshark و نسخه سیستمعامل و ابزار capture را پیش از کار ثبت کنید؛ دسترسی ضبط باید از قبل آماده باشد. رابطی را انتخاب کنید که ترافیک موردنظر واقعاً از آن عبور میکند. وجود Ethernet، Wi-Fi، VPN و رابط مجازی میتواند انتخاب را مبهم کند. در شبکه سوئیچی، دیدن ترافیک خودِ کلاینت با دیدن همه ارتباطات دفتر یکسان نیست. منبع ۱
برای تمرین، فقط کلاینت خودتان، یک DNS آزمایشگاهی و یک سرویس HTTP آزمایشی بدون حساب و اطلاعات واقعی را در نظر بگیرید. زمان کوتاه و محل نگهداری فایل را تعیین کنید. اگر مجوز یا رابط مناسب موجود نیست، ضبط را شروع نکنید؛ مشکل مجوز با خاموشکردن محافظت شبکه حل نمیشود.
یک ضبط کوتاه بگیرید
از صفحه شروع رابط را انتخاب کنید و Capture → Options را باز کنید تا تنظیمات رابط و Capture Filter را پیش از ضبط بررسی کنید. مسیر منو و نام رابط را در نسخه نصبشده بررسی کنید. منبع ۲
در سناریوی فرضی، IP کلاینت 192.168.20.10 است. اگر Capture Filter میخواهید، پس از جایگزینی IP واقعی کلاینت آزمایشگاه، فیلتر زیر فقط DNS متعارف و TCP پورت۸۰۸۰ مربوط به آن را هدف میگیرد:
host 192.168.20.10 and (port 53 or tcp port 8080)این فیلتر پیش از شروع ضبط اعمال میشود و دامنه فایل را محدود میکند. ترافیک خارج از فیلتر ثبت نمیشود؛ پس ندیدن آن بعداً، نبودش در شبکه را ثابت نمیکند. منبع ۳
پس از تنظیم رابط و فیلتر، Capture → Start را بزنید. در سناریوی مثال، DNS آزمایشگاه با آدرس 192.168.20.53 باید نام server.example.test را بشناسد و سرویس HTTP آزمایشی روی 192.168.20.20:8080 از قبل آماده باشد. پس از شروع ضبط، روی کلاینت Windows از Command Prompt درخواست DNS بفرستید؛ هر دو مقدار زیر نمونهاند و باید جایگزین شوند.
nslookup server.example.test 192.168.20.53سپس در مرورگر کلاینت، http://192.168.20.20:8080/ را با آدرس سرویس آزمایشگاه جایگزین و درخواست تازهای ارسال کنید. برای دیدن آغاز اتصال، ضبط را پیش از بازکردن اتصال تازه شروع کنید؛ صفحه cacheشده یا اتصال باز قبلی ممکن است handshake تازهای نداشته باشد.
بعد از تولید ترافیک موردنظر، Capture → Stop را بزنید و فایل را ذخیره کنید. نام فایل، نسخه، رابط، زمان و کاری را که همزمان انجام دادید یادداشت کنید. انتخاب رابط و محل ضبط از پیشنیازهای مهم مشاهده ترافیکاند. منبع ۱، منبع ۱۱
فیلتر نمایش را با فیلتر ضبط اشتباه نگیرید
در نوار Display Filter، عبارت را بنویسید و اعمال کنید. این فیلتر فقط نمایش را عوض میکند؛ بستههای پنهانشده همچنان در فایل ضبط وجود دارند. پاککردن فیلتر باید نمایش کامل را برگرداند. منبع ۴
برای نمایش بستههایی که بهعنوان DNS تشریح شدهاند:
dnsبرای TCP سرویس آزمایشی روی پورت۸۰۸۰:
tcp.port == 8080برای بستههای دارای SYN، شامل درخواست آغاز اتصال و SYN/ACK:
tcp.flags.syn == 1برای یک جریان مشخص؛ صفر را با شماره واقعی همان جریان جایگزین کنید:
tcp.stream == 0برای بستههای دارای برچسب بازفرست مشکوک:
tcp.analysis.retransmissionفیلتر SYN بهتنهایی ACK نهاییِ بدون SYN را نشان نمیدهد. برای دیدن توالی کامل، شماره همان stream را از بسته انتخابشده بردارید و جریان را بررسی کنید. شماره stream در هر فایل معنا دارد و نباید صفر را برای همه ضبطها فرض کرد. منبع ۵
درخواست و پاسخ DNS را جفت کنید
با فیلتر dns، نام پرسیدهشده، نوع درخواست، شناسه تراکنش، آدرس و پورت دو طرف را در جزئیات ببینید. پاسخ مرتبط را با همین زمینه پیدا کنید؛ نزدیکبودن دو سطر بهتنهایی دلیل تعلق آنها به هم نیست. وجود پاسخ هم لزوماً به معنی دریافت آدرس نیست؛ کد پاسخ و بخش جواب اهمیت دارند. منبع ۹
DNS متعارف میتواند روی UDP یا TCP باشد. منبع ۶ اگر نام از cache به دست آمده و درخواست تازهای ارسال نشده باشد، پرسوجوی تازهای هم برای ضبط وجود ندارد. DNS over HTTPS نیز پرسوجو را داخل HTTPS منتقل میکند؛ فیلتر پورت۵۳ برای دیدن آن کافی نیست. منبع ۱۰ برای آزمون قابل کنترل، از DNS مجاز آزمایشگاه و درخواست مشخص استفاده کنید؛ تنظیمات امنیتی شبکه کاری را صرفاً برای ظاهرشدن بسته تغییر ندهید.
اگر فقط درخواست را میبینید، ابتدا کاملبودن ضبط، زمان شروع و رابط را بررسی کنید. از یک فایل ناقص، خرابی قطعی DNS را نتیجه نگیرید. سپس مسیر و پاسخ سرویس، با شواهد دیگری بررسی میشوند.
اتصال TCP را در همان جریان دنبال کنید
در جریان سرویس آزمایشی، SYN از کلاینت، SYN/ACK از سرور و ACK بعدی را در زمینه همان ارتباط بررسی کنید. موفقیت آغاز اتصال به معنی موفقیت ورود کاربر، پاسخ HTTP یا اجرای برنامه نیست؛ لایه برنامه همچنان بررسی جدا میخواهد.
برچسب Retransmission در Wireshark یک تشخیص تحلیلی و در مرجع فیلد، «مشکوک» توصیف شده است. آن را همراه ترتیب بستهها و کیفیت ضبط ببینید. منبع ۵ Expert Information هم سرنخ بررسی است؛ وجود اخطار علت نهایی را ثابت نمیکند و نبود آن، سلامت همه شبکه را تضمین نمیکند. منبع ۷
این آموزش ظرفیت لینک را اندازه نمیگیرد. تعداد بسته یا نمودار یک جریان ناقص را به حداکثر سرعت شبکه تعمیم ندهید. برای تفکیک کندی فایل و اینترنت، راهنمای کندی شبکه نقطه شروع عمومی مناسبتری است.
خروجی را بدون افشای اطلاعات اضافی آماده کنید
اصل ضبط را با دسترسی محدود نگه دارید. برای جداکردن بستههای مرتبط، Export Specified Packets امکان انتخاب محدوده را میدهد؛ خروجی را دوباره باز کنید و بررسی کنید چه چیزی واقعاً داخل آن مانده است. منبع ۸
انتخاب چند بسته، IP، نام، MAC، محتوای پیام یا اطلاعات حساس داخل همان بستهها را ناشناس نمیکند. برای گزارش بیرونی، میتوان خلاصه متنی لازم را استخراج و شناسههای حساس را با برچسبهای ثابت جایگزین کرد؛ حفظ ارتباط «کلاینت A / سرور B» برای فهم نتیجه کافی است. نسخه ویرایششده را از اصل جدا و تغییرها را ثبت کنید. حذف دستی بایتهای فایل ضبط، روش مناسبی برای ساخت مدرک قابل اتکا نیست.
گزارش کوتاه بگوید کجا ضبط شد، چه کاری انجام شد، چه چیزی مشاهده شد و چه چیزی هنوز معلوم نیست. برای رسیدگی تخصصی شبکه با نتمسترز تماس بگیرید؛ تهیه یا ارسال فایل ضبط شرط دریافت خدمت نیست. راهنماهای شبکه مطالب مرتبط را در دسترس قرار میدهند.
منبع بررسی فنی
- Wireshark — Capture prerequisites
- Wireshark — Start capturing
- Wireshark — Capture filters
- Wireshark — Display filters
- Wireshark — TCP field reference
- Wireshark — DNS
- Wireshark — Expert Information
- Wireshark — Exporting data
- Wireshark — DNS field reference
- IETF RFC 8484 — DNS over HTTPS، چکیده و بخش۱
- Wireshark — Stop the running capture
- Microsoft — درخواست غیرتعاملی nslookup به DNS مشخص