MDIG(1) BIND 9 MDIG(1)

mdig - ابزار پیشرفته پرس‌وجوی همزمان و چندگانه DNS

mdig <{@server>} [-f filename] [-h] [-v] [ [-4] | [-6] ] [-m] [-b address] [-p port#] [-c class] [-t type] [-i] [-x addr] [plusopt...]

mdig {-h}

mdig [@server] {global-opt...} { {local-opt...} {query} ...}

دستور mdig نسخه‌ای از dig <#std-iscman-dig> برای ارسال چندگانه/خط‌لوله‌ای (pipelined) پرسمان‌ها است: به جای این‌که پس از ارسال هر پرس‌وجو منتظر پاسخ بماند، در ابتدا تمام پرس‌وجوها را ارسال می‌کند. پاسخ‌ها به ترتیبی که دریافت می‌شوند نمایش داده می‌شوند، نه بر اساس ترتیبی که پرسمان‌های مربوطه ارسال شده‌اند.

گزینه‌های mdig زیرمجموعه‌ای از گزینه‌های dig <#std-iscman-dig> هستند و به «گزینه‌های در هر مکان» (که می‌توانند در هر جای خط فرمان ظاهر شوند)، «گزینه‌های سراسری» (که باید قبل از نام پرسمان قرار گیرند وگرنه با نمایش یک هشدار نادیده گرفته می‌شوند) و «گزینه‌های محلی» (که برای پرس‌وجوی بعدی در خط فرمان اعمال می‌شوند) تقسیم می‌گردند.

گزینه @server یک گزینه سراسری الزامی است. این گزینه نام یا آدرس IP کارساز نامی است که باید از آن پرس‌وجو شود. (برخلاف dig <#std-iscman-dig>، این مقدار از /etc/resolv.conf خوانده نمی‌شود.) این مقدار می‌تواند یک آدرس IPv4 با تفکیک نقطه (dotted-decimal)، یک آدرس IPv6 با تفکیک دو‌نقطه (colon-delimited) یا یک نام میزبان باشد. هنگامی که آرگومان server داده‌شده یک نام میزبان است، mdig قبل از ارسال پرسمان به کارساز نام، ابتدا آن نام را تفکیک می‌کند.

دستور mdig تعدادی گزینه پرسمان ارائه می‌دهد که بر نحوه انجام جستجوها و نمایش نتایج تأثیر می‌گذارند. برخی از این گزینه‌ها بیت‌های پرچم را در سرآیند پرسمان تنظیم یا بازنشانی می‌کنند، برخی دیگر مشخص می‌کنند کدام بخش‌های پاسخ چاپ شوند، و موارد دیگر راهبردهای مهلت زمانی (timeout) و تلاش مجدد (retry) را تعیین می‌نمایند.

هر گزینه پرسمان با یک کلمه کلیدی که با یک علامت مثبت (+) شروع می‌شود، مشخص می‌گردد. برخی کلمات کلیدی یک گزینه را فعال یا غیرفعال می‌کنند. این گزینه‌ها می‌توانند با رشته no پیشوندگذاری شوند تا معنای آن کلمه کلیدی نفی شود. کلمات کلیدی دیگر مقادیری را به گزینه‌ها اختصاص می‌دهند (مانند فاصله زمانی مهلت انتظار). این گزینه‌ها دارای قالب +keyword=value هستند.

این گزینه باعث می‌شود mdig با خواندن فهرستی از درخواست‌های جستجو برای پردازش از فایل filename در حالت دسته‌ای (batch mode) کار کند. این فایل حاوی تعدادی پرسمان است، هر پرسمان در یک خط. هر مدخل در فایل باید به همان روشی سازمان‌دهی شود که پرسمان‌ها در رابط خط فرمان به mdig ارائه می‌شوند.
این گزینه باعث می‌شود mdig اطلاعات راهنمای دقیق را به همراه فهرست کامل گزینه‌ها نمایش داده و خارج شود.
این گزینه باعث می‌شود mdig شماره نسخه را چاپ کرده و خارج شود.

-4
این گزینه mdig را وادار می‌کند که فقط از پروتکل انتقال پرسمان IPv4 استفاده کند.
-6
این گزینه mdig را وادار می‌کند که فقط از پروتکل انتقال پرسمان IPv6 استفاده کند.
این گزینه آدرس IP مبدأ پرسمان را روی address تنظیم می‌کند. این مقدار باید یک آدرس معتبر روی یکی از رابط‌های شبکه میزبان یا "0.0.0.0" یا "::" باشد. یک درگاه (پورت) اختیاری را می‌توان با افزودن "#<port>" مشخص کرد.
این گزینه اشکال‌زدایی مصرف حافظه را فعال می‌کند.
این گزینه زمانی استفاده می‌شود که قرار است یک شماره پورت غیر استاندارد مورد پرس‌وجو قرار گیرد. شناسه port# شماره پورتی است که mdig پرسمان‌های خود را به جای پورت استاندارد DNS (شماره ۵۳) به آن ارسال می‌کند. این گزینه برای آزمایش کارساز نامی که برای گوش دادن به پرسمان‌ها روی یک شماره پورت غیر استاندارد پیکربندی شده است، استفاده می‌شود.

گزینه‌های سراسری پرسمان عبارتند از:

+additional, +noadditional
این گزینه بخش اضافی (additional) پاسخ را نمایش می‌دهد [یا نمایش نمی‌دهد]. حالت پیش‌فرض نمایش آن است.
+all, +noall
این گزینه تمام پرچم‌های نمایش را تنظیم یا پاک می‌کند.
+answer, +noanswer
این گزینه بخش پاسخ (answer) را نمایش می‌دهد [یا نمایش نمی‌دهد]. حالت پیش‌فرض نمایش آن است.
+authority, +noauthority
این گزینه بخش مرجعیت (authority) پاسخ را نمایش می‌دهد [یا نمایش نمی‌دهد]. حالت پیش‌فرض نمایش آن است.
+besteffort, +nobesteffort
این گزینه تلاش می‌کند محتوای پیام‌های ناقص و معیوب (malformed) را نمایش دهد [یا نمایش ندهد]. حالت پیش‌فرض نمایش ندادن پاسخ‌های معیوب است.
+burst
این گزینه ارسال پرسمان‌ها را تا شروع ثانیه بعدی به تعویق می‌اندازد.
+cl, +nocl
این گزینه کلاس (CLASS) را هنگام چاپ رکورد نمایش می‌دهد [یا نمایش نمی‌دهد].
+comments, +nocomments
این گزینه نمایش خطوط توضیحات (کامنت) را در خروجی تغییر می‌دهد. حالت پیش‌فرض چاپ توضیحات است.
+continue, +nocontinue
این گزینه ادامه عملیات در هنگام مواجهه با خطاها (مانند مهلت‌های زمانی) را فعال یا غیرفعال می‌کند.
+crypto, +nocrypto
این گزینه نمایش فیلدهای رمزنگاری در رکوردهای DNSSEC را فعال یا غیرفعال می‌کند. محتوای این فیلدها برای اشکال‌زدایی بیشتر خرابی‌های اعتبارسنجی DNSSEC غیرضروری است و حذف آن‌ها مشاهده خطاهای رایج را آسان‌تر می‌سازد. حالت پیش‌فرض نمایش این فیلدها است. در صورت حذف، با رشته "[omitted]" جایگزین می‌شوند؛ در مورد DNSKEY، شناسه کلید به عنوان جایگزین نمایش داده می‌شود، مانند [ key id = value ].
+multiline, +nomultiline
این گزینه چاپ رکوردها، مانند رکوردهای SOA، را در قالبی چندخطی و مفصل همراه با توضیحات خوانا برای انسان تغییر می‌دهد. حالت پیش‌فرض چاپ هر رکورد در یک خط واحد است تا تجزیه ماشینی خروجی mdig تسهیل شود.
+question, +noquestion
این گزینه بخش پرسش (question) یک پرسمان را هنگام بازگشت پاسخ چاپ می‌کند [یا چاپ نمی‌کند]. حالت پیش‌فرض چاپ بخش پرسش به صورت یک کامنت است.
+rrcomments, +norrcomments
این گزینه نمایش توضیحات به ازای هر رکورد را در خروجی تغییر می‌دهد (برای مثال، اطلاعات کلید خوانا برای انسان درباره رکوردهای DNSKEY). حالت پیش‌فرض عدم چاپ توضیحات رکورد است مگر این‌که حالت چندخطی فعال باشد.
+short, +noshort
این گزینه یک پاسخ کوتاه و فشرده ارائه می‌دهد [یا ارائه نمی‌دهد]. حالت پیش‌فرض چاپ پاسخ در قالبی مفصل است.
+split=W
این گزینه فیلدهای طولانی با قالب هگزادسیمال یا base64 را در رکوردهای منبع به بخش‌های W کاراکتری تقسیم می‌کند (که در آن W به نزدیک‌ترین مضرب ۴ به بالا گرد می‌شود). گزینه +nosplit یا +split=0 از تقسیم فیلدها جلوگیری می‌کند. مقدار پیش‌فرض ۵۶ کاراکتر است، یا ۴۴ کاراکتر هنگامی که حالت چندخطی فعال باشد.
+tcp, +notcp
این گزینه هنگام پرس‌وجو از کارسازهای نام از پروتکل TCP استفاده می‌کند [یا استفاده نمی‌کند]. رفتار پیش‌فرض استفاده از UDP است.
+ttlid, +nottlid
این گزینه زمان حیات (TTL) را هنگام چاپ رکورد نمایش می‌دهد [یا نمایش نمی‌دهد].
+ttlunits, +nottlunits
این گزینه TTL را در واحدهای زمانی خوانا و کاربرپسند "s" (ثانیه)، "m" (دقیقه)، "h" (ساعت)، "d" (روز) و "w" (هفته) نمایش می‌دهد [یا نمایش نمی‌دهد]. این گزینه مستلزم فعال بودن +ttlid است.
+vc, +novc
این گزینه هنگام پرس‌وجو از کارسازهای نام از TCP استفاده می‌کند [یا استفاده نمی‌کند]. این نحو جایگزین برای +tcp جهت سازگاری با گذشته ارائه شده است. عبارت vc مخفف "virtual circuit" (مدار مجازی) است.

این گزینه کلاس پرسمان را روی class تنظیم می‌کند. این می‌تواند هر کلاس پرسمان معتبری باشد که در BIND 9 پشتیبانی می‌شود. کلاس پرسمان پیش‌فرض "IN" است.
این گزینه نوع پرسمان را روی type تنظیم می‌کند. این می‌تواند هر نوع پرسمان معتبری باشد که در BIND 9 پشتیبانی می‌شود. نوع پرسمان پیش‌فرض "A" است، مگر اینکه گزینه -x برای مشخص کردن یک جستجوی معکوس با نوع پرسمان "PTR" ارائه شده باشد.
جستجوهای معکوس - نگاشت آدرس‌ها به نام‌ها - با این گزینه ساده‌سازی می‌شوند. شناسه addr یک آدرس IPv4 در نمادگذاری ده‌دهی با نقطه یا یک آدرس IPv6 با تفکیک دونقطه است. دستور mdig به طور خودکار جستجویی برای نام پرسمانی مانند 11.12.13.10.in-addr.arpa انجام داده و نوع و کلاس پرسمان را به ترتیب روی PTR و IN تنظیم می‌کند. به طور پیش‌فرض، آدرس‌های IPv6 با استفاده از قالب نیم‌بایت (nibble format) تحت دامنه IP6.ARPA جستجو می‌شوند.

گزینه‌های محلی پرسمان عبارتند از:

+aaflag, +noaaflag
این گزینه مترادفی برای +aaonly و +noaaonly است.
+aaonly, +noaaonly
این گزینه پرچم aa را در پرسمان تنظیم می‌کند.
+adflag, +noadflag
این گزینه بیت AD (داده‌های موثق / authentic data) را در پرسمان تنظیم می‌کند [یا تنظیم نمی‌کند]. این گزینه از کارساز درخواست می‌کند تا گزارش دهد که آیا تمام بخش‌های پاسخ و مرجعیت بر اساس خط‌مشی امنیتی کارساز به عنوان امن اعتبارسنجی شده‌اند یا خیر. مقدار AD=1 نشان می‌دهد که تمام رکوردها به عنوان امن اعتبارسنجی شده‌اند و پاسخ از یک محدوده OPT-OUT نیست. مقدار AD=0 نشان می‌دهد که بخشی از پاسخ ناامن بوده یا اعتبارسنجی نشده است. این بیت به طور پیش‌فرض تنظیم شده است.
+bufsize=B
این گزینه اندازه بافر پیام UDP اعلام‌شده با استفاده از EDNS0 را روی B بایت تنظیم می‌کند. حداکثر و حداقل اندازه این بافر به ترتیب ۶۵۵۳۵ و ۰ است. مقادیر خارج از این محدوده به طور مناسب به بالا یا پایین گرد می‌شوند. مقادیر غیر از صفر باعث ارسال یک پرسمان EDNS می‌شوند.
+cdflag, +nocdflag
این گزینه بیت CD (بررسی غیرفعال / checking disabled) را در پرسمان تنظیم می‌کند [یا تنظیم نمی‌کند]. این گزینه از کارساز درخواست می‌کند که اعتبارسنجی DNSSEC پاسخ‌ها را انجام ندهد.
+cookie=####, +nocookie
این گزینه یک گزینه COOKIE EDNS را با مقداری اختیاری ارسال می‌کند [یا ارسال نمی‌کند]. ارسال مجدد یک COOKIE از پاسخ قبلی به کارساز اجازه می‌دهد کلاینت قبلی را شناسایی کند. مقدار پیش‌فرض +nocookie است.
+dnssec, +nodnssec
این گزینه با تنظیم بیت DNSSEC OK (DO) در رکورد OPT در بخش اضافی (additional) پرسمان، درخواست می‌کند که رکوردهای DNSSEC ارسال شوند.
+edns[=#], +noedns
این گزینه نسخه EDNS را برای ارسال پرسمان مشخص می‌کند [یا مشخص نمی‌کند]. مقادیر معتبر بین ۰ تا ۲۵۵ هستند. تعیین نسخه EDNS باعث ارسال پرسمان EDNS می‌شود. گزینه +noedns نسخه ذخیره‌شده EDNS را پاک می‌کند. EDNS به طور پیش‌فرض روی ۰ تنظیم شده است.
+ednsflags[=#], +noednsflags
این گزینه بیت‌های پرچم EDNS را که باید صفر باشند (بیت‌های Z) روی مقدار مشخص‌شده تنظیم می‌کند. فرمت‌های ده‌دهی، هگزادسیمال و هشت‌هشتی (octal) پذیرفته می‌شوند. تنظیم یک پرچم نام‌گذاری‌شده (مانند DO) نادیده گرفته می‌شود. به طور پیش‌فرض هیچ بیت Z تنظیم نشده است.
+ednsopt[=code[:value]], +noednsopt
این گزینه یک گزینه EDNS با نقطه کد code و محتوای اختیاری value به صورت یک رشته هگزادسیمال را مشخص می‌کند [یا مشخص نمی‌کند]. گزینه +noednsopt گزینه‌های EDNS برای ارسال را پاک می‌کند.
+expire, +noexpire
این گزینه ارسال گزینه EDNS Expire را فعال یا غیرفعال می‌کند.
+nsid, +nonsid
این گزینه درج درخواست شناسه کارساز نام EDNS (NSID) را هنگام ارسال پرسمان فعال یا غیرفعال می‌کند.
+recurse, +norecurse
این گزینه تنظیم بیت RD (درخواست بازگشتی / recursion desired) را در پرسمان تغییر می‌دهد. این بیت به طور پیش‌فرض تنظیم شده است، به این معنی که mdig معمولاً پرسمان‌های بازگشتی ارسال می‌کند.
+retry=T
این گزینه تعداد دفعات تلاش مجدد برای ارسال پرسمان‌های UDP به کارساز را به جای مقدار پیش‌فرض ۲، روی T تنظیم می‌کند. برخلاف +tries، این مقدار شامل پرسمان اولیه نمی‌شود.
+subnet=addr[/prefix-length], +nosubnet
این گزینه یک گزینه EDNS Client Subnet را با آدرس IP یا پیشوند شبکه مشخص‌شده ارسال می‌کند [یا ارسال نمی‌کند].
این دستور یک گزینه EDNS client-subnet با یک آدرس خالی و طول پیشوند مبدأ صفر ارسال می‌کند، که به تحلیل‌گر (resolver) نشان می‌دهد که اطلاعات آدرس کلاینت نباید هنگام تفکیک این پرسمان استفاده شود.
+timeout=T
این گزینه مهلت زمانی را برای یک پرسمان روی T ثانیه تنظیم می‌کند. مهلت زمانی پیش‌فرض برای انتقال UDP برابر ۵ ثانیه و برای TCP برابر ۱۰ ثانیه است. تلاش برای تنظیم T به کمتر از ۱ منجر به اعمال مهلت زمانی ۱ ثانیه می‌شود.
+tries=T
این گزینه تعداد دفعات تلاش برای ارسال پرسمان‌های UDP به کارساز را به جای مقدار پیش‌فرض ۳، روی T تنظیم می‌کند. اگر T کمتر یا مساوی صفر باشد، تعداد دفعات تلاش به ۱ گرد می‌شود.
+udptimeout=T
این گزینه مهلت زمانی بین تلاش‌های مجدد پرسمان UDP را روی T تنظیم می‌کند.
+unknownformat, +nounknownformat
این گزینه تمام RDATAها را در قالب نمایشی انواع RR ناشناخته چاپ می‌کند [یا چاپ نمی‌کند] (به RFC 3597 https://datatracker.ietf.org/doc/html/rfc3597.html مراجعه کنید). حالت پیش‌فرض چاپ RDATA برای انواع شناخته‌شده در قالب نمایشی آن نوع است.
+yaml, +noyaml
این گزینه چاپ پاسخ‌ها را در یک قالب تفصیلی YAML فعال یا غیرفعال می‌کند.
+zflag, +nozflag
این گزینه آخرین پرچم سرآیند DNS تخصیص‌نیافته را در یک پرسمان DNS تنظیم می‌کند [یا تنظیم نمی‌کند]. این پرچم به طور پیش‌فرض خاموش است.

dig(1) <#std-iscman-dig>, RFC 1035 https://datatracker.ietf.org/doc/html/rfc1035.html.

Internet Systems Consortium

2026, Internet Systems Consortium

2026-08-19 9.20.27