STRATOSHARK(1)   STRATOSHARK(1)

stratoshark - تحلیل‌گر گرافیکی فراخوان‌های سیستم و لاگ رویدادها

stratoshark [ -i <capture source>|- ] [ -f <capture filter> ] [ -Y <display filter> ] [ -w <outfile> ] [ options ] [ <infile> ]

stratoshark -h|--help

stratoshark -v|--version

برنامهٔ Stratoshark یک تحلیل‌گر گرافیکی (GUI) برای فراخوان‌های سیستم (system calls) و لاگ است. این ابزار به شما امکان می‌دهد تا فراخوان‌های سیستم و پیام‌های لاگ را به صورت تعاملی از یک سیستم زنده یا از یک فایل ضبط‌شده از پیش ذخیره‌شده بررسی و پیمایش کنید. قالب بومی فایل‌های ضبط در Stratoshark قالب scap است که توسط ابزار خط فرمانی sysdig و Falco استفاده می‌شود.

پنجرهٔ اصلی Stratoshark سه نمای مختلف از هر رویداد (event) را نمایش می‌دهد. این پنجره یک خط خلاصه را نشان می‌دهد که رویداد را به طور مختصر شرح می‌دهد. یک نمای جزئیات رویداد نیز نمایش داده می‌شود که به شما اجازه می‌دهد فیلد دقیق مورد نظرتان را با جزئیات کاوش کنید. در نهایت، یک تخلیهٔ هگزادسیمال (hex dump) دقیقاً نشان می‌دهد که داده‌های رویداد روی دیسک یا در بستر ارتباطی به چه شکلی هستند.

علاوه بر این، Stratoshark ویژگی‌هایی دارد که آن را متمایز می‌کند. این ابزار می‌تواند تمام فراخوان‌های سیستم را در یک جریان توصیف‌گر فایل (file descriptor) سرهم‌بندی کند و داده‌های ASCII (یا EBCDIC یا هگزادسیمال) را در آن گفتگو نمایش دهد. فیلترهای نمایشی در Stratoshark بسیار قدرتمند هستند؛ فیلدهای بیشتری نسبت به سایر ابزارها در Stratoshark قابل فیلتر شدن هستند و نحو مورد استفاده برای ایجاد فیلترها غنی‌تر است. با پیشرفت و توسعهٔ Stratoshark، پشتیبانی از فیلدهای بیشتری نیز اضافه خواهد شد.

عملیات ضبط رویدادها توسط کتابخانه‌های libscap و libsinsp انجام می‌شود. نحو فیلتر ضبط از قواعد libscap پیروی می‌کند. این نحو با نحو فیلترهای نمایشی تفاوت دارد.

پشتیبانی از فایل‌های فشرده از کتابخانهٔ zlib بهره می‌برد (و به آن وابسته است). اگر کتابخانهٔ zlib موجود نباشد، Stratoshark کامپایل خواهد شد، اما قادر به خواندن فایل‌های فشرده نخواهد بود.

مسیر فایل ضبطی که باید خوانده شود را می‌توان با گزینهٔ -r یا به عنوان یک آرگومان خط فرمان مشخص کرد.

برنامهٔ Stratoshark از گزینه‌های متنوعی در خط فرمان پشتیبانی می‌کند. بیشتر کاربران ترجیح می‌دهند آن را بدون هیچ گزینه‌ای اجرا کرده و از طریق منوهای برنامه آن را پیکربندی کنند. این دسته از کاربران می‌توانند از مطالعهٔ این بخش صرف‌نظر کنند.

-a|--autostop <capture autostop condition>

معیاری را مشخص می‌کند که بر اساس آن Stratoshark باید نوشتن در فایل ضبط را متوقف کند. این معیار به صورت test:value است، که در آن test یکی از موارد زیر است:

duration:value متوقف کردن نوشتن در فایل ضبط پس از سپری شدن value ثانیه. مقادیر ممیز شناور (مانند 0.5) مجاز هستند.

files:value متوقف کردن نوشتن در فایل‌های ضبط پس از ایجاد تعداد value فایل.

filesize:value متوقف کردن نوشتن در یک فایل ضبط پس از رسیدن حجم آن به value کیلوبایت (kB). اگر این گزینه همراه با گزینهٔ -b استفاده شود، Stratoshark در صورت رسیدن به این اندازه، نوشتن در فایل جاری را متوقف کرده و به فایل بعدی منتقل می‌شود. توجه داشته باشید که اندازهٔ فایل به حداکثر مقدار 2 ترابایت محدود است، اگرچه ممکن است قبل از رسیدن به این حد، در صورتی که تعداد رویدادها از 2^31 (2147483648) فراتر رود، برای مشاهدهٔ فایل در رابط کاربری گرافیکی با مشکل مواجه شوید.

events:value متوقف کردن نوشتن در فایل ضبط پس از اینکه شامل value رویداد شد. همانند -c<capture event count> عمل می‌کند.

-b|--ring-buffer <capture ring buffer option>

باعث اجرای Stratoshark در حالت «چندین فایل» (multiple files) می‌شود. در این حالت، Stratoshark در چندین فایل ضبط می‌نویسد. هنگامی که نخستین فایل ضبط پر شد، Stratoshark نوشتن را به فایل بعدی منتقل می‌کند و به همین ترتیب ادامه می‌دهد.

نام فایل‌های ایجاد شده بر اساس نام فایل ارائه‌شده با پرچم -w، شمارهٔ فایل و تاریخ و زمان ایجاد آن‌ها تعیین می‌شود، مانند outfile_00001_20260714120117.pcap، outfile_00002_20260714120523.pcap، ...

با گزینهٔ files همچنین امکان تشکیل یک «بافر حلقه‌ای» (ring buffer) وجود دارد. این کار فایل‌های جدید را تا رسیدن به تعداد فایل‌های مشخص‌شده پر می‌کند، و در آن نقطه Stratoshark داده‌های فایل نخست را دور ریخته و شروع به نوشتن مجدد در آن فایل می‌کند و روند تکرار می‌شود. اگر گزینهٔ files تنظیم نشده باشد، فایل‌های جدید تا زمانی که یکی از شرایط توقف ضبط برآورده شود (یا دیسک پر شود) پر می‌شوند.

این معیار به صورت key:value است، که در آن key یکی از موارد زیر است:

duration:value رفتن به فایل بعدی پس از گذشت value ثانیه، حتی اگر فایل فعلی به طور کامل پر نشده باشد. مقادیر ممیز شناور (مانند 0.5) مجاز هستند.

files:value شروع مجدد از فایل نخست پس از نوشته شدن تعداد value فایل (تشکیل بافر حلقه‌ای). این مقدار باید کمتر از ۱۰۰۰۰۰ باشد. هنگام استفاده از تعداد زیادی فایل باید احتیاط کرد: برخی از سیستم‌های فایل کارایی مناسبی با فایل‌های بسیار زیاد در یک پوشهٔ واحد ندارند. معیار files نیازمند تعیین یکی دیگر از معیارها برای کنترل زمان رفتن به فایل بعدی است. باید توجه داشت که هر پارامتر -b دقیقاً یک معیار دریافت می‌کند؛ برای تعیین دو معیار، هر یک باید با گزینهٔ -b مقدم شوند.

filesize:value رفتن به فایل بعدی پس از رسیدن حجم آن به value کیلوبایت. توجه داشته باشید که اندازهٔ فایل به حداکثر مقدار ۲ ترابایت محدود است، اگرچه ممکن است قبل از رسیدن به این حد، در صورتی که تعداد رویدادها از 2^31 (2147483648) فراتر رود، برای مشاهدهٔ فایل در رابط گرافیکی با مشکل مواجه شوید.

interval:value رفتن به فایل بعدی هنگامی که زمان، مضرب دقیقی از value ثانیه باشد.

events:value رفتن به فایل بعدی پس از این که شامل value رویداد شد.

مثال: -b filesize:1000 -b files:5 منجر به ایجاد یک بافر حلقه‌ای شامل پنج فایل، هر کدام به اندازهٔ یک مگابایت می‌شود.

