dnsget(1) General Commands Manual dnsget(1)

dnsget - ابزار جستجوی DNS

dnsget [-v|-q] [-c class] [-t type] [-o opt,opt,...] name...

دستور dnsget یک ابزار خط‌فرمانی ساده برای انجام جستجوهای DNS است که عملکردی شبیه به host(1) و dig(1) دارد. این ابزار هم در سناریوهای تعاملی و اشکال‌زدایی و هم در اسکریپت‌ها قابل استفاده است. این برنامه با استفاده از کتابخانهٔ udns(3) پیاده‌سازی شده است.

به‌طور پیش‌فرض، dnsget خروجی قابل‌فهم برای انسان تولید می‌کند، شبیه به:

alias.example.com. CNAME www.example.com.
www.example.com. A 192.168.1.1
www.example.com. MX 10 mx.example.com.
که برای مشاهدهٔ نحوهٔ تحلیل یک نام مشخص کافی است. قالب خروجی با گزینه‌های -v و -q قابل کنترل است -- گزینهٔ اول سطح پرگویی (verbosity) را تا چاپ کامل محتوای تمامی بسته‌های DNS ارسالی و دریافتی افزایش می‌دهد که برای اشکال‌زدایی مشکلات DNS مناسب است، در حالی که گزینهٔ دوم سطح خروجی را کاهش داده و آن را ساکت‌تر می‌کند، تا حدی که تنها نتیجهٔ خام بدون هیچ پیام خطایی نمایش داده می‌شود که برای استفاده در اسکریپت‌ها ایده‌آل است.

گزینه‌های زیر توسط dnsget پشتیبانی می‌شوند:

تولید خروجی با جزئیات بیشتر. استفادهٔ بیشتر از -v به معنی نمایش جزئیات بیشتر خواهد بود. با یک -v تنها، dnsget محتوای تمام بسته‌های DNS دریافتی را (در قالبی خوانا) چاپ می‌کند، در حالی که با -vv، تمام بسته‌های DNS ارسالی نیز در خروجی نمایش داده می‌شوند.
نقطهٔ مقابل -v -- تولید خروجی با جزئیات کمتر. با یک -q تنها، dnsget تنها داده‌های (رمزگشایی‌شدهٔ) رکوردهای منبع (RR) نهایی DNS را نشان می‌دهد، در حالی که -qq پیام‌های خطا را نیز فرونشانی (پنهان) می‌کند.
درخواست رکورد(های) با نوع داده‌شدهٔ type. به‌طور پیش‌فرض، dnsget رکورد نشانی IPv4 (رکورد A) را درخواست می‌کند، یا در صورتی که آرگومان مورد نظر یک نشانی IPv4 یا IPv6 باشد، رکورد PTR را درخواست خواهد کرد. انواع شناخته‌شده شامل A، AAAA، MX، TXT، CNAME، PTR، NS، SOA، ANY و موارد دیگر است.
درخواست رکورد(های) DNS با کلاس داده‌شدهٔ class. به‌طور پیش‌فرض dnsget از کلاس IN استفاده می‌کند. کلاس‌های معتبر شامل IN، CH، HS و ANY هستند.
(گزینهٔ سازگاری). معادل تنظیم نوع پرس‌وجو به ANY و افزایش سطح پرگویی خروجی (-v).
(برنامه‌ریزی‌شده)
(برنامه‌ریزی‌شده)
(می‌تواند چندین بار مشخص شود). تنظیم گزینه‌های تحلیل‌گر (به شکل option:value) به همان گونه‌ای که در متغیر محیطی $RES_OPTIONS تنظیم می‌شوند، یا تنظیم پرچم‌های پرس‌وجو:
تنظیم مهلت زمانی اولیهٔ پرس‌وجو به sec ثانیه.
تلاش (مجدد) برای هر پرس‌وجو به تعداد num بار پیش از اعلام شکست.
تنظیم اندازهٔ بافر UDP در DNS به میزان bytes بایت. مقادیر معتبر از 512 تا 65535 هستند. اگر bytes بزرگتر از 512 باشد، افزونه‌های EDNS0 (RFC 2671) استفاده خواهند شد.
استفاده از شماره درگاه UDP مشخص‌شدهٔ num به جای درگاه پیش‌فرض 53 (domain).
تنظیم بیت پرس‌وجوی AA (تنها معتبر / auth only).
عدم تنظیم بیت پرس‌وجوی RD (درخواست بازگشتی / recursion desired) (به‌طور پیش‌فرض تنظیم است).
تنظیم پرچم پرس‌وجوی DNSSEC OK (DO) (دستور dnsget امضاهای DNSSEC را اعتبارسنجی نمی‌کند، بلکه تنها آن‌ها را نمایش می‌دهد؛ این مورد در EDNS RR تنظیم می‌شود).
تنظیم بیت پرس‌وجوی CD (بررسی غیرفعال / checking disabled).
استفاده از nameserver(های) داده‌شده (می‌تواند بیش از یک بار مشخص شود) به جای مقدار پیش‌فرض. استفاده از این گزینه همان تأثیر متغیرهای محیطی $NSCACHEIP یا $NAMESERVERS را دارد، با این تفاوت که در حال حاضر تنها نشانی‌های IPv4 شناسایی می‌شوند و امکان مشخص کردن نام‌ها (که با تنظیمات پیش‌فرض تحلیل خواهند شد) به جای نشانی‌های IP وجود دارد.
نمایش راهنمای کوتاه و خروج.

هنگامی که همهٔ نام‌ها با موفقیت تحلیل شوند، dnsget با وضعیت خروج صفر خارج می‌شود. اگر حداقل یک نام یافت نشود، dnsget با کد بازگشتی 100 خارج خواهد شد. در صورت بروز هر خطای دیگری در حین تحلیل نام، با کد 99 خارج می‌شود. در صورت بروز خطای نحوهٔ استفاده یا مقداردهی اولیه، dnsget کد 1 را برمی‌گرداند.

host(1), dig(1), resolv.conf(5), udns(3).

Jan 2014 User Utilities