DNS ဆိုတာ ဘာလဲ
DNS (Domain Name System) ကို အင်တာနက်၏ ဖုန်းစာအုပ်လို့ သတ်မှတ်နိုင်ပါတယ်။ လူသိများတဲ့ domain အမည်များ (ဥပမာ evilmail.com) ကို ကွန်ပျူတာများ နားလည်နိုင်သော IP လိပ်စာများ (ဥပမာ 93.184.216.34) သို့ ပြောင်းလဲပေးပါတယ်။ ဒီစနစ်မရှိဘဲ ဝဘ်ဆိုက်တိုင်းကို IP လိပ်စာဖြင့် မှတ်ထားရပါလိမ့်မယ်။
A Record
A record က domain အမည်ကို IPv4 လိပ်စာတစ်ခုနှင့် ချိတ်ဆက်ပေးပါတယ်။ ဒါက DNS ရဲ့ အခြေခံအကျဆုံး record အမျိုးအစားဖြစ်ပါတယ်။ ဥပမာ — evilmail.com. IN A 93.184.216.34။ IPv6 အတွက်ကတော့ AAAA record ကို အသုံးပြုပါတယ်။
MX Record
MX (Mail Exchange) record က domain တစ်ခုအတွက် အီးမေးလ်လက်ခံရမည့် mail server ကို သတ်မှတ်ပါတယ်။ Priority တန်ဖိုးပါဝင်ပြီး ဂဏန်းနည်းလေ ဦးစားပေးမြင့်လေ ဖြစ်ပါတယ်။ ဥပမာ — evilmail.com. IN MX 10 mail.evilmail.com.။ Backup server အတွက် priority မြင့်သော MX record ထည့်နိုင်ပါတယ်။
CNAME Record
CNAME (Canonical Name) record က domain တစ်ခုကို အခြား domain တစ်ခု၏ alias အဖြစ် သတ်မှတ်ပါတယ်။ ဥပမာ — www.evilmail.com. IN CNAME evilmail.com. ဆိုရင် www subdomain က ပင်မ domain ကို ညွှန်ပြပါတယ်။ CNAME ကို MX သို့မဟုတ် NS record များနှင့် အတူတကွ root domain တွင် အသုံးပြု၍မရပါ။
TXT Record
TXT record က domain နှင့်ပတ်သက်သော စာသားအချက်အလက်များ သိမ်းဆည်းပါတယ်။ SPF၊ DKIM နှင့် domain verification များအတွက် အသုံးများပါတယ်။ ဥပမာ SPF record — evilmail.com. IN TXT "v=spf1 include:_spf.evilmail.com ~all"။
အခြား Record အမျိုးအစားများ
NS Record: domain အတွက် authoritative nameserver များ သတ်မှတ်ပါတယ်။
SRV Record: သတ်မှတ်ထားသော ဝန်ဆောင်မှုတစ်ခုအတွက် server နှင့် port သတ်မှတ်ပါတယ်။
PTR Record: IP လိပ်စာမှ domain အမည်သို့ reverse lookup အတွက် အသုံးပြုပါတယ်။
CAA Record: domain အတွက် SSL certificate ထုတ်ပေးခွင့်ရှိသော CA များ သတ်မှတ်ပါတယ်။
SOA Record: domain ၏ zone file အကြောင်း အဓိကအချက်အလက်များ ပါဝင်ပါတယ်။
TTL — Time to Live
TTL က DNS record တစ်ခုကို cache ထဲတွင် မည်မျှကြာ သိမ်းဆည်းထားမည်ကို စက္ကန့်ဖြင့် သတ်မှတ်ပါတယ်။ TTL နိမ့်ရင် (ဥပမာ 300 = ၅ မိနစ်) ပြောင်းလဲမှုများ မြန်မြန် အကျိုးသက်ရောက်ပေမယ့် DNS query ပိုများပါတယ်။ TTL မြင့်ရင် (ဥပမာ 86400 = ၂၄ နာရီ) performance ပိုကောင်းပေမယ့် ပြောင်းလဲမှု ပြန့်နှံ့ရန် ပိုကြာပါတယ်။ DNS ပြောင်းလဲမှုများ မလုပ်ခင် TTL ကို ယာယီလျှော့ချခြင်းက အကောင်းဆုံးအလေ့အကျင့်ဖြစ်ပါတယ်။
dig ဖြင့် DNS ပြဿနာရှာဖွေခြင်း
dig command က DNS ပြဿနာများ ရှာဖွေဖြေရှင်းရာတွင် မရှိမဖြစ်ကိရိယာဖြစ်ပါတယ်:
# A record စစ်ဆေးခြင်း
dig evilmail.com A
# MX record စစ်ဆေးခြင်း
dig evilmail.com MX
# TXT record စစ်ဆေးခြင်း
dig evilmail.com TXT
# သတ်မှတ် nameserver မှ query လုပ်ခြင်း
dig @8.8.8.8 evilmail.com A
# အတိုကောက် output
dig evilmail.com A +short
# DNS trace လုပ်ခြင်း
dig evilmail.com A +trace+short flag က ရိုးရှင်းသော output ပေးပြီး +trace က root server မှ resolution လုပ်ငန်းစဉ်တစ်ခုလုံးကို ပြသပါတယ်။ ဒီကိရိယာများကို ပုံမှန်အသုံးပြုခြင်းဖြင့် DNS ပြဿနာများကို လျင်မြန်စွာ ရှာဖွေဖြေရှင်းနိုင်ပါတယ်။