-c <capture event count>

حداکثر تعداد رویدادها را برای خواندن هنگام ضبط داده‌های زنده تعیین می‌کند. مانند -a events:<capture event count> عمل می‌کند.

-C <configuration profile>

اجرا با نمایهٔ پیکربندی (configuration profile) مشخص‌شده.

--capture-comment <comment>

هنگام انجام عملیات ضبط از خط فرمان به همراه پرچم -k، در صورت پشتیبانی قالب پرونده، یک نظر (comment) به فایل خروجی اضافه می‌کند.

این گزینه را می‌توان چندین بار مشخص کرد. توجه داشته باشید که Stratoshark در حال حاضر تنها نخستین نظر یک فایل ضبط را نمایش می‌دهد.

-D|--list-sources

فهرستی از منابعی که Stratoshark می‌تواند از آن‌ها ضبط کند را چاپ کرده و خارج می‌شود. برای هر منبع، یک شماره و یک نام منبع، و احتمالاً به دنبال آن توضیحی متنی از منبع چاپ می‌شود. نام منبع یا شمارهٔ آن را می‌توان به پرچم -i داد تا منبع مورد نظر برای ضبط مشخص شود.

--display <X display to use>

نمایشگر X (نمایشگر سرور گرافیکی X) مورد استفاده را مشخص می‌کند. می‌توان یک نام میزبان و صفحه (otherhost:0.0) یا تنها یک صفحه (:0.0) را مشخص کرد. این گزینه در macOS یا Windows در دسترس نیست. -f <capture filter>

عبارت فیلتر ضبط را تعیین می‌کند.

این گزینه می‌تواند چندین بار تکرار شود. اگر پیش از نخستین رخداد گزینه -i استفاده شود، عبارت فیلتر ضبط پیش‌فرض را تنظیم می‌کند. اگر پس از یک گزینه -i استفاده شود، عبارت فیلتر ضبط را برای منبع مشخص‌شده توسط آخرین گزینه -i که پیش از این گزینه آمده است تنظیم می‌کند. اگر عبارت فیلتر ضبط به‌صورت مشخص تعیین نشده باشد، در صورت وجود از عبارت فیلتر ضبط پیش‌فرض استفاده می‌شود.

نام‌های فیلتر ضبط ازپیش‌تعریف‌شده، همان‌طور که در مورد منوی رابط گرافیکی Capture→Capture Filters نشان داده شده است، می‌توانند با افزودن پیشوند "predef:" به ابتدای آرگومان استفاده شوند. مثال: -f "predef:MyPredefinedHostOnlyFilter"

--fullscreen

اجرای Stratoshark در حالت تمام‌صفحه (حالت کیوسک). برای خروج از حالت تمام‌صفحه، منوی View را باز کرده و گزینه Full Screen را انتخاب کنید. همچنین می‌توانید کلید F11 (یا Ctrl + Cmd + F برای macOS) را فشار دهید.

-g <event number>

پس از خواندن یک فایل ضبط با استفاده از پرچم -r، به event number مشخص‌شده بروید.

-h|--help

شماره نسخه و گزینه‌ها را چاپ کرده و خارج می‌شود.

-H

پنهان کردن پنجره اطلاعات ضبط در حین ضبط زنده.

-i|--source <capture source>|-

تنظیم نام منبع ضبط یا پایپ مورد استفاده برای ضبط زنده.

نام‌های منبع ضبط باید با یکی از نام‌ها یا شماره‌های فهرست‌شده در "stratoshark -D" (توضیح‌داده‌شده در بالا) مطابقت داشته باشند.

اگر هیچ منبعی مشخص نشود، Stratoshark فهرست منابع را جستجو کرده و اولین منبع را انتخاب می‌کند. اگر اصلاً هیچ منبعی وجود نداشته باشد، Stratoshark خطایی گزارش کرده و ضبط را آغاز نمی‌کند.

نام‌های پایپ باید یا نام یک FIFO (پایپ نام‌گذاری‌شده) باشند یا "-" برای خواندن داده‌ها از ورودی استاندارد. در سیستم‌های Windows، نام‌های پایپ باید به شکل "\\.\pipe\pipename" باشند. داده‌های خوانده‌شده از پایپ‌ها باید در قالب استاندارد scap باشند. داده‌های scap باید دارای همان ترتیب بایتی (endianness) میزبان ضبط‌کننده باشند.

این گزینه می‌تواند چندین بار تکرار شود.

-j

استفاده پس از -J برای تغییر رفتار در زمانی که هیچ تطابق دقیقی برای فیلتر یافت نمی‌شود. با این گزینه، اولین رویداد پیش از آن انتخاب می‌شود.

-J <jump filter>

پس از خواندن یک فایل ضبط با استفاده از پرچم -r، به رویداد منطبق با فیلتر پرش می‌کند (با نحو فیلتر نمایش). در صورتی که هیچ تطابق دقیقی یافت نشود، اولین رویداد پس از آن انتخاب می‌شود.

-k

نشست ضبط را بلافاصله آغاز می‌کند. اگر پرچم -i مشخص شده باشد، ضبط از منبع تعیین‌شده استفاده می‌کند. در غیر این صورت، Stratoshark فهرست منابع را جستجو کرده و از اولین منبع استفاده می‌کند. اگر هیچ منبعی وجود نداشته باشد، Stratoshark خطایی گزارش کرده و ضبط را آغاز نمی‌کند.

-l

در صورتی که نمایش رویدادها هم‌زمان با رسیدن رویدادها در حین ضبط به‌طور خودکار به‌روزرسانی شود (همان‌طور که توسط پرچم -S مشخص شده است)، پیمایش خودکار را فعال می‌کند.

-L|--list-data-link-types

انواع پیوند داده (data link types) پشتیبانی‌شده توسط رابط را فهرست کرده و خارج می‌شود.

--list-time-stamp-types

انواع برچسب زمان (time stamp types) پشتیبانی‌شده برای رابط را فهرست می‌کند. اگر هیچ نوع برچسب زمانی قابل تنظیم نباشد، هیچ نوع برچسب زمانی فهرست نمی‌شود.

-o <preference/recent setting>

یک مقدار ترجیحات یا تنظیمات اخیر را تنظیم می‌کند، که مقدار پیش‌فرض و هر مقداری را که از یک فایل preference/recent خوانده شده است بازنویسی می‌کند. آرگومان این پرچم رشته‌ای به فرم prefname:value است، که در آن prefname نام مقدار preference/recent است (همان نامی که در فایل preference/recent ظاهر می‌شود)، و value مقداری است که باید روی آن تنظیم شود.

اگر prefname برابر "uat" باشد، می‌توانید تنظیمات را در جدول‌های مختلف دسترسی کاربر با استفاده از ساختار "uat:uat filename:uat record" بازنویسی کنید. uat filename باید نام یک فایل UAT باشد، مانند user_dlts. uat_record باید به شکل یک رکورد معتبر برای آن فایل باشد، از جمله علامت‌های نقل‌قول. برای نمونه، جهت مشخص کردن یک DLT کاربر از طریق خط فرمان، می‌توانید از عبارت زیر استفاده کنید:

-o "uat:user_dlts:\"User 0 (DLT=147)\",\"cops\",\"0\",\"\",\"0\",\"\""

-P <path setting>

تنظیمات مسیر ویژه که معمولاً به‌طور خودکار شناسایی می‌شوند. این گزینه برای موارد خاص استفاده می‌شود، مانند اجرای Stratoshark از یک مکان مشخص روی یک حافظه USB.

معیار به شکل key:path است، که در آن key یکی از موارد زیر است:

persconf:path مسیر فایل‌های پیکربندی شخصی، مانند فایل‌های ترجیحات (preferences).

persdata:path مسیر فایل‌های داده شخصی؛ این همان پوشه‌ای است که در ابتدا باز می‌شود. پس از اولین راه‌اندازی اولیه، فایل recent آخرین پوشه استفاده‌شده را نگه‌داری خواهد کرد.

