پرس و جوی بازگشتی
در این روش هر گاه برنامهای بخواهد آدرس IP معادل یک نام مثل cs.yale.edu را بدست آورد بگونهای که قبلاً اشاره شد ، “تابع سیستمی تحلیل نام” را فراخوانی میکند. این تابع یک ماشین را بعنوان سرویس دهنده محلی از قبل میشناسد و بنابراین تقاضای تبدیل نام را به روش UDP برای آن ارسال کرده و منتظر جواب می ماند (پاسخ نهایی DNS طبیعتاً باید یک آدرس ۳۲ بیتی معادل آدرس IP یک ماشین باشد)دو حالت ممکن است اتفاق بیفتد:
ممکن است در بانک اطلاعاتی مربوط به سرویس دهنده محلی ، آدرس IP معادل با آن نام از قبل وجود داشته و بالطبع به سرعت مقدار معادل IP آن بر میگردد.
ممکن است در بانک اطلاعاتی سرویس دهنده محلی ، معادل IP آن نام وجود نداشته باشد.مثلاً سرویس دهنده محلی در بانک اطلاعاتی خودش معادل IP نام cs.mit.edeu را نداشته و طبیعتاً نمیتواند آن را ترجمه کند. در چنین حالتی سرویس دهنده محلی موظف است بدون آنکه به تقاضا دهنده خبر بدهد، خودش رأساً به سرویس دهنده سطح بالاتر تقاضای ترجمه آدرس بدهد. در این حالت هم DNS سطح بالاتر به همین نحو ترجمه آدرس را پیگیری میکند یعنی اگر معادل IP آن نام را داشته باشد آنرا برمی گرداند و در غیر اینصورت خودش از سرویس دهنده سطح پایینتر تقاضای ترجمه آن نام را می نماید و این مراحل تکرار میشود. در روش پرس و جوی بازگشتی ماشین سرویس دهنده محلی این مراحل متوالی را نمی بیند و هیچ کاری جز ارسال تقاضای ترجمه یک آدرس بر عهده ندارد و پس از ارسال تقاضا برای سرویس دهنده سطح بالا منتظر خواهد ماند. بازهم تکرار می کنیم ، روشی که DNS برای ترجمه آدرس بکار میبرد میتواند بدون اتصال (UDP) باشد که این کار به سرعت عمل ترجمه آدرس می افزاید.
دقت کنید که در روش پرس و جوی تکراری نسبت به روش پرس و جوی بازگشتی ، حجم عمده عملیات بر عهده سرویس دهنده DNS محلی است و مدیریت خطاها و پیگیری روند کار ساده تر خواهد بود و روش منطقی تری برای بکارگیری در شبکه اینترنت محسوب میشود. روش پرس و جوی بازگشتی برای شبکههای کوچک کاربرد دارد . برای درک بیشتر این روش به شکل زیر دقت کنید.