پروتکل DNS چیست؟ بررسی Query و Answer

امیر ساتکین
مدرس : امیر ساتکین
دوره +Network فصل7 درس4
نام درس : پروتکل DNS چیست؟ بررسی Query و Answer
نام فصل : فصل 7 - سرویس های مبتنی بر پروتکل IP
معرفی این ویدیو آموزشی به دوستان

پروتکل DNS چیست؟ بررسی Query و Answer

معرفی پروتکل DNS

پروتکل DNS در لایه Application از مدل OSI کار میکند. کار این پروتکل تبدیل نام یک کامپیوتر به آدرس IP و برعکس میباشد. وقتی نام وب سایت باشگاه شبکه و امنیت تهران را در مرورگر خود مینویسید سیستم عامل کامپیوترتان از دی ان اس سرور، آدرس IP وب سایت را سوال میکند. بنابراین DNS به کاربران اینترنت کمک میکند تا به جای آدرس IP وبسایتها از نام آنها استفاده کنند. سرورهای DNS برای ارتباط باهم از پورت TCP 53 استفاده میکنند. ارتباط بین dns client با dns server نیز از طریق پورت UDP 53 برقرار میشود.

 

بررسی بسته DNS با وایرشارک

در تصویر اشاره به بسته DNS میکند که از آدرس 192.168.1.6 (به عنوان dns client) به آدرس 8.8.8.8 (به عتوان dns server) میرود. 

  • شماره ۱ در تصویر بالا اشاره به بسته DNS میکند که از آدرس 192.168.1.6 (به عنوان dns client) به آدرس 8.8.8.8 (به عنوان dns server) ارسال شده است.
  • شماره ۲ در تصویر بالا به اندازه بسته dns query که 86 بایت است اشاره میکند. همانطور که میدانید اندازه هدر پروتکل UDP به میزان ۸ بایت، پروتکل IP به میزان ۲۰ بایت و پروتکل Ethernet به میزان ۱۴ بایت است؛ بنابراین ۴۲ بایت از ۸۶ بایت بسته DNS به هدر پروتکلهای UDP و IP و Ethernet اختصاص دارد، پس سایز خام DNS Querry برابر با ۴۴ بایت است. به دلیل اندازه کم دیتا در سوالی که dns client از dns server میپرسد (طبق محاسبه انجام شده ۴۴ بایت) و پاسخی که dns server به dns client میدهد (بر اساس سایز نمایش داده شده در تصویر ۱۰۲ بایت است و بدون احتساب هدرهای UDP و IP و Ethernet برابر با ۶۰ بایت)، پروتکل UDP توسط DNS فراخوانی میشود. اگر به تصویر بالا دقت کنید تمام اطلاعات dns querry و dns answer در دو پکت UDP به صورت رفت و برگشت قرار میگیرد. برای رد و بدل کردن این حجم از دیتا که فقط با ارسال و دریافت دو پکت انجام میشود، از پروتکل TCP استفاده نمیشود؛ زیرا پروتکل TCP قبل از ارسال دیتا اقدام به ایجاد کانکشن با کامپیوتر مقصد میکند‌ (اشاره به TCP 3-Ways Handshake) که این خود باعث تاخیر در ارتباط بین dns client و dns server میشود.   
  • شماره ۳ اشاره به ارسال Query دارد که از کلاینت به سمت سرور برای بدست آوردن آدرس آی پی مقصد موردنظر (www.tehrantrain.com) ارسال شده است.
  • شماره ۴: این قسمت به بسته DNS Answer که از آدرس 8.8.8.8 (به عنوان DNS Server) به آدرس 192.168.1.6 (به عنوان DNS Client) ارسال شده اشاره دارد.
  • شماره ۵: اشاره به سایز بسته DNS Answer دارد. همانطور که در تصویر مشخص است سایز بسته ۱۰۲ بایت است. البته برای بدست آوردن حجم اطلاعات DNS Answer میبایست اندازه هدر پروتکل Ethernet (۱۴ بایت) و پروتکل IP (۲۰ بایت) و پروتکل UDP (۸ بایت) را از سایز کل بسته (۱۰۲ بایت) کم کنیم. بنابراین حجم اطلاعات DNS Answer برابر با ۶۰ بایت است.
  • شماره ۶: اشاره به ارسال پاسخ DNS Query از سرور به سمت کلاینت دارد.
  • شماره ۷: Source IP Address در بسته DNS اشاره به آدرس آی پی DNS Client یا همان فرستنده Query دارد.
  • شماره ۸: Destination IP Address بیانگر آدرس آی پی سرور است.
  • شماره ۹: تمام بسته های رد و بدل شده بین کلاینت و سرور به وسیله پروتکل UDP منتقل میشوند.
  • شماره ۱۰: کلاینت هنگام ارسال Query به سرور، آدرس پورت مبدا یا همان Source Port را بصورت Random انتخاب میکند و در UDP Header ثبت میکند. در تصویر بالا آدرس پورت کلاینت برابر با 60333 است.
  • شماره ۱۱: سرور از طریق پورت UDP 53 با کلاینت صحبت میکند. بنابراین وقتی کلاینت بسته ای برای سرور ارسال میکند، آدرس پورت مقصد در هدر UDP را برابر با 53 قرار میدهد.
  • شماره ۱۲: اشاره به نوع پیام DNS دارد. همانطور که در عکس بالا مشخص است نوع پیام DNS Query است.

 بررسی DNS Query با وایرشارک