-r|--read-file <infile>

داده‌های رویداد را از infile می‌خواند؛ می‌تواند هر قالب فایل ضبط پشتیبانی‌شده‌ای (شامل فایل‌های فشرده) باشد. بر خلاف TShark، در اینجا امکان استفاده از پایپ‌های نام‌گذاری‌شده یا stdin وجود ندارد! برای ضبط از طریق یک پایپ یا از stdin، از -i - استفاده کنید.

-R|--read-filter <read (display) filter>

هنگام خواندن یک فایل ضبط مشخص‌شده با پرچم -r، باعث می‌شود که فیلتر مشخص‌شده (که به جای نحو فیلترهای ضبط از نحو فیلترهای نمایش استفاده می‌کند) بر تمام رویدادهای خوانده‌شده از فایل ضبط اعمال شود؛ رویدادهایی که با فیلتر مطابقت ندارند کنار گذاشته می‌شوند.

-S

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

--temp-dir <directory>

پوشه‌ای را که فایل‌های موقت (شامل فایل‌های ضبط) باید در آن نوشته شوند مشخص می‌کند. رفتار پیش‌فرض در سیستم‌های سازگار با UNIX، مانند Linux، macOS، \*BSD، Solaris و AIX، استفاده از متغیر محیطی $TMPDIR در صورت تنظیم بودن، و در غیر این صورت پیش‌فرض سیستم، معمولاً /tmp است. در Windows، از متغیر محیطی %TEMP% استفاده می‌شود که معمولاً پیش‌فرض آن %USERPROFILE%\AppData\Local\Temp است.

--time-stamp-type <type>

روش برچسب زمانی منابع را تغییر می‌دهد. به --list-time-stamp-types مراجعه کنید.

--update-interval <interval>

مدت زمان بر حسب میلی‌ثانیه میان گزارش‌های رویداد جدید در حین یک ضبط را تنظیم می‌کند. همچنین دقت شرایط مدت زمان فایل را تعیین می‌کند. مقدار پیش‌فرض 100ms است. -v|--version
نمایش اطلاعات کامل نسخه و خروج.

-w <outfile>

تنظیم نام فایل ضبط پیش‌فرض، یا '-' برای خروجی استاندارد.

-X <eXtension options>

مشخص کردن گزینه‌ای برای ارسال به یک ماژول Stratoshark. گزینهٔ افزونه (eXtension) به صورت extension_key:value است، که در آن extension_key می‌تواند موارد زیر باشد:

lua_script:lua_script_filename به Stratoshark اعلام می‌کند که اسکریپت مشخص‌شده را علاوه بر اسکریپت‌های پیش‌فرض Lua بارگذاری کند.

lua_scriptnum:argument به Stratoshark اعلام می‌کند که آرگومان مشخص‌شده را به اسکریپت Lua با شناسهٔ 'num' ارسال کند، که همان شمارهٔ ترتیبی اندیس دستور 'lua_script' است. برای نمونه، اگر تنها یک اسکریپت با '-X lua_script:my.lua' بارگذاری شده باشد، آنگاه '-X lua_script1:foo' رشتهٔ 'foo' را به اسکریپت 'my.lua' ارسال خواهد کرد. اگر دو اسکریپت، مانند '-X lua_script:my.lua' و '-X lua_script:other.lua' به همان ترتیب بارگذاری شده باشند، آنگاه '-X lua_script2:bar' رشتهٔ 'bar' را به دومین اسکریپت Lua، یعنی 'other.lua' ارسال می‌کند.

stdin_descr:description به Stratoshark اعلام می‌کند که هنگام ضبط از ورودی استاندارد (-i -) از توضیحات داده‌شده استفاده کند.

-Y|--display-filter <displaY filter>

شروع با فیلتر نمایش (display filter) مشخص‌شده.

-z <statistics>

واداشتن Stratoshark به جمع‌آوری انواع مختلف آمار و نمایش نتیجه در پنجره‌ای که به صورت شبه‌بلادرنگ (semi-real time) به‌روزرسانی می‌شود.

برخی از آمارهای پیاده‌سازی‌شده در حال حاضر عبارتند از:

-z help

نمایش تمام مقادیر ممکن برای -z.

-d <layer type>==<selector>,<decode-as protocol>

همانند قابلیت Decode As... در Wireshark، این گزینه به شما امکان می‌دهد مشخص کنید که یک نوع لایه چگونه باید کالبدشکافی شود. اگر نوع لایه مورد نظر (برای مثال، tcp.port یا udp.port برای شماره درگاه TCP یا UDP) دارای مقدار برگزیننده (selector) مشخص‌شده باشد، بسته‌ها باید به عنوان پروتکل تعیین‌شده کالبدشکافی شوند.

مثال ۱. کالبدشکافی به عنوان پورت (Decode As Port)

-d tcp.port==8888,http هر ترافیکی را که بر روی درگاه TCP شماره 8888 جریان دارد به عنوان HTTP رمزگشایی و کالبدشکافی می‌کند.

برای مثال‌های بیشتر صفحهٔ راهنمای tshark(1) را ببینید.

--disable-all-protocols

غیرفعال کردن کالبدشکافی تمام پروتکل‌ها.

--disable-protocol <proto_name>[,<proto_name>,...]

غیرفعال کردن کالبدشکافی proto_name. برای لغو فهرست پروتکل‌های فعال پیش‌فرض در نمایهٔ انتخابی خود و غیرفعال کردن موقت تمام پروتکل‌ها، از مقدار ALL برای proto_name استفاده کنید.

--disable-heuristic <short_name>

غیرفعال کردن کالبدشکافی پروتکل اکتشافی (heuristic).

--enable-protocol <proto_name>[,<proto_name>,...]

فعال کردن کالبدشکافی proto_name. برای لغو فهرست پروتکل‌های غیرفعال پیش‌فرض در نمایهٔ انتخابی خود و فعال‌سازی موقت تمام پروتکل‌هایی که به صورت پیش‌فرض فعال هستند، از مقدار ALL برای proto_name استفاده کنید.

اگر یک پروتکل هم در --disable-protocol و هم در --enable-protocol آمده باشد، پروتکل فعال می‌شود. این سازوکار به شما امکان می‌دهد تمام پروتکل‌ها را به جز فهرستی از استثناها به طور موقت غیرفعال کنید. مثال: --disable-protocol ALL --enable-protocol eth,ip

--enable-heuristic <short_name>

فعال کردن کالبدشکافی پروتکل اکتشافی (heuristic).

-K <keytab>

بارگذاری کلیدهای رمزنگاری kerberos از فایل keytab مشخص‌شده. این گزینه می‌تواند چندین بار برای بارگذاری کلیدها از چندین فایل استفاده شود.

مثال: -K krb5.keytab

-n

غیرفعال کردن تفکیک نام شیء شبکه (مانند نام میزبان، نام درگاه‌های TCP و UDP)؛ گزینهٔ -N ممکن است این گزینه را لغو کرده و بازنویسی کند.

-N <name resolving flags>

فعال کردن تفکیک نام تنها برای انواع خاصی از آدرس‌ها و شماره درگاه‌ها، در حالی که تفکیک نام برای سایر انواع آدرس‌ها و شماره درگاه‌ها خاموش بماند. این گزینه (همراه با -n) را می‌توان چندین بار مشخص کرد؛ آخرین مقدار واردشده مقادیر قبلی را لغو می‌کند. این گزینه و -n گزینه‌های موجود در ترجیحات (preferences) را لغو و بازنویسی می‌کنند، از جمله ترجیحاتی که از طریق گزینهٔ -o تنظیم شده‌اند. اگر هیچ‌یک از گزینه‌های -N و -n داده نشوند، مقادیر موجود در ترجیحات اعمال می‌شوند که مقدار پیش‌فرض آن -N dmN است.

آرگومان رشته‌ای است که می‌تواند شامل این حروف باشد:

d برای فعال‌سازی تفکیک نام از بسته‌های DNS ضبط‌شده

g برای فعال‌سازی جستجوی اطلاعات موقعیت جغرافیایی آدرس IP از پایگاه‌های دادهٔ MaxMind پیکربندی‌شده

m برای فعال‌سازی تفکیک آدرس MAC

n برای فعال‌سازی تفکیک آدرس شبکه

N برای فعال‌سازی استفاده از تفکیک‌کننده‌های خارجی (مانند DNS) جهت تفکیک آدرس شبکه؛ بدون فعال بودن n اثری ندارد.

s برای فعال‌سازی تفکیک آدرس با استفاده از اطلاعات SNI یافت‌شده در بسته‌های دست‌تکانی (handshake) ضبط‌شده

t برای فعال‌سازی تفکیک شماره درگاه‌های لایهٔ انتقال

v برای فعال‌سازی تفکیک شناسهٔ VLAN به نام‌ها

--only-protocols <protocols>

تنها فعال‌سازی کالبدشکافی این پروتکل‌ها، جدا شده با کاما. غیرفعال کردن تمامی پروتکل‌های دیگر.

-t (a|ad|adoy|d|dd|e|r|rc|u|ud|udoy)[.[N]]|.[N]

تنظیم قالب برچسب زمان (timestamp) بسته که در ستون پیش‌فرض زمان نمایش داده می‌شود. قالب می‌تواند یکی از موارد زیر باشد:

a مطلق (absolute): زمان مطلق، به عنوان زمان محلی در منطقه زمانی شما، زمان واقعی ضبط بسته است بدون اینکه تاریخی نمایش داده شود

ad مطلق همراه با تاریخ (absolute with date): تاریخ مطلق، نمایش‌یافته به صورت YYYY-MM-DD، و زمان به عنوان زمان محلی در منطقه زمانی شما، زمان و تاریخ واقعی ضبط بسته است

adoy مطلق همراه با تاریخ با استفاده از روز سال (absolute with date using day of year): تاریخ مطلق، نمایش‌یافته به صورت YYYY/DOY، و زمان به عنوان زمان محلی در منطقه زمانی شما، زمان و تاریخ واقعی ضبط بسته است

d دلتا (delta): زمان دلتا، زمان سپری‌شده پس از ضبط بستهٔ قبلی است

dd دلتای نمایشی (delta_displayed): زمان delta_displayed، زمان سپری‌شده پس از ضبط بستهٔ نمایش‌یافتهٔ قبلی است.sp e epoch: زمان بر حسب ثانیه از مبدأ زمانی مبنا یا epoch (Jan 1, 1970 00:00:00)

r relative: زمان نسبی، زمان سپری‌شده میان نخستین بسته و بستهٔ جاری است

rc relative to capture start: زمان نسبی نسبت به آغاز ضبط، زمان سپری‌شده میان شروع ضبط و بستهٔ جاری است

u UTC: زمان مطلق بر پایهٔ UTC با پسوند "Z"، زمان واقعی ضبط بسته بدون نمایش تاریخ است

ud UTC with date: تاریخ مطلق، نمایش‌یافته به‌صورت YYYY-MM-DD، و زمان به‌صورت UTC با پسوند "Z"، زمان و تاریخ واقعی ضبط بسته است

udoy UTC with date using day of year: تاریخ مطلق، نمایش‌یافته به‌صورت YYYY/DOY، و زمان به‌صورت UTC با پسوند "Z"، زمان و تاریخ واقعی ضبط بسته است

.[N] تنظیم دقت: N تعداد ارقام اعشار (۰ تا ۹) است. در صورت استفاده از "." بدون N، دقت به‌طور خودکار از فایل ردگیری (trace) تعیین می‌شود.

قالب پیش‌فرض، به‌صورت نسبی با دقتی بر پایهٔ قالب ضبط است.

-u <s|hms>

مشخص می‌کند که قالب‌های برچسب زمانی بسته در -t که زمان‌های نسبی هستند (یعنی relative، delta و delta_displayed) چگونه نمایش داده شوند. گزینه‌های معتبر عبارتند از:

s برای ثانیه

hms برای ساعت، دقیقه و ثانیه

قالب پیش‌فرض، ثانیه است.

--log-level <level>

تنظیم سطح فعال ثبت رخداد. سطوح پشتیبانی‌شده به ترتیب از کمترین به بیشترین عبارتند از: "noisy" ،"debug" ،"info" ،"message" ،"warning" ،"critical" و "error". پیام‌ها در هر سطح و سطوح بالاتر از آن چاپ خواهند شد؛ برای نمونه "warning" پیام‌های "warning" ،"critical" و "error" را چاپ می‌کند و "noisy" همهٔ پیام‌ها را چاپ می‌نماید. سطوح به بزرگی و کوچکی حروف حساس نیستند.

--log-fatal <level>

اگر پیامی در سطح مشخص‌شده یا بالاتر ثبت شود، برنامه متوقف (abort) می‌شود. برای نمونه، "warning" با بروز هر یک از پیام‌های "warning" ،"critical" یا "error" برنامه را متوقف می‌کند.

--log-fatal-count <count>

تعداد پیام‌های ثبت رخداد مهلک (fatal) که می‌توانند پیش از متوقف شدن برنامه مجاز شمرده شوند.

--log-domains <list>

تنها پیام‌های دامنه‌های ثبت رخداد مشخص‌شده را چاپ می‌کند، مانند "GUI,Epan,sshdump". فهرست دامنه‌ها باید با کاما جدا شود. می‌تواند با قرار دادن "!" به عنوان نویسهٔ نخست نفی شود (معکوس کردن تطابق).

--log-debug <list>

دامنه‌های مشخص‌شده را مجبور می‌کند تا در سطح "debug" ثبت رخداد کنند. فهرست دامنه‌ها باید با کاما جدا شود. می‌تواند با قرار دادن "!" به عنوان نویسهٔ نخست نفی شود (معکوس کردن تطابق).

--log-noisy <list>

دامنه‌های مشخص‌شده را مجبور می‌کند تا در سطح "noisy" ثبت رخداد کنند. فهرست دامنه‌ها باید با کاما جدا شود. می‌تواند با قرار دادن "!" به عنوان نویسهٔ نخست نفی شود (معکوس کردن تطابق).

--log-fatal-domains <list>

در صورت ثبت هرگونه پیام برای دامنه‌های ثبت رخداد مشخص‌شده، برنامه را متوقف می‌کند. فهرست دامنه‌ها باید با کاما جدا شود.

--log-file <path>

نوشتن پیام‌های ثبت رخداد و خروجی stderr در فایل مشخص‌شده.

این فایل‌ها شامل تنظیمات گوناگون پیکربندی Wireshark هستند.

تنظیمات ترجیحی (Preferences)

فایل‌های preferences شامل تنظیمات ترجیحی سراسری (در سطح سیستم) و شخصی هستند. اگر فایل تنظیمات ترجیحی در سطح سیستم وجود داشته باشد، ابتدا خوانده شده و تنظیمات پیش‌فرض را بازنویسی می‌کند. اگر فایل تنظیمات ترجیحی شخصی وجود داشته باشد، در مرحله بعد خوانده می‌شود و هر مقدار قبلی را بازنویسی می‌کند. نکته: اگر پرچم خط فرمان -o استفاده شود (احتمالاً بیش از یک بار)، این پرچم به نوبه خود مقادیر حاصل از فایل‌های تنظیمات ترجیحی را بازنویسی خواهد کرد.

تنظیمات ترجیحی به صورت prefname:value هستند، یک مورد در هر خط، که در آن prefname نام تنظیم ترجیحی و value مقداری است که باید روی آن تنظیم شود؛ وجود فاصله (white space) بین : و value مجاز است. یک تنظیم ترجیحی را می‌توان با دندانه‌دار کردن خطوط ادامه با فاصله، در خطوط بعدی ادامه داد. نویسهٔ # آغازگر یک توضیح (کامنت) است که تا پایان خط ادامه می‌یابد:

# Vertical scrollbars should be on right side?
# TRUE or FALSE (case-insensitive).
gui.scrollbar_on_right: TRUE