ارسال درخواست DNS Quary از DNS Client به DNS Server

  • شماره ۱ در تصویر بالا به نوع پیام dns اشاره میکند. همانطور که در تصویر مشخص است نوع این پیام Query است; یعنی کلاینت سوالی را برای سرور ارسال کرده است.
  • شماره ۲: DNS Client برای گفتگوی خود با DNS Server یک شناسه یکتا در نظر میگیرد که به آن Transaction ID گفته میشود. کلاینت توسط Transaction ID میتواند پاسخهای دریافتی از سرور را با درخواستهای ارسالی خود مطابقت دهد.
  • شماره ۳: اشاره به dns flag با شماره ۱۲۰ که یک Query از نوع استاندارد است میکند. منظور از Standard Query پرسشی است که کلاینت از سرور میپرسد: پرسش درباره آدرس IP یک کامپیوتر است. کلاینت نام کامپیوتر را برای سرور ارسال کرده و از سرور میخواهد که آدرس IP کامپیوتری را که دارنده نام مورد نظر است به او برگرداند.
  • شماره ۴: به تعداد سوالهایی که در این بسته dns قرار دارد اشاره میکند. طبق تصویر بالا شماره ۱ نشان میدهد که کلاینت یک سوال برای سرور در این بسته گذاشته است.
  • شماره ۵: سرور dns انواع مختلفی از رکوردها را در دیتابیس خود نگهداری میکند. شماره ۵ به رکورد Type A اشاره میکند. اطلاعات ثبت شده در این رکورد شامل نام و آدرس IP کامپیوتر است. همانطور که در تصویر مشخص است کلاینت در شماره ۵ به سرور میگوید پاسخ سوالش را در کدام DNS Name Space (منظور همان DNS Zone است) و از بین چه نوع رکوردهایی جستجو (Look up) کند.
  • شماره ۶: کلاینت به دنبال آدرس IP دامنه tehrantrain.com (وب سایت باشگاه شبکه و امنیت تهران) میگردد.
  • شماره ۷: اشاره به این دارد که کلاینت از سرور، آدرس IP مربوط به نام tehrantrain.com را میخواهد

بررسی DNS Answer با وایرشارک

  • شماره ۱ در تصویر بالا به نوع پیام dns اشاره میکند. همانطور که در تصویر مشخص است نوع این پیام Responce است؛ یعنی سرور به سوال کلاینت پاسخ داده است.
  • شماره ۲: DNS Server پاسخ کلاینت را با همان Transaction ID برمیگرداند که کلاینت در پرسش خود ثبت و برای سرور ارسال کرده بود.
  • شماره ۳: اشاره به محتوای پیام dns دارد که شامل پرسش کلاینت و پاسخ مربوط به آن از سمت سرور است.
  • شماره ۴: به تعداد سوالهایی که در بسته dns قرار دارد اشاره میکند. در تصویر بالا شماره 4، عدد 1 نشان میدهد که کلاینت یک سوال از سرور پرسیده بود و این پیام پاسخی به آن سوال است.
  • شماره ۵: به تعداد پاسخهای موجود در پیامی که سرور برای کلاینت ارسال کرده اشاره میکند.
  • شماره ۶: در پاسخهایی که سرور ارسال میکند، پرسشهای کلاینت را نیز در آن قرار میدهد. در تصویر قبل، dns query را بررسی کردیم. به همین دلیل در شماره 6 از تصویر بالا، Queries را باز و بررسی نکردیم.
  • شماره ۷: اشاره به پاسخ سرور به کلاینت دارد. کلاینت آدرس IP مرتبط با نام tehrantrain.com را از سرور پرسیده بود. سرور هم در پاسخ به سوال کلاینت، آدرس 79.127.127.70 را به عنوان IP مرتبط با نام مورد نظر برگرداند.
5 2 votes
رأی دهی به مقاله
سوال های آزمون از ویدیو آموزشی و مطالب نوشته شده در صفحه طرح می شوند.
هر پاسخ درست یک امتیاز مثبت
هر پاسخ اشتباه یک امتیاز منفی
آزمون درس پروتکل DNS چیست؟ بررسی Query و Answer

برای دسترسی به تمرین، وارد حساب کاربری شوید.

سوال های تان را بپرسید. پشتیبان های فنی پاسخ می دهند.
حسین روزبهانی
حسین روزبهانی
ساغر قرایی
ساغر قرایی
علی نجاتی
علی نجاتی
خبر نامه
اطلاع از
guest
0 نظرات
Inline Feedbacks
View all comments
1.
عضویت در انجمن سیسکو
2.
عضویت در انجمن لینوکس
3.
عضویت در انجمن امنیت سایبری