فایل تنظیمات ترجیحی سراسری در دایرکتوری wireshark ذیل زیردایرکتوری share در دایرکتوری اصلی محل نصب جستجو می‌شود. در macOS، این مسیر معمولاً /Application/Wireshark.app/Contents/Resources/share است؛ در سایر سیستم‌های سازگار با UNIX مانند Linux، \*BSD، Solaris و AIX، این مسیر معمولاً برای بسته‌های نصب‌شدهٔ سیستمی /usr/share/wireshark/preferences و برای بسته‌های نصب‌شدهٔ محلی /usr/local/share/wireshark/preferences است؛ در Windows، این مسیر معمولاً C:\Program Files\Wireshark\preferences خواهد بود.

در سیستم‌های سازگار با UNIX، فایل تنظیمات ترجیحی شخصی در $XDG_CONFIG_HOME/wireshark/preferences جستجو می‌شود (یا اگر $XDG_CONFIG_HOME/wireshark وجود نداشته باشد در حالی که $HOME/.wireshark وجود دارد، در $HOME/.wireshark/preferences)؛ این مسیر معمولاً $HOME/.config/wireshark/preferences است. در Windows، فایل تنظیمات ترجیحی شخصی در %APPDATA%\Wireshark\preferences جستجو می‌شود (یا اگر %APPDATA% تعریف نشده باشد، در %USERPROFILE%\Application Data\Wireshark\preferences).

نکته: هر زمان که تنظیمات ترجیحی با استفاده از دکمهٔ Save در کادر محاوره‌ای Edit:Preferences ذخیره شوند، فایل تنظیمات ترجیحی شخصی شما با تنظیمات جدید بازنویسی خواهد شد، و هرگونه توضیح و تنظیمات ناشناخته/منسوخ موجود در فایل از بین خواهد رفت.

موارد اخیر (Recent)

فایل recent شامل تنظیمات شخصی (عمدتاً مربوط به واسط گرافیکی) مانند اندازهٔ فعلی پنجرهٔ Wireshark است. این فایل هنگام خروج از برنامه ذخیره شده و در شروع برنامه به‌طور خودکار خوانده می‌شود. نکته: از پرچم خط فرمان -o می‌توان برای بازنویسی تنظیمات این فایل استفاده کرد.

تنظیمات موجود در این فایل قالب مشابهی با فایل‌های preferences دارند، و از همان دایرکتوری فایل تنظیمات ترجیحی شخصی استفاده می‌شود.

نکته: هر زمان که Wireshark بسته شود، فایل recent شما با تنظیمات جدید بازنویسی خواهد شد، و هرگونه توضیح و تنظیمات ناشناخته/منسوخ موجود در فایل از بین خواهد رفت.

پروتکل‌های غیرفعال (فعال) شده (Disabled (Enabled) Protocols)

فایل‌های disabled_protos شامل فهرست‌های سراسری و شخصی از پروتکل‌هایی هستند که غیرفعال شده‌اند، به طوری که تجزیه‌کننده‌های (dissectors) آن‌ها هرگز فراخوانی نمی‌شوند. این فایل‌ها شامل نام‌های پروتکل، در هر خط یکی، هستند؛ به طوری که نام پروتکل همان نامی است که در یک فیلتر نمایش (display filter) برای آن پروتکل استفاده می‌شود:

http
tcp     # a comment

اگر پروتکلی در فایل سراسری disabled_protos فهرست شده باشد، توسط کاربر قابل فعال‌سازی نیست. بنابراین در کادر محاوره‌ای Analyze::Enabled Protocols نمایش داده نمی‌شود.

فایل سراسری disabled_protos از همان دایرکتوری فایل تنظیمات ترجیحی سراسری استفاده می‌کند.

فایل شخصی disabled_protos از همان دایرکتوری فایل تنظیمات ترجیحی شخصی استفاده می‌کند.

فایل‌های disabled_protos فقط پروتکل‌هایی را فهرست می‌کنند که به‌طور پیش‌فرض فعال هستند اما غیرفعال شده‌اند؛ پروتکل‌هایی که به‌طور پیش‌فرض غیرفعال هستند (مانند برخی postdissectorها) فهرست نمی‌شوند. فایل‌های مشابهی به نام enabled_protos برای پروتکل‌هایی که به‌طور پیش‌فرض غیرفعال بوده اما فعال شده‌اند وجود دارد.

نکته: هر زمان که فهرست پروتکل‌های غیرفعال با استفاده از دکمهٔ Save در کادر محاوره‌ای Analyze:Enabled Protocols ذخیره شود، فایل شخصی پروتکل‌های غیرفعال شما با تنظیمات جدید بازنویسی خواهد شد و هرگونه توضیح موجود در فایل از بین خواهد رفت.

تجزیه‌کننده‌های اکتشافی (Heuristic Dissectors)

فایل‌های heuristic_protos شامل فهرست‌های سراسری و شخصی از تجزیه‌کننده‌های اکتشافی (heuristic dissectors) هستند و فعال یا غیرفعال بودن آن‌ها را مشخص می‌کنند. این فایل‌ها شامل نام‌های کوتاه و یکتای تجزیه‌کننده‌های اکتشافی هستند، در هر خط یکی، که پس از آن یک کاما و مقدار 0 برای غیرفعال و 1 برای فعال قرار می‌گیرد:

quic,1
rtcp_stun,1
rtcp_udp,1
rtp_stun,0
rtp_udp,0
tls_tcp,1

فایل سراسری heuristic_protos از همان دایرکتوری فایل تنظیمات ترجیحی سراسری استفاده می‌کند.

فایل شخصی heuristic_protos از همان دایرکتوری فایل تنظیمات ترجیحی شخصی استفاده می‌کند.

تحلیل نام (hosts)

مدخل‌های موجود در فایل‌های hosts در دایرکتوری تنظیمات ترجیحی سراسری و شخصی، پیش از هرگونه تلاش دیگری برای تحلیل نشانی‌های IPv4 و IPv6، برای تحلیل آن‌ها استفاده می‌شوند. این فایل نحو (syntax) استاندارد فایل hosts را دارد؛ هر خط شامل یک نشانی IP و نام است که با فاصله از هم جدا شده‌اند. فایل شخصی hosts، در صورت وجود، فایل موجود در دایرکتوری سراسری را بازنویسی می‌کند.

تحلیل نام فیلتر ضبط توسط libpcap در سیستم‌های سازگار با UNIX، مانند Linux، macOS، \*BSD، Solaris و AIX، و توسط Npcap در Windows انجام می‌شود. به همین دلیل، برای تحلیل نام فیلتر ضبط به فایل شخصی hosts در Wireshark رجوع نخواهد شد.

تحلیل نام (subnets)

اگر یک نشانی IPv4 نتواند از طریق تحلیل نام ترجمه شود (هیچ تطابق دقیقی یافت نشود)، آن‌گاه یک تطابق جزئی از طریق فایل subnets امتحان می‌شود. در صورت وجود، هم فایل سراسری subnets و هم فایل شخصی subnets استفاده می‌شوند.

هر خط از این فایل شامل یک نشانی IPv4، طول ماسک زیرشبکه که فقط با یک / جدا شده است، و یک نام که با فاصله جدا شده است می‌باشد. اگرچه نشانی باید یک نشانی کامل IPv4 باشد، هر مقداری فراتر از طول ماسک پس از آن نادیده گرفته می‌شود.

یک مثال عبارت است از:

# Comments must be prepended by the # sign! 192.168.0.0/24 ws_test_network

یک نام با تطابق جزئی به صورت "subnet-name.remaining-address" چاپ خواهد شد. برای مثال، "192.168.0.1" ذیل زیرشبکهٔ بالا به صورت "ws_test_network.1" چاپ می‌شود؛ اگر طول ماسک بالا به جای 24 برابر 16 می‌بود، نشانی چاپ‌شده "ws_test_network.0.1" می‌بود. تفکیک نام (ethers)

فایل‌های ethers برای متناظر ساختن آدرس‌های سخت‌افزاری ۶-بایتی EUI-48 و ۸-بایتی EUI-64 با نام‌ها بررسی می‌شوند. ابتدا فایل ethers شخصی بررسی شده و اگر آدرسی در آنجا یافت نشود، سپس فایل ethers سراسری بررسی می‌گردد.

این فایل قالبی مشابه با آنچه توسط ethers(5) در برخی سیستم‌های شبه‌یونیکس تعریف شده است دارد. هر خط شامل یک آدرس سخت‌افزاری و نام است که با نویسه‌های فاصله‌ساز (تب‌ها یا فاصله‌ها) از هم جدا شده‌اند. ارقام هگزادسیمال آدرس سخت‌افزاری با دونقطه (:)، خط تیره (-) یا نقطه (.) از یکدیگر جدا می‌شوند. در یک آدرس باید همواره از نویسه جداکننده یکسانی استفاده شود. یک # نشان‌دهنده کامنتی است که تا انتهای خط ادامه می‌یابد. هر دو نوع آدرس‌های ۶-بایتی MAC و ۸-بایتی EUI-64 پشتیبانی می‌شوند. چهار خط زیر خطوط معتبری از یک فایل ethers هستند:

ff:ff:ff:ff:ff:ff          Broadcast
c0-00-ff-ff-ff-ff          TR_broadcast
00.00.00.00.00.00          Zero_broadcast
00:00:00:00:00:00:00:00    EUI64_zero_broadcast

توجه داشته باشید که این قالب، تنوع بیشتری از فرمت‌ها را نسبت به فایل تعریف‌شده توسط ethers(5) در اکثر سیستم‌های UN*X می‌پذیرد.

فایل ethers سراسری در دایرکتوری /etc در سیستم‌های سازگار با یونیکس، مانند Linux، macOS، \*BSD، Solaris و AIX، و در دایرکتوری اصلی نصب (به عنوان مثال، C:\Program Files\Wireshark) در سیستم‌های Windows جستجو می‌شود.

فایل ethers شخصی در همان دایرکتوری فایل ترجیحات (preferences) شخصی جستجو می‌شود.

تفکیک نام فیلتر ضبط توسط libpcap در سیستم‌های سازگار با یونیکس و Npcap در Windows انجام می‌شود. به همین دلیل، برای تفکیک نام فیلتر ضبط، به فایل ethers شخصی Wireshark رجوع نخواهد شد.

تفکیک نام (manuf)

فایل manuf برای تطبیق بخش ۳-بایتی سازنده در یک آدرس سخت‌افزاری ۶-بایتی با نام تولیدکننده به کار می‌رود؛ این فایل همچنین می‌تواند شامل آدرس‌های شناخته‌شده MAC و محدوده‌های آدرس تعیین‌شده با یک netmask باشد. قالب این فایل مشابه فایل‌های ethers است، با این تفاوت که ورودی‌هایی مانند:

00:00:0C      Cisco     Cisco Systems, Inc

را می‌توان با OUI سه‌بایتی و هر دو نام اختصاری و کامل برای سازنده تعیین کرد، و ورودی‌هایی مانند:

00-00-0C-07-AC/40     All-HSRP-routers

را می‌توان با یک آدرس MAC و ماسکی که نشان می‌دهد چه تعداد بیت از آدرس باید تطابق داشته باشد، مشخص نمود. برای مثال، ورودی فوق دارای ۴۰ بیت پرارزش (یا ۵ بایت) است و با آدرس‌های 00-00-0C-07-AC-00 تا 00-00-0C-07-AC-FF تطبیق می‌یابد. ماسک نیازی نیست که مضربی از ۸ باشد.

فایل manuf سراسری در همان دایرکتوری فایل ترجیحات سراسری، و فایل manuf شخصی در همان دایرکتوری فایل ترجیحات شخصی جستجو می‌شود.

در نسخه‌های پیشین Wireshark، اطلاعات رسمی از مرجع ثبت IEEE در این قالب به عنوان فایل manuf سراسری توزیع می‌شد. این اطلاعات اکنون برای افزایش سرعت راه‌اندازی برنامه درون آن کامپایل شده است، اما اطلاعات داخلی را می‌توان با استفاده از tshark -G manuf در این قالب استخراج کرد.

علاوه بر فایل manuf، فایل دیگری با همین قالب به نام wka نیز در دایرکتوری سراسری جستجو می‌شود. این فایل همراه با Wireshark توزیع می‌شود و شامل داده‌هایی درباره آدرس‌های شناخته‌شده MAC و محدوده‌های آدرسی است که از منابع گوناگون غیر IEEE اما معتبر گردآوری شده‌اند.

تفکیک نام (services)

فایل services برای ترجمه شماره پورت‌ها به نام‌ها به کار می‌رود. در صورت وجود، هم فایل services سراسری و هم فایل‌های services شخصی استفاده می‌شوند.

این فایل ساختار استاندارد فایل services را دارد؛ هر خط شامل یک نام (سرویس) و یک شناسه انتقال است که با نویسه‌های فاصله‌ساز از هم جدا شده‌اند. شناسه انتقال شامل یک شماره پورت و یک نام پروتکل انتقال (معمولاً tcp، udp یا sctp) است که با یک / از یکدیگر جدا شده‌اند.

یک مثال به این صورت است:

mydns 5045/udp # My own Domain Name Server mydns 5045/tcp # My own Domain Name Server

در نسخه‌های پیشین Wireshark، اطلاعات رسمی از مرجع ثبت IANA در این قالب به عنوان فایل services سراسری توزیع می‌شد. این اطلاعات اکنون برای افزایش سرعت راه‌اندازی برنامه درون آن کامپایل شده است، اما اطلاعات داخلی را می‌توان با tshark -G services در این قالب استخراج کرد.

تفکیک نام (ipxnets)

فایل‌های ipxnets برای مرتبط ساختن شماره شبکه‌های ۴-بایتی IPX با نام‌ها استفاده می‌شوند. ابتدا فایل ipxnets سراسری بررسی می‌شود و اگر آن آدرس در آنجا یافت نشد، سپس فایل شخصی بررسی می‌گردد.

قالب آن همانند فایل ethers است، با این تفاوت که هر آدرس به جای شش بایت، چهار بایت است. علاوه بر این، آدرس می‌تواند به صورت یک عدد هگزادسیمال واحد نمایش داده شود، همان‌طور که در دنیای IPX رایج‌تر است، تا به صورت چهار اکتت هگزادسیمال. برای مثال، این چهار خط، خطوط معتبری از یک فایل ipxnets هستند:

C0.A8.2C.00              HR
c0-a8-1c-00              CEO
00:00:BE:EF              IT_Server1
110f                     FileServer3

فایل ipxnets سراسری در دایرکتوری /etc در سیستم‌های سازگار با یونیکس، مانند Linux، macOS، \*BSD، Solaris و AIX، و در دایرکتوری اصلی نصب (به عنوان مثال، C:\Program Files\Wireshark) در سیستم‌های Windows جستجو می‌شود.

فایل ipxnets شخصی در همان دایرکتوری فایل ترجیحات شخصی جستجو می‌شود.

تفکیک نام (ss7pcs)

فایل ss7pcs برای ترجمه point codeهای SS7 به نام‌ها به کار می‌رود. این فایل از دایرکتوری پیکربندی شخصی خوانده می‌شود.

هر خط در این فایل از یک شناسه شبکه تشکیل شده است که به دنبال آن یک خط تیره، سپس یک point code در مبنای ده‌دهی و یک نام گره قرار دارد که با نویسه‌های فاصله‌ساز از هم جدا شده‌اند. یک مثال به صورت زیر است:

2-1234 MyPointCode1

تفکیک نام (vlans)

فایل vlans برای ترجمه شناسه‌های برچسب VLAN (یا VLAN tag ID) به نام‌ها استفاده می‌شود. این فایل از دایرکتوری پیکربندی شخصی خوانده می‌شود.

هر خط در این فایل شامل یک شناسه برچسب VLAN است که با نویسه‌های فاصله‌ساز از یک نام جدا شده است. یک مثال به صورت زیر است:

123    Server-Lan
2049   HR-Client-LAN
فیلترهای ضبط

فایل‌های cfilters حاوی فیلترهای ضبط سراسری سیستم و شخصی هستند. هر خط شامل یک فیلتر است که با رشته نمایش‌داده‌شده در جعبه گفتگو درون علامت نقل‌قول آغاز می‌شود و به‌دنبال آن خود رشته فیلتر می‌آید:

"HTTP" port 80
"DCERPC" port 135

فایل سراسری cfilters از همان دایرکتوری فایل ترجیحات سراسری استفاده می‌کند.

فایل شخصی cfilters از همان دایرکتوری فایل ترجیحات شخصی استفاده می‌کند. این فایل از طریق گفتگوی Capture:Capture Filters نوشته می‌شود.

اگر فایل سراسری cfilters وجود داشته باشد، تنها در صورتی استفاده می‌شود که فایل شخصی cfilters وجود نداشته باشد؛ فیلترهای ضبط سراسری و شخصی ادغام نمی‌شوند.

فیلترهای نمایش

فایل‌های dfilters حاوی فیلترهای نمایش سراسری سیستم و شخصی هستند. هر خط شامل یک فیلتر است که با رشته نمایش‌داده‌شده در جعبه گفتگو درون علامت نقل‌قول آغاز می‌شود و به‌دنبال آن خود رشته فیلتر می‌آید:

"HTTP" http
"DCERPC" dcerpc

فایل سراسری dfilters از همان دایرکتوری فایل ترجیحات سراسری استفاده می‌کند.

فایل شخصی dfilters از همان دایرکتوری فایل ترجیحات شخصی استفاده می‌کند. این فایل از طریق گفتگوی Analyze:Display Filters نوشته می‌شود.

اگر فایل سراسری dfilters وجود داشته باشد، تنها در صورتی استفاده می‌شود که فایل شخصی dfilters وجود نداشته باشد؛ فیلترهای نمایش سراسری و شخصی ادغام نمی‌شوند.

ماکروهای فیلتر نمایش

فایل‌های dmacros حاوی ماکروهای فیلتر نمایش سراسری سیستم و شخصی هستند. هر خط شامل یک فیلتر است که با رشته نمایش‌داده‌شده در جعبه گفتگو درون علامت نقل‌قول آغاز می‌شود و به‌دنبال آن خود عبارت ماکرو می‌آید:

"private_ipv6" ipv6 && $1 == fc00::/7
"private_ethernet" $1[0] & 0x0F == 2
"private_ipv4" $1 == 192.168.0.0/16 or $1 == 172.16.0.0/12 or $1 == 10.0.0.0/8

فایل سراسری dmacros از همان دایرکتوری فایل ترجیحات سراسری استفاده می‌کند.

فایل شخصی dmacros از همان دایرکتوری فایل ترجیحات شخصی استفاده می‌کند. این فایل از طریق گفتگوی Analyze:Display Filter Macros نوشته می‌شود.

اگر فایل سراسری dmacros وجود داشته باشد، تنها در صورتی استفاده می‌شود که فایل شخصی dmacros وجود نداشته باشد؛ فیلترهای نمایش سراسری و شخصی ادغام نمی‌شوند.

پیش از Wireshark 4.4، فایل dfilter_macros با نحوی تا حدی متفاوت استفاده می‌شد. در صورت پیدا نشدن فایل dmacros هنگام راه‌اندازی، این فایل جستجو شده و برای مهاجرت به قالب جدید استفاده می‌شود.

فیلترهای رنگی (قواعد رنگ‌آمیزی)

فایل‌های colorfilters حاوی فیلترهای رنگی سراسری سیستم و شخصی هستند. هر خط شامل یک فیلتر است که با رشته نمایش‌داده‌شده در جعبه گفتگو آغاز می‌شود و به‌دنبال آن فیلتر نمایش مربوطه می‌آید. سپس رنگ‌های پس‌زمینه و پیش‌زمینه ضمیمه می‌شوند:

# a comment
@tcp@tcp@[59345,58980,65534][0,0,0]
@udp@udp@[28834,57427,65533][0,0,0]

فایل سراسری colorfilters از همان دایرکتوری فایل ترجیحات سراسری استفاده می‌کند.

فایل شخصی colorfilters از همان دایرکتوری فایل ترجیحات شخصی استفاده می‌کند. این فایل از طریق گفتگوی View:Coloring Rules نوشته می‌شود.

اگر فایل سراسری colorfilters وجود داشته باشد، تنها در صورتی استفاده می‌شود که فایل شخصی colorfilters وجود نداشته باشد؛ فیلترهای رنگی سراسری و شخصی ادغام نمی‌شوند.

افزونه‌ها

Wireshark افزونه‌ها را هم در یک پوشه افزونه شخصی و هم در یک پوشه افزونه سراسری جستجو می‌کند.

در سامانه‌های سازگار با UNIX، مانند Linux، macOS، \*BSD، Solaris و AIX، دایرکتوری سراسری افزونه lib/wireshark/plugins/ (در برخی سامانه‌ها lib64 به جای lib جایگزین می‌شود) زیر دایرکتوری نصب اصلی است (برای مثال، /usr/local/lib/wireshark/plugins/). دایرکتوری شخصی افزونه $HOME/.local/lib/wireshark/plugins است.

در macOS، اگر Wireshark به عنوان یک بسته برنامه‌ای نصب شده باشد، پوشه سراسری افزونه در عوض %APPDIR%/Contents/PlugIns/wireshark خواهد بود.

در Windows، پوشه سراسری افزونه plugins/ زیر دایرکتوری نصب اصلی است (برای مثال، C:\Program Files\Wireshark\plugins\). پوشه شخصی افزونه %APPDATA%\Wireshark\plugins است (یا اگر %APPDATA% تعریف نشده باشد، %USERPROFILE%\Application Data\Wireshark\plugins).

افزونه‌های Lua در پوشه‌های افزونه ذخیره می‌شوند؛ افزونه‌های کامپایل‌شده در زیرپوشه‌های پوشه‌های افزونه ذخیره می‌شوند، به گونه‌ای که نام زیرپوشه شماره نسخه فرعی Wireshark (X.Y) است. یک سطح سلسله‌مراتبی دیگر برای هر نوع افزونه Wireshark وجود دارد (libwireshark، libwiretap و codecs). برای مثال، مکان یک افزونه libwireshark به نام foo.so (foo.dll در Windows) برابر با PLUGINDIR/X.Y/epan خواهد بود (libwireshark پیش‌تر libepan نامیده می‌شد؛ نام دیگر پوشه‌ها codecs و wiretap است).


نکته

در سامانه‌های سازگار با UNIX، افزونه‌های Lua (اما نه افزونه‌های باینری) ممکن است
همچنین در $XDG_CONFIG_HOME/wireshark/plugins قرار گیرند، (یا اگر $XDG_CONFIG_HOME/wireshark وجود نداشته باشد در حالی که $HOME/.wireshark وجود دارد، در $HOME/.wireshark/plugins.)

توجه داشته باشید که یک ماژول افزونه dissector ممکن است از بیش از یک پروتکل پشتیبانی کند؛ لزوماً تناظر یک‌به‌یک میان ماژول‌های افزونه dissector و پروتکل‌ها وجود ندارد. پروتکل‌های پشتیبانی‌شده توسط یک ماژول افزونه dissector به همان روش پروتکل‌های توکار Wireshark فعال و غیرفعال می‌شوند.

WIRESHARK_CONFIG_DIR

این متغیر محیطی مکان فایل‌های پیکربندی شخصی را جایگزین می‌کند. در سیستم‌های سازگار با UNIX، مانند Linux، macOS، \*BSD، Solaris و AIX، مقدار پیش‌فرض آن $XDG_CONFIG_HOME/wireshark است (یا، اگر این دایرکتوری وجود نداشته باشد اما $HOME/.wireshark موجود باشد، $HOME/.wireshark)؛ این مسیر معمولاً $HOME/.config/wireshark است. در Windows، مقدار پیش‌فرض آن %APPDATA%\Wireshark است (یا، در صورت تعریف نشدن %APPDATA%، مسیر %USERPROFILE%\Application Data\Wireshark). از Wireshark 3.0 به بعد در دسترس است.

WIRESHARK_DEBUG_WMEM_OVERRIDE

تنظیم این متغیر محیطی چارچوب wmem را وادار می‌کند بدون توجه به اینکه کدام پس‌بخش (backend) به‌طور معمول توسط کد تعیین شده است، از backend تخصیص‌دهندهٔ مشخص‌شده برای all تخصیص‌ها استفاده کند. این ویژگی عمدتاً هنگام آزمایش یا اشکال‌زدایی برای توسعه‌دهندگان مفید است. برای جزئیات به README.wmem در بستهٔ منبع مراجعه کنید.

WIRESHARK_RUN_FROM_BUILD_DIRECTORY

این متغیر محیطی باعث می‌شود پلاگین‌ها و سایر فایل‌های داده به‌جای مکان‌های استاندارد، از دایرکتوری ساخت (جایی که برنامه در آن کامپایل شده است) بارگیری شوند. زمانی که برنامهٔ مورد نظر با مجوزهای root (یا setuid) در سیستم‌های سازگار با UNIX مانند Linux، macOS، \*BSD، Solaris و AIX در حال اجرا باشد، هیچ اثری ندارد.

WIRESHARK_DATA_DIR

این متغیر محیطی باعث می‌شود فایل‌های مختلف داده از دایرکتوری دیگری غیر از مکان‌های استاندارد بارگیری شوند. زمانی که برنامهٔ مورد نظر با مجوزهای root (یا setuid) در سیستم‌های سازگار با UNIX اجرا می‌شود، هیچ اثری ندارد.

WIRESHARK_EXTCAP_DIR

این متغیر محیطی باعث می‌شود برنامه‌ها و اسکریپت‌های مختلف extcap از دایرکتوری دیگری غیر از مکان‌های استاندارد اجرا شوند. زمانی که برنامهٔ مورد نظر با مجوزهای root (یا setuid) در سیستم‌های سازگار با UNIX اجرا می‌شود، هیچ اثری ندارد.

WIRESHARK_PLUGIN_DIR

این متغیر محیطی باعث می‌شود پلاگین‌های مختلف از دایرکتوری دیگری غیر از مکان‌های استاندارد بارگیری شوند. زمانی که برنامهٔ مورد نظر با مجوزهای root (یا setuid) در سیستم‌های سازگار با UNIX اجرا می‌شود، هیچ اثری ندارد.

WIRESHARK_ABORT_ON_DISSECTOR_BUG

اگر این متغیر محیطی تنظیم شود، Stratoshark در صورت مواجهه با باگ در dissector، تابع abort(3) را فراخوانی خواهد کرد. فراخوانی abort(3) باعث خروج غیرعادی برنامه می‌شود؛ اگر Stratoshark را درون یک اشکال‌زدا (debugger) اجرا می‌کنید، باید در دیباگر متوقف شده و امکان بررسی فرایند را فراهم سازد، و اگر آن را درون دیباگر اجرا نمی‌کنید، در برخی سیستم‌عامل‌ها (به فرض پیکربندی صحیح محیط شما)، یک فایل core dump تولید خواهد کرد. این متغیر می‌تواند برای توسعه‌دهندگانی که سعی در رفع اشکال یک پروتکل dissector دارند مفید باشد.

WIRESHARK_ABORT_ON_TOO_MANY_ITEMS

اگر این متغیر محیطی تنظیم شود، چنانچه یک dissector تلاش کند آیتم‌های بیش از حدی را به یک درخت بیفزاید (عموماً این نشانه‌ای از خارج نشدن به موقع dissector از یک حلقه است)، Stratoshark تابع abort(3) را فراخوانی می‌کند. فراخوانی abort(3) باعث خروج غیرعادی برنامه خواهد شد؛ اگر Stratoshark را درون یک اشکال‌زدا اجرا می‌کنید، باید در اشکال‌زدا متوقف شود و اجازهٔ بررسی فرایند را بدهد، و اگر آن را درون دیباگر اجرا نمی‌کنید، در برخی سیستم‌عامل‌ها (به فرض اینکه محیط شما به درستی پیکربندی شده باشد)، یک فایل core dump ایجاد خواهد کرد. این متغیر می‌تواند برای توسعه‌دهندگانی که سعی در رفع اشکال یک پروتکل dissector دارند مفید باشد.

WIRESHARK_QUIT_AFTER_CAPTURE

باعث خروج Stratoshark پس از پایان نشست ضبط بسته (capture) می‌شود. این متغیر به‌طور خودکار ضبط را آغاز نمی‌کند؛ برای انجام این کار همچنان باید از -k استفاده کنید. همچنین باید یک شرط توقف خودکار مشخص نمایید، مانند -c یا -a duration:.... این بدان معناست که پس از توقف ضبط قادر به دیدن نتایج آن نخواهید بود؛ این قابلیت در درجهٔ اول برای آزمایش کاربرد دارد.

WIRESHARK_LOG_LEVEL

این متغیر محیطی میزان پرگویی (verbosity) پیام‌های تشخیصی به کنسول را کنترل می‌کند. سطوح، از کمترین پرگویی تا بیشترین پرگویی، می‌توانند critical، warning، message، info، debug یا noisy باشند. سطوح بالاتر از سطح جاری نیز فعال هستند. سطوح critical و error همواره فعال هستند.

WIRESHARK_LOG_FATAL

سطح گزارش مهلک (fatal) را تعیین می‌کند. سطوح گزارش مهلک باعث سقط و توقف غیرعادی (abort) برنامه می‌شوند. این سطح می‌تواند روی Error، critical یا warning تنظیم شود. مقدار Error همیشه مهلک بوده و مقدار پیش‌فرض است.

WIRESHARK_LOG_DOMAINS

این متغیر محیطی مشخص می‌کند کدام دامنه‌های ثبت گزارش فعال باشند. این فیلتر به صورت فهرستی از موارد جداشده با کاما و بدون حساسیت به حروف بزرگ و کوچک تعیین می‌شود. در صورت تنظیم، تنها دامنه‌های گنجانده‌شده فعال خواهند شد. دامنهٔ پیش‌فرض همواره فعال در نظر گرفته می‌شود. فهرست‌های فیلتر دامنه می‌توانند با '!' شروع شوند تا مفهوم تطابق معکوس شود.

WIRESHARK_LOG_DEBUG

فهرستی از دامنه‌ها با سطح گزارش debug. این متغیر سطح دامنه‌های گزارش ارائه‌شده را تنظیم می‌کند و بر فیلتر دامنه‌های فعال تقدم دارد. اگر پیش از آن '!' بیاید، در عوض سطح debug را غیرفعال می‌کند.

WIRESHARK_LOG_NOISY

همانند بالا، اما به‌جای آن برای سطح گزارش noisy.

برنامهٔ Stratoshark بدون مشارکت‌های سخاوتمندانهٔ صدها توسعه‌دهنده، نمی‌توانست به نرم‌افزار قدرتمند و پر از قابلیتی که امروز هست تبدیل شود.

فهرست کامل نویسندگان را می‌توان در فایل AUTHORS در مخزن کد منبع Wireshark یافت.

wireshark-filter(4), strato(1), editcap(1), dumpcap(1), mergecap(1)

این صفحهٔ راهنما مربوط به Stratoshark نسخهٔ 0.10.3 است. جدیدترین نسخهٔ Stratoshark را می‌توان در نشانی زیر یافت: https://stratoshark.org.

نسخه‌های HTML صفحه‌های راهنمای پروژهٔ Wireshark در نشانی زیر در دسترس هستند: https://www.wireshark.org/docs/man-pages.

2026-09-03