Windows ostida keshlash DNS serverini o'rnatish. Biz o'z mahalliy DNS (PDNSD) ni blackjack bilan va Google Public DNS-ga qaraganda tezroq yaratamiz. Mikrotik bo'yicha onlayn kurslar

DNS keshi - bu avvalgi DNS qidiruvlari haqidagi ma'lumotlarni saqlaydigan vaqtinchalik ma'lumotlar bazasi. Boshqacha qilib aytadigan bo'lsak, har safar veb-saytga tashrif buyurganingizda, operatsion tizimingiz va veb-brauzeringiz domen va tegishli IP manzilni yozib oladi. Bu masofaviy DNS serverlariga takroriy so'rovlar qilish zaruratini yo'q qiladi va OS yoki brauzeringizga veb-sayt URL manzillarini tezda hal qilish imkonini beradi.

Biroq, ba'zi holatlarda, masalan, tarmoq muammolarini bartaraf etish yoki DNS-rezolyutsiyani o'zgartirgandan so'ng, siz DNS keshini tozalashingiz kerak. Bu keshlangan DNS yozuvlarini tozalaydi va yangi sozlangan DNS sozlamalari asosida domenni hal qilish uchun keyingi qidiruvlarni amalga oshiradi.

Ushbu maqola turli xil operatsion tizimlar va veb-brauzerlarda DNS keshini tozalash bo'yicha ko'rsatmalar beradi.

Windows-da DNS keshini tozalash/o'chirish

DNS keshini tozalash jarayoni Windowsning barcha versiyalari uchun bir xil. Administrator huquqlari bilan buyruq satrini ochishingiz va ipconfig /flushdns-ni ishga tushirishingiz kerak.

Windows 10 va Windows 8

Windows 10 va 8 da DNS keshini tozalash uchun quyidagi amallarni bajaring:

  1. Windows qidiruv satriga cmd kiriting.
  2. ipconfig / flushdns

    Windows 7

    Windows 7 da DNS keshini tozalash uchun quyidagi amallarni bajaring:

    1. Boshlash tugmasini bosing.
    2. Boshlash menyusidagi qidiruv matn maydoniga cmd kiriting.
    3. Buyruqlar satrini o'ng tugmasini bosing va "Administrator sifatida ishga tushirish" -ni tanlang. Bu buyruq satri oynasini ochadi.
    4. Buyruqning satriga quyidagi qatorni kiriting va Enter tugmasini bosing:

      ipconfig / flushdns

      Muvaffaqiyatli bo'lsa, tizim quyidagi xabarni qaytaradi:

      Windows IP konfiguratsiyasi DNS resolver keshini muvaffaqiyatli tozaladi.

    Linuxda DNS keshini tozalash/o'chirish

    Systemd-Resolved, DNSMasq yoki Nscd kabi keshlash xizmati o'rnatilmasa va ishlamasa, Linux operatsion tizimi darajasida DNS keshiga ega emas. DNS keshini tozalash jarayoni siz foydalanadigan tarqatish va keshlash xizmatiga qarab farq qiladi.

    Tizimli hal qilindi

    Ko'pgina zamonaviy Linux distributivlari, masalan, DNS yozuvlarini keshlash uchun tizim yoqilgan xizmatdan foydalanadi.

    Xizmat ishlayotganligini bilish uchun quyidagilarni bajaring:

    sudo systemctl-faol systemd-resolved.service

    Agar xizmat ishlayotgan bo'lsa, buyruq faol chop etiladi, aks holda siz faol emasligini ko'rasiz.

    Systemd Resolved DNS keshini tozalash uchun siz quyidagi buyruqni kiritishingiz kerak.

    sudo systemd-resolve --fush-keshlar

    Muvaffaqiyatli bo'lsa, buyruq hech qanday xabarni qaytarmaydi.

    Dnsmasq

    Dnsmasq engil DHCP va DNS nomlarini keshlash serveridir.

    Agar tizimingiz DNSMasq-dan keshlash serveri sifatida foydalansa, DNS keshini tozalash uchun Dnsmasq xizmatini qayta ishga tushirishingiz kerak:

    sudo systemctl dnsmasq.serviceni qayta ishga tushiring

    sudo xizmati dnsmasq qayta ishga tushiriladi

    Nscd

    Nscd keshlash demonidir va ko'pchilik RedHat-ga asoslangan tarqatishlar uchun tanlangan DNS keshlash tizimidir.

    Agar tizimingiz Nscd dan foydalansa, DNS keshini tozalash uchun Nscd xizmatini qayta ishga tushirishingiz kerak bo'ladi:

    sudo systemctl nscd.service ni qayta ishga tushiring

    sudo xizmati nscd-ni qayta ishga tushiring

    MacOS-da DNS keshini tozalash/o'chirish

    MacOS-da keshni tozalash buyrug'i siz foydalanayotgan versiyaga qarab biroz farq qiladi. Buyruq tizim administratori huquqlariga ega foydalanuvchi sifatida ishga tushirilishi kerak (sudo foydalanuvchisi).

    MacOS-da DNS keshini tozalash uchun quyidagi amallarni bajaring:

    1. Finder-ni oching.
    2. Ilovalar > Utilitalar > Terminal-ga o'ting. Bu terminal oynasini ochadi.
    3. Buyruqning satriga quyidagi qatorni kiriting va Enter tugmasini bosing:

      sudo killall -HUP mDNSResponder

      Sudo parolingizni kiriting va Enter tugmasini yana bir marta bosing. Muvaffaqiyatli bo'lsa, tizim hech qanday xabarni qaytarmaydi.

    MacOS ning oldingi versiyalari uchun keshni tozalash buyrug'i boshqacha.

    MacOS 10.11 va 10.9 versiyalari

    sudo dscacheutil -flushcache sudo killall -HUP mDNSResponder

    MacOS versiyasi 10.10

    sudo discoveryutil mdnsflushcache sudo discoveryutil udnsflushcache

    MacOS 10.6 va 10.5 versiyalari

    sudo dscacheutil -flushcache

    Brauzerning DNS keshini tozalash/o'chirish

    Ko'pgina zamonaviy veb-brauzerlarda o'rnatilgan DNS mijozi mavjud bo'lib, u har safar veb-saytga tashrif buyurganingizda takroriy so'rovlarni oldini oladi.

    Gugl xrom

    Google Chrome DNS keshini tozalash uchun quyidagi amallarni bajaring:

    1. Yangi yorliqni oching va Chrome manzil satriga yozing: chrome://net-internals/#dns.
    2. Xost keshini tozalash tugmasini bosing.

    Agar bu ishlamasa, kesh va cookie-fayllarni tozalashga harakat qiling.

    1. Brauzer ma'lumotlarini tozalash dialog oynasini ochish uchun CTRL + Shift + Del tugmalarini bosing.
    2. Vaqt oralig'ini tanlang. Hamma narsani o'chirish uchun "Hamma vaqt" ni tanlang.
    3. "Cookie fayllari va boshqa sayt ma'lumotlari" va "Keshlangan tasvirlar va fayllar" katakchalarini belgilang.
    4. "Ma'lumotlarni o'chirish" tugmasini bosing.

    Bu usul barcha Chrome brauzerlari, jumladan Chromium, Vivaldi va Opera uchun ishlashi kerak.

    FireFox

    Firefox DNS keshini tozalash uchun quyidagi amallarni bajaring:

    1. Firefox menyusini ochish uchun yuqori o'ng burchakdagi gamburger belgisini ☰ bosing:
    2. ⚙ Variantlar (Sozlamalar) havolasini bosing.
    3. Chapdagi "Maxfiylik va xavfsizlik" yoki "Maxfiylik" yorlig'ini bosing.
    4. "Tarix" bo'limiga pastga aylantiring va "Tarixni tozalash ..." tugmasini bosing.
    5. Tozalash uchun vaqt oralig'ini tanlang. Hamma narsani o'chirish uchun "Hammasi" ni tanlang.
    6. Barcha maydonlarni tanlang va Endi tozalash tugmasini bosing.

    Agar bu siz uchun ishlamasa, keyingi usulni sinab ko'ring va DNS keshini vaqtincha o'chirib qo'ying.

    1. Yangi yorliqni oching va Firefox manzil satriga about:config yozing.
    2. Network.dnsCacheExpiration ni toping, qiymatni vaqtincha 0 ga o'rnating va OK tugmasini bosing. Shundan so'ng, standart qiymatni o'zgartiring va OK tugmasini bosing.
    3. Network.dnsCacheEntries ni toping, qiymatni vaqtincha 0 ga o'rnating va OK tugmasini bosing. Shundan so'ng, standart qiymatni o'zgartiring va OK tugmasini bosing.

    Xulosa

    Siz Windows, Linux va MacOS operatsion tizimlarida DNS keshini tozalash yoki tozalashni o'rgandingiz.

    Linux va MacOS DNS so'rovi va DNS muammolarini bartaraf etish uchun dig buyrug'idan foydalanishi mumkin.

    Agar sizda biron bir savol yoki fikr-mulohaza bo'lsa, sharhlaringizni qoldiring.

Har yili Internet tezligi - ham oxirgi mil, ham asosiy kanallar - yuqori bo'lib bormoqda. Faqat bitta narsa doimiy - kechikish allaqachon jismoniy chegaralarga yetib borgan: optik toladagi yorug'lik tezligi sekundiga 200 ming kilometrni tashkil qiladi va shunga mos ravishda ~ 150 ms dan tezroq Atlantika okeani bo'ylab serverdan javobni qabul qilib bo'lmaydi. yaqin kelajak (garchi, albatta, havo yadroli optik tola yoki radiorele aloqasi kabi zavqlar mavjud, ammo bu oddiy odamlar uchun qiyin).

Biz, masalan, Rossiyadan AQShda joylashgan veb-saytni ochishga harakat qilsak (uning NS serverlari u erda bo'lishi mumkin) va domen provayderingizning DNS keshida topilmasa, biz uzoq vaqt kutishimiz kerak bo'ladi. gigabit Internet, ehtimol hatto bir soniya: biz okeanning narigi tomonida bo'lganimizda, biz domenning NS serverlarining nomlarini olamiz, ularning IP-ni hal qilamiz, DNS so'rovini o'zi yuboramiz va qabul qilamiz ...

Bir necha yil oldin Google o'zining umumiy DNS serverlarini ishga tushirdi va ularga o'tishni rag'batlantirish uchun ular NameBench nomli yordam dasturini ishlab chiqdilar, u sizning ko'rish tarixingizda DNS testlarini o'tkazadi va Google DNS provayderingizning DNS serveriga qaraganda qanchalik tez ekanligini ko'rsatadi.

Lekin men Google Public DNS dan tezroq ishlaydigan o'z DNS serverimni yaratishga muvaffaq bo'ldim va bu qisqa eslatmada men natijalarni baham ko'rmoqchiman.

PDNSD

pdnsd- DNS proksi-serverini keshlash. DNS so'rovlarini oddiy keshlashdan tashqari (minimal TTLni qat'iy belgilash qobiliyati bilan - bu juda yomon Internetda kerak bo'lishi mumkin), u bir vaqtning o'zida bir nechta "ota" DNS serverlariga so'rov yuborishi va mijozga birinchi qaytarilgan javob.

Aynan parallel so'rovning kiritilishi bizga tezlikda asosiy ustunlikni beradi, chunki Agar biron bir provayderning keshida natija topilsa, biz natijani juda tez olamiz va agar birinchi provayder keshda javob bo'lmasa, to'liq va sekin hal qilishni kutmaymiz.

Ubuntu'da banal apt-get yordamida o'rnatilgan.

Konfiguratsiyada bir nechta nuqta

global ( perm_cache=10240; //Keshning maksimal hajmi kilobaytlarda. //Sukut bo'yicha u 1024 edi, mening barcha yozuvlarim mos kelmadi. cache_dir="/var/cache/pdnsd"; [...] min_ttl=60m; // Yozuvni keshda saqlash uchun minimal vaqt. // TTL 60 daqiqadan kamroq vaqt ichida kelgan bo'lsa ham, u 60 daqiqa bo'ladi max_ttl=1w; // Keshda yozuvni saqlash uchun maksimal vaqt neg_ttl=5m; // Salbiy javoblarni keshlash vaqti (ya'ni, domen topilmasa) [..] par_queries=3; //Bir vaqtning o'zida so'ralgan "ota" DNS serverlar soni) server (yorliq = "asosiy"; ip = 85.21.192.5 //U erda 4 ta server, agar birinchi 3 tasi javob bermasa, so'rov 4-chi 213.234.192.7 ga yuboriladi //Birinchi 2 ta server provayderingizning serveri va ba'zilari qo'shnisi 8.8.4.4 //Bu Google Public DNS - ular kamdan-kam hollarda hamma narsani keshlaydi va tezda hal qiladi, 8.8.8.8; [..] )

Asosan, keshlash kamroq tajovuzkor bo'lishi mumkin (masalan, min_ttl = 1m), lekin bir yillik operatsiya davomida hech qanday maxsus muammolar yuzaga kelmadi. Muammolar bo'lsa, ixtiyoriy ravishda keshdan bitta yozuvni o'chirib tashlashingiz mumkin:
sudo pdnsd-ctl rekord 3.14.by o'chirish yoki barchasini birdaniga:
sudo pdnsd-ctl bo'sh kesh

NameBench-da test natijalari



Ko'ramizki, 50% so'rovlar uchun biz 10 ms dan kamroq vaqt ichida javob olamiz, 85% uchun Google Public DNS tezroq va keyin natijalar tabiiy ravishda Google bilan mos keladi.

Test natijalariga ko'ra, NameBench bizga mamnuniyat bilan xabar beradi:

8.8.8.8 SYS-192.167.0.98 sekinroq nusxasi 8.8.4.4 SYS-192.167.0.98 sekinroq nusxasi

Shunday qilib, parallel so'rovlarga ega aqlli keshlash DNS proksi-serveri hatto 100 megabitli Internetni tezlashtirishga imkon beradi. Va yuqori kechikish va paketlarni yo'qotish bilan sekin (radio) aloqalar uchun farq osmon va yer kabi bo'lishi mumkin.

Agar eslashimiz kerak bo'lsa, qanday bo'lishini tasavvur qiling IP- biz har kuni foydalanadigan barcha veb-saytlarning manzillari. Agar bizda ajoyib xotira bo'lsa ham, veb-saytga o'tish jarayoni kulgili darajada sekin va mashaqqatli bo'lar edi.

Agar bir nechta veb-saytlarga tashrif buyurishimiz yoki bitta kompyuterda yoki virtual xostda joylashgan bir nechta ilovalardan foydalanishimiz kerak bo'lsa-chi? Bu tasavvur qilish mumkin bo'lgan eng yomon bosh og'riqlardan biri bo'ladi - o'zgarish ehtimoli haqida gapirmasa ham bo'ladi. IP-oldindan ogohlantirmasdan veb-sayt yoki ilova bilan bog'liq manzillar.

Bir muncha vaqt o'tgach, Internet yoki intranetlardan foydalanishni to'xtatish uchun bu haqda o'ylashning o'zi kifoya.

Bu domen nomlari tizimisiz dunyo (shuningdek DNS). Yaxshiyamki, ushbu xizmat yuqorida aytib o'tilgan barcha muammolarni hal qiladi, hatto o'rtasidagi aloqa IP-manzil va domen nomini o'zgartirish.

Shu sababli, ushbu maqolada biz oddiy sozlash va undan foydalanishni o'rganamiz DNS-server, domen nomlarini tarjima qilish imkonini beruvchi xizmat IP-manzillar va aksincha.

DNS nomlari ruxsati

Tez-tez o'zgartirilmaydigan kichik tarmoqlar uchun fayl /etc/hosts hal qilish uchun domen nomini aniqlash uchun oddiy usul sifatida foydalanish mumkin IP-manzillar.

Bu fayl juda oddiy sintaksisdan foydalanib, nomni (va/yoki taxallusni) bog'lash imkonini beradi. IP-manzil. Bu quyidagicha amalga oshiriladi:

Masalan,

192.168.0.1 shlyuz gateway.mydomain.com 192.168.0.2 web web.mydomain.com

Shu tarzda siz veb-mashinaga ismingiz bilan murojaat qilishingiz mumkin web.mydomain.com, yoki unga ko'ra IP-manzil.

Katta tarmoqlar yoki fayldan foydalangan holda tez-tez o'zgarib turadiganlar uchun /etc/hosts domen nomlarini hal qilish uchun IP-manzillar maqbul yechim bo'lmaydi. Bu erda maxsus xizmatga ehtiyoj paydo bo'ladi.

Keling, ish sahnasiga o'taylik DNS. DNS-server ildizdan boshlanadigan daraxt ko'rinishidagi katta ma'lumotlar bazasini so'raydi ( «.» ) zonalari.

Quyidagi rasm nima haqida gapirayotganimizni tushunishga yordam beradi:

Yuqoridagi rasmda ildiz zonasi ko'rsatilgan (.) o'z ichiga oladi com, ta'lim Va to'r birinchi darajali domenlar. Ushbu domenlarning har biri bitta yirik markaziy domenga qaram bo'lmaslik uchun turli tashkilotlar tomonidan boshqariladi (yoki bo'lishi mumkin). Bu ierarxiya bo'ylab so'rovlarni to'g'ri taqsimlash imkonini beradi.

Keling, nima bo'lishini ko'rib chiqaylik:

1. Mijoz so'rov yuborganda DNS- uchun server web1.sales.me.com, server yuqoriga (ildiz) so'rov yuboradi DNS-so'rovni zonadagi nom serveriga yo'naltiruvchi server .com.

Bu o'z navbatida keyingi darajadagi nom serveriga so'rov yuboradi (zonasida me.com), keyin esa sales.me.com. Bu jarayon to'liq malakali domen nomi (FQDN, web1.sales.me.com bu misolda) u joylashgan zonaning nom serveri tomonidan qaytarilmaydi.

2. Ushbu misolda nom serveri sales.me.com manzili uchun javobgar web1.sales.me.com va domen nomi uchun kerakli assotsiatsiyani qaytaradi - IP va boshqa ma'lumotlar (agar u buning uchun tuzilgan bo'lsa).

Bu ma'lumotlarning barchasi manbaga yuboriladi DNS-server, keyin uni so'ragan mijozga qaytaradi. Kelgusi bir xil so'rovlar uchun bir xil qadamlarni takrorlamaslik uchun so'rov natijalari saqlanadi DNS-server. Bu odatda bunday sozlama deb ataladigan muhim jihatdir rekursiv keshlash DNS serverini sozlash.

DNS serverini o'rnatish va sozlash

IN Linux eng ko'p ishlatiladi DNS- server bog'lash(Berkli Internet nomi Daemonning qisqartmasi), uni quyidagicha o'rnatish mumkin:

# yum install bind bind-utils # zypper install bind bind-utils # aptitude install bind9 bind9utils

Biz o'rnatganimizdan keyin bog'lash va tegishli yordamchi dasturlarni o'zgartirishdan oldin konfiguratsiya faylining nusxasini oling:

# cp /etc/named.conf /etc/named.conf.orig # cp /etc/bind/named.conf /etc/bind/named.conf.orig

Keyin ochamiz nomli.conf va parametrlar blokiga o'ting, bu erda biz rekursiv keshlash serveri uchun quyidagi sozlamalarni belgilashimiz kerak. IP 192.168.0.18/24, unga faqat bitta tarmoqdagi xostlar kirishi mumkin (xavfsizlik chorasi sifatida).

Oldinga zona opsiyalari domenimizdan tashqaridagi xostlar uchun qaysi nom serverlarini birinchi bo‘lib so‘rash kerakligini belgilash uchun ishlatiladi (quyidagi misolda biz Google nom serverlaridan foydalanamiz):

Variantlar (... tinglash porti 53 ( 127.0.0.1; 192.168.0.18); ruxsat berish so‘rovi (localhost; 192.168.0.0/24; ); rekursiya ha; ekspeditorlar (8.8.8.8; 8.8.4.4; ); . ..)

Variantlar blokidan tashqarida biz zonamizni aniqlaymiz sales.me.com(Ubuntuda bu odatda alohida faylda amalga oshiriladi nomli.conf.local), u berilgan bilan domenni ko'rsatadi IP-moslashish uchun manzil va teskari zona IP-tegishli hududga manzillar.

Biroq, har bir zonaning haqiqiy konfiguratsiyasi fayl direktivasida ko'rsatilganidek, alohida fayllarda amalga oshiriladi ("master" biz faqat bitta DNS serveridan foydalanishimizni anglatadi).

Faylga quyidagi qatorlarni qo'shing nomli.conf:

"sales.me.com" zonasi. IN (magistr turi; fayl "/var/named/sales.me.com.zone"; ); zona "0.168.192.in-addr.arpa" IN ( master turi; fayl "/var/named/0.162.198.in-addr.arpa.zone"; );

shu esta tutilsinki inaddr.arpa(IPv4 manzillari uchun) va ip6.arpa(IPv6 uchun) teskari zona konfiguratsiyasi uchun konventsiyalardir.

Yuqoridagi o'zgarishlarni saqlangandan so'ng nomli.conf biz quyidagi kabi xatolarni tekshirishimiz mumkin:

# named-checkconf /etc/named.conf

Agar biron bir xato topilsa, yuqoridagi buyruq sabab va ular topilgan qator bilan ma'lumot xabarini ishlab chiqaradi. Aks holda, u hech narsani qaytarmaydi.

DNS zonalarini sozlash

Fayllarda /var/named/sales.me.com.zone Va /var/named/0.168.192.in-addr.arpa.zone biz oldinga (domen → IP manzil) va teskari (IP manzil → domen) zonalarini sozlaymiz.

Avval to'g'ridan-to'g'ri konfiguratsiyani ko'rib chiqaylik:

1. Faylning yuqori qismida siz bilan boshlanadigan qatorni topasiz TTL(Yashash vaqti uchun qisqa), bu keshlangan javob yangi so'rov natijalari bilan almashtirilgunga qadar qancha vaqt yashashi kerakligini belgilaydi.

Quyidagi qatorda biz o'z domenimizga havola qilamiz va bildirishnomalar yuborilishi kerak bo'lgan elektron pochta manzilini ko'rsatamiz (iltimos, shuni unutmangki, root.sales.me.com anglatadi ).

2. Yozib olish SOA(Start of Authority) ushbu tizim domen ichidagi mashinalar uchun vakolatli nom serveri ekanligini bildiradi. sales.me.com.

Agar sizda ikkita nom serveringiz bo'lsa (bitta asosiy va bitta tobe), har bir domen uchun quyidagi sozlamalar talab qilinadi (garchi bu bizning holatimizda emas, chunki imtihonda talab qilinmaydi, ular ma'lumot uchun bu erda keltirilgan):

Serial zonani aniqlash faylining bir versiyasini avvalgisidan ajratish uchun ishlatiladi (parametrlar o'zgartirilgan bo'lishi mumkin). Agar keshlangan javob boshqasi bilan chiqishga ishora qilsa Serial, so'rov mijozga qaytarilish o'rniga yana bajariladi.

To'g'ri (ikkilamchi) nom serveri bilan o'rnatishda Yangilash ikkilamchi server asosiy serverdan yangi seriya raqamini tekshirishi kerak bo'lgan vaqtni belgilaydi.

Bundan tashqari, Qayta urinish Agar birlamchidan javob olinmasa, ikkinchi darajali birlamchi bilan qanchalik tez-tez bog'lanishga harakat qilishi kerakligini serverga aytadi, holbuki Muddati tugaydi birlamchi serverdan javob olishning iloji bo'lmaganidan keyin ikkilamchi rejimdagi zona ta'rifi endi haqiqiy emasligini va salbiy TTL mavjud bo'lmagan domen keshlanmagan vaqt ( NXdomeni).

3. N.S.-kirish uning vakolatli ekanligini bildiradi DNS-domenimiz uchun server (bu satr boshida @ belgisi bilan ko'rsatilgan).

4. Yozib olish A(IPv4 manzillari uchun) yoki AAAA(IPv6 manzillari uchun) nomlarni hal qiladi IP-manzillar.

Quyidagi misolda:

Dns: 192.168.0.18 (DNS serverining o'zi) web1: 192.168.0.29 (sales.me.com zonasi ichidagi veb-server) mail1: 192.168.0.28 (sales.me.com zonasi ichidagi pochta serveri) mail2: 192.116 .0.30 (boshqa pochta serveri)

5. Yozib olish MX ushbu domen uchun vakolatli pochta uzatish agentlari (MTA) nomlarini belgilaydi. Xost nomidan oldin ikkita yoki undan ko'p bo'lsa, joriy pochta serveri ega bo'lishi kerak bo'lgan ustuvorlikni ko'rsatadigan raqam bo'lishi kerak. MTA quyidagi misolda domen uchun (qiymat qanchalik past bo'lsa, ustuvorlik shunchalik yuqori bo'ladi), pochta 1 asosiy hisoblanadi, esa pochta 2 ikkinchi darajali hisoblanadi MTA).

6. Yozib olish CNAME xost (web1) uchun taxallus (www.web1) o'rnatadi.

MUHIM: nuqta mavjudligi muhim (.) ismlarning oxirida.

$TTL 604800 @ SOA sales.me.com saytida. root.sales.me.com. (2016051101; Seriya 10800; Yangilash 3600; Qayta urinish 604800; Muddati 604800) ; Salbiy TTL; @ IN NS dns.sales.me.com. dns IN A 192.168.0.18 web1 IN A 192.168.0.29 mail1 IN A 192.168.0.28 mail2 IN A 192.168.0.30 @ IN MX 10 mail1.sales.me.com. @ IN MX 20 mail2.sales.me.com. www.web1 CNAME web1 da

Keling, teskari zona konfiguratsiyasini ko'rib chiqaylik (/var/named/0.168.192.in-addr.arpa.zone). Yozib olish SOA oldingi faylda bo'lgani kabi, oxirgi uchta satr esa yozuv bilan PTR(ko'rsatkich) xost manzilidagi oxirgi oktetni ko'rsating IPv4 pochta 1, veb1 Va pochta 2(mos ravishda 192.168.0.28, 192.168.0.29 va 192.168.0.30).

$TTL 604800 @ SOA sales.me.com saytida. root.sales.me.com. (2016051101; Seriya 10800; Yangilash 3600; Qayta urinish 604800; Muddati 604800) ; Minimal TTL @ IN NS dns.sales.me.com. 28 IN PTR mail1.sales.me.com. 29 PTR IN web1.sales.me.com. 30 IN PTR mail2.sales.me.com.

Siz zona fayllarini xatolar uchun tekshirishingiz mumkin:

# named-checkzone sales.me.com /var/named/sales.me.com.zone # named-checkzone 0.168.192.in-addr.arpa /var/named/0.168.192.in-addr.arpa.zone

Quyidagi skrinshot kutilgan natijani ko'rsatadi:

Aks holda, siz xato xabari va uni qanday hal qilish bo'yicha maslahat olasiz:

Asosiy konfiguratsiya fayli va zona fayllarini tekshirganingizdan so'ng, o'zgarishlarni qo'llash uchun nomlangan xizmatni qayta ishga tushiring.

IN CentOS Va openSUSE qiling:

# systemctl qayta ishga tushirish deb nomlangan

Va uni qo'shishni unutmang:

# systemctl yoqish nomi

IN Ubuntu:

$ sudo xizmati bind9 qayta ishga tushirildi

Nihoyat, siz asosiy tarmoq interfeyslari konfiguratsiyasini tahrirlashingiz kerak bo'ladi:

CentOS va openSUSE uchun /etc/sysconfig/network-scripts/ifcfg-enp0s3 da ---- DNS1=192.168.0.18 ---- Ubuntu uchun /etc/network/interfaces da ---- dns-nameservers 192.168.0.18

Endi o'zgarishlarni qo'llash uchun tarmoq xizmatini qayta ishga tushiring.

DNS server sinovi

Ayni paytda biz talab qilishga tayyormiz DNS-mahalliy va tashqi nomlar va manzillar uchun server. Quyidagi buyruqlar qaytib keladi IP-xost bilan bog'langan manzil veb1:

# host web1.sales.me.com # host web1 # host www.web1

Elektron pochta xabarlarini kim uchun qayta ishlayotganini qanday aniqlashimiz mumkin sales.me.com? Buni bilish oson - faqat yozuvlarni so'rang MX domen uchun:

# xost -t mx sales.me.com

Xuddi shunday, teskari so'rovni bajaramiz. Bu bizga ismni aniqlashga yordam beradi IP-manzillar:

# xost 192.168.0.28 # xost 192.168.0.29

Siz tashqi xostlar uchun bir xil amallarni sinab ko'rishingiz mumkin:

So'rovlar haqiqatan ham bizdan o'tishini ta'minlash uchun DNS-server, keling, jurnalga kirishni yoqaylik:

#rndcquerylog

Va faylni tekshiring /var/log/messages(CentOS va openSUSE da):

# xost -t mx linux.com # xost 8.8.8.8

Jurnalni o'chirish uchun DNS, yana kiriting:

#rndcquerylog

IN Ubuntu Jurnalga kirishni yoqish uchun siz quyidagi mustaqil blokni (variantlar bloki bilan bir xil darajadagi) qo'shishingiz kerak bo'ladi /etc/bind/named.conf:

Jurnallar (kanal so'rovlari jurnali ("/var/log/bind9/query.log" fayli; jiddiylik dinamikasi; bosib chiqarish toifasi ha; chop etish jiddiyligi ha; chop etish vaqti ha; ); kategoriya so'rovlari ( query_log; ); );

E'tibor bering, jurnal fayli mavjud bo'lishi va nomi bilan yozilishi kerak.

Natijalar

Ushbu maqolada biz asosiy rekursiv, keshlashni qanday o'rnatishni tushuntirdik DNS-server va domen uchun zonalarni qanday sozlash.

Sizning to'g'ri ishlashini ta'minlash uchun DNS-serverda ushbu xizmatni xavfsizlik devorida (TCP port 53) ("Xizmatlarga masofaviy kirishni yoqish uchun Iptables xavfsizlik devorini sozlash") tavsiflanganidek yoqishni unutmang.

.

Ish bilan Cisco va Linux kurslari!

Ariza topshirishga shoshiling! Bir-ikkita joy qoldi. Guruhlar boshlanadi 22 iyul, va keyingisi 19 avgust, 23 sentyabr, 21 oktyabr, 25 noyabr, 16 dekabr, 20 yanvar, 24 fevral.

Nima olasiz?

  • Biz sizga tarmoq boshqaruvi bo'yicha mutaxassis bo'lishingizga va Cisco CCNA Routing & Switching yoki Linux LPI xalqaro sertifikatlarini olishga yordam beramiz.
  • Biz Cisco Networking Academy va Linux Professional Institute ekspertlari, sertifikatlangan o'qituvchilar va shaxsiy o'qituvchi tomonidan tasdiqlangan dastur va darslikni taklif qilamiz.
  • Biz sizga ish topish va martaba qurishda yordam beramiz. Bitiruvchilarimizning 100 foizi ish bilan ta’minlangan.

Trening qanday ketmoqda?

  • Biz kechki onlayn ma'ruzalarni platformamizda o'tkazamiz yoki Kiyev ofisida shaxsan o'qiymiz.
  • Biz sizdan mashq qilish va moslashish uchun qulay vaqt haqida so'raymiz: biz o'qish uchun oz vaqt borligini tushunamiz.
  • Agar siz individual jadvalni xohlasangiz, biz uni muhokama qilamiz va amalga oshiramiz.
  • O'z-o'zini tashkil qilish uchun aniq muddatlarni belgilaymiz. Shaxsiy rahbar savollarga javob berish, maslahat berish va imtihon muddatiga rioya qilishga undash uchun bog'lanadi.

Biz sizga ham yordam beramiz:

DNS-ning maqsadi odamlar uchun eslab qolish oson bo'lgan domen nomlarini kompyuterlar tushunadigan IP-manzillarga tarjima qilishdir, bu jarayon nomlarni aniqlash deb ataladi. O'zimizning keshlash DNS serverimizni o'rnatish bizga nima beradi? Bu saytlarning javobini biroz tezlashtiradi + Linux NetBios nomlarini juda yaxshi qabul qilmaydi, lekin ba'zida siz mahalliy tarmoq ichida kompyuterlar yoki printerlarni topishingiz kerak bo'ladi, lekin siz buni nom bilan qilishni xohlaysiz.

IP manzillarini eslab qolish qulay emas va doimiy ravishda DHCP server jurnaliga qarash ham bizning usulimiz emas. Aynan shunday holatlar uchun sizga mahalliy tarmoqda DNS kerak bo'ladi. Bind9 to'plamini o'rnatishning o'zi qiyin emas, nosozliklar odatda uning konfiguratsiyasi bosqichida paydo bo'ladi, chunki Oson o'qilishi mumkin bo'lgan tizim konfiguratsiya fayllaridan so'ng, odam tushunarsiz sintaksisga duch keladi, aytmoqchi, S dasturlash tiliga juda o'xshash. server mahalliy tarmoq ichida ishlaydi, uni chroot muhitiga o'tkazish mantiqiy emas va butun sozlash juda oz vaqtni oladi. Bu bilan lirik qism tugallanishi mumkin, keling, o'rnatish va sozlashga o'tamiz.

Keling, Bind9 DNS serverini o'rnatamiz:

# apt - bind9 ni o'rnating

Tugatish, yuklab olish va o'rnatishdan so'ng biz uning konfiguratsiya faylini tahrirlashimiz kerak:

#vim /etc/bind/named. konf. variantlari

Biz bo'limni topamiz, u konfiguratsiya faylining eng boshida joylashgan, bundan tashqari u erda boshqa hech narsa yo'q ...

variantlar ("/var/cache/bind" katalogi; // Agar siz va siz xohlagan nom serverlari o'rtasida xavfsizlik devori mavjud bo'lsa// gaplashish uchun bir nechta ruxsat berish uchun xavfsizlik devorini tuzatishingiz kerak bo'lishi mumkin// gapirish uchun portlar. http://www.kb.cert.org/vuls/id/800113 ga qarang// Agar provayderingiz barqaror ishlash uchun bir yoki bir nechta IP manzillarni taqdim etgan bo'lsa// nom serverlari, ehtimol siz ularni ekspeditor sifatida ishlatmoqchisiz.// Quyidagi blokni izohdan olib tashlang va o'rniga manzillarni kiriting// barcha 0 ning to'ldiruvchisi. // ekspeditorlar ( // 0.0.0.0; // ); auth - nxdomain raqami ; # RFC1035 ga mos tinglash - v6 (har qanday ; ); );

Ekspeditorlar bo'limi, agar o'z ma'lumotlar bazasida bo'lmasa, nomni aniqlash uchun DNS so'rovi qayerga yuborilishi uchun javobgardir. So'nggi paytlarda men umuman xursand bo'lmayman, bu serverlarning provayder bilan ishi nima uchun siz uchinchi tomon serverlarini ulashingiz mumkin, masalan, Google serverlari, IP 8.8.8.8 ni eslab qolish juda oson, men uning misolidan foydalanaman. uni sozlang, lekin hech kim sizni eng yaxshi ko'rganlarini ishlatish uchun bezovta qilmaydi.

Biz bo'limni tahrir qilamiz, avval siz undan sharhlarni olib tashlashingiz va uchinchi tomon DNS-ni qo'shishingiz kerak, agar bir nechta serverlarni qo'shish kerak bo'lsa, masalan, Google serveri sizning so'rovlaringizga bardosh bera olmasa va ishlamay qolsa :), keyin Boshqa serverlarning IP-manzillari ustunga yozilishi mumkin, keyin siz xatolarga chidamliligini oshirishingiz mumkin.

ekspeditorlar (8.8.8.8; 193.58.251.251; //Rus DNS xizmati -SkyDNS};

Ushbu bo'limda faylda ko'rsatgan server IP-ni kiritish yaxshiroqdir /etc/resolv.conf yoki bo'limga kiriting nom serveri bu IP. O'zgarishlarni saqlang va chiqing. Serverni qayta ishga tushiring va tekshiring. Biz buyruq satriga yozamiz nslookup mail.ru
Chiqarish kerak:

Vakolatli bo'lmagan javob: Ism: pochta. ru Manzillar: 94.100.191.202

Bu shuni ko'rsatadiki, bizning serverimiz ushbu zonaga xizmat ko'rsatishda asosiy server emas (mail.ru), lekin keshga qo'shilgan so'rovlar!
Endi biz tarmog'imiz uchun DNS zonasini yaratishimiz kerak, shunda mashinalar turli xil tarmoq xizmatlarini topishlari mumkin - masalan, tarmoq printerlari bo'lishi mumkin, ular mustaqil yoki boshqa ish stantsiyalarida bo'lishi mumkin.
Bizning zonamizni orgname deb atash mumkin - ya'ni. Tashkilot nomi.
Avvalo, biz zona yaratamiz, buning uchun biz tahrir qilamiz nomli.conf.local

#vim /etc/bind/named. konf. mahalliy

va unga quyidagilarni qo'shing:

zona "orgname" (tur master ; fayl "/etc/bind/db.orgname"; );

Saqlash va chiqish
Endi biz zona konfiguratsiya faylini yaratishimiz kerak

# vim / etc / bog'lash / db. tashkilot nomi

va unga quyidagilarni qo'ying:
(Iltimos, konfiguratsiya faylining sintaksisiga e'tibor bering, hatto nuqtalar ham ma'noga ega)

@IN SOA tashkilot nomi. ildiz. tashkilot nomi. (20101015 4 soat; yangilanish vaqti - 4 soat 1 soat; har soatda 1 soat takrorlang; ma'lumotni qancha vaqt saqlash kerak - 1 hafta 1 d); Rekordning TTL (yashash vaqti) 1 kun @ IN NS orgname. ; nom server nomi @ IN A 192.168.10.1; A - yozuv - ushbu zonaga xizmat ko'rsatadigan DNS serverimizning IP manzili, @ bu ildiz zonasi ekanligini anglatadi. * IN CNAME @ printer IN A 192.168.10.25; 192.168.10.25 da joylashgan tarmoq printeri uchun DNS yozuvini yaratishingiz mumkin

Endi, yangi tarmoq qurilmasini qo'shganda, siz ikkita narsani qilishingiz kerak:
1) DHCP serverida IP-manzilni zaxiralang, buni qanday qilish haqida maqolada o'qishingiz mumkin - DHCP serverini sozlash
2) Ushbu IP uchun DNS zonasini yarating, qurilma nomini IN A XXX.XXX.XXX.XXX kiriting. Bu erda: qurilma nomi - qurilmaning tarmoq nomi; XXX.XXX.XXX.XXX - bu DHCP serverida saqlangan uning IP manzili.

endi resolv.conf faylini tahrirlashimiz kerak

# vim / etc / resolv. konf

va u yerga kiring:

nom serveri 127.0.0.1

U erda bo'lgan hamma narsani # qo'yish orqali izohlash mumkin
server qayta ishga tushadi

# qayta ishga tushirish

Bu shunday qilinganki, server o'z ma'lumotlar bazasida hamma narsani qidiradi va shundan keyingina BIND so'rovlarni IP direktivaga kiritilgan 8.8.8.8 IP serveriga yo'naltiradi. ekspeditorlar.
Endi siz funksionallikni tekshirishingiz mumkin:
Agar test Windows ostida amalga oshirilsa:

ping qurilma nomi. tashkilot nomi

Agar biz Linuxdan sinab ko'rsak:

ping qurilma nomi. tashkilot nomi - c 4

Pinglar XXX.XXX.XXX.XXX o‘rniga siz ko‘rsatgan IP manziliga o‘tishi kerak

Buyruq yordamida so'rovlarni qayta ishlash tezligini ham tekshirishingiz mumkin qazish

# dig @127.0.0.1 tut.by ;<<>> DiG 9.9.5-9+deb8u6-Debian<<>> @127.0.0.1 tut.by ; (1 ta server topildi) ;; global variantlar: +cmd ;; Javob oldim: ;; ->>SALOV<<- opcode: QUERY, status: NOERROR, id: 63893 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 13, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;tut.by. IN A ;; ANSWER SECTION: tut.by. 103 IN A 178.172.160.5 tut.by. 103 IN A 178.172.160.4 tut.by. 103 IN A 178.172.160.2 tut.by. 103 IN A 178.172.160.3 ;; AUTHORITY SECTION: . 6029 IN NS i.root-servers.net. . 6029 IN NS b.root-servers.net. . 6029 IN NS m.root-servers.net. . 6029 IN NS k.root-servers.net. . 6029 IN NS e.root-servers.net. . 6029 IN NS d.root-servers.net. . 6029 IN NS j.root-servers.net. . 6029 IN NS g.root-servers.net. . 6029 IN NS l.root-servers.net. . 6029 IN NS f.root-servers.net. . 6029 IN NS h.root-servers.net. . 6029 IN NS a.root-servers.net. . 6029 IN NS c.root-servers.net. ;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Tue Mar 22 16:46:24 MSK 2016 ;; MSG SIZE rcvd: 310

DNS (domen nomlari tizimi) veb-saytlar va serverlarning ishlashi uchun zarur bo'lgan muhim va sozlash juda qiyin komponent hisoblanadi. Ko'pgina foydalanuvchilar o'zlarining hosting provayderlari tomonidan taqdim etilgan DNS serverlaridan foydalanadilar, ammo o'z DNS serverlariga egalik qilish ba'zi afzalliklarga ega.

Ushbu qo'llanmada siz Bind9-ni qanday o'rnatishni va uni Ubuntu 14.04 serverida keshlash yoki yo'naltiruvchi DNS serveri sifatida sozlashni o'rganasiz.

Talablar

  • DNS serverlarining asosiy turlarini tushunish. Batafsil ma'lumotni quyidagi manzilda bilib olishingiz mumkin.
  • Ikkita mashina, ulardan kamida bittasi Ubuntu 14.04 bilan ishlaydi. Birinchi mashina mijoz (IP-manzil 192.0.2.100), ikkinchisi esa DNS-server (192.0.2.1) sifatida sozlanadi.

Siz DNS server orqali so'rovlarni yuborish uchun mijoz mashinasini qanday sozlashni o'rganasiz.

DNS serverini keshlash

Ushbu turdagi serverlar rekursiv so'rovlarni qayta ishlovchi va odatda boshqa serverlardan DNS ma'lumotlarini qidirishi mumkin bo'lganligi uchun rezolyutorlar deb ham ataladi.

Keshlash DNS serveri mijoz so'roviga javobni nazorat qilganda, u javobni mijozga qaytaradi va tegishli DNS yozuvlarining TTL qiymati bilan ruxsat etilgan vaqt davomida uni keshda saqlaydi. Keyinchalik keshdan so'rovni qayta ishlashning umumiy vaqtini tezlashtirish uchun keyingi so'rovlarga javoblar manbai sifatida foydalanish mumkin.

Tarmoq konfiguratsiyasidagi deyarli barcha DNS-serverlar serverlarni keshlaydi. DNS-serverni keshlash ko'p holatlar uchun yaxshi tanlovdir. Agar siz xosting provayderingizning DNS serverlariga yoki boshqa umumiy DNS serverlariga tayanishni istamasangiz, o'zingizning keshlash DNS serveringizni sozlang. DNS-serverdan mijoz mashinalarigacha bo'lgan masofa qanchalik qisqa bo'lsa, DNS so'rovlariga xizmat ko'rsatish vaqti shunchalik qisqa bo'ladi.

DNS serverini yo'naltirish

Mijoz nuqtai nazaridan, yo'naltiruvchi DNS server keshlash serveri bilan deyarli bir xil ko'rinadi, ammo mexanizmlar va ish yuki butunlay boshqacha.

Yo'naltiruvchi DNS serveri keshlash serveri bilan bir xil afzalliklarga ega. Biroq, u aslida hech qanday rekursiv so'rovlarni bajarmaydi. Buning o'rniga, u barcha so'rovlarni tashqi rezolyutsiya serveriga yo'naltiradi va keyin keyingi so'rovlar uchun natijalarni keshlaydi.

Bu qayta yo'naltiruvchi serverga rekursiv so'rovlarni qayta ishlamasdan turib keshdan so'rovlarga xizmat ko'rsatish imkonini beradi. Shunday qilib, bu server faqat bitta so'rovlarni (mijozning qayta yo'naltirilgan so'rovlari) qayta ishlaydi va butun rekursiya protsedurasini emas. Bu tashqi tarmoqli kengligi cheklangan muhitlarda, keshlash serverlarini tez-tez o'zgartirish kerak bo'lgan va mahalliy so'rovlarni bir serverga va tashqi so'rovlarni boshqasiga yo'naltirish kerak bo'lgan holatlarda afzallik bo'lishi mumkin.

1: DNS serveriga Bind-ni o'rnating

Bind paketini rasmiy Ubuntu omborida topish mumkin. Paket indeksingizni yangilang va apt menejeri yordamida Bind-ni o'rnating. Bundan tashqari, bir nechta bog'liqlikni o'rnatishingiz kerak.

sudo apt-get yangilanishi
sudo apt-get install bind9 bind9utils bind9-doc

Shundan so'ng siz serverni sozlashni boshlashingiz mumkin. Keshlash serveri konfiguratsiyasi yo'naltiruvchi serverni sozlash uchun shablon sifatida ishlatilishi mumkin, shuning uchun avval keshlash DNS serverini sozlashingiz kerak.

2: keshlash DNS serverini sozlash

Avval Bind-ni keshlash DNS serveri sifatida sozlashingiz kerak. Ushbu konfiguratsiya serverni boshqa DNS serverlarida mijoz so'rovlariga javob izlashga majbur qiladi. U javob topmaguncha barcha mos keladigan DNS serverlarini ketma-ket so'raydi.

Bind konfiguratsiya fayllari /etc/bind katalogida saqlanadi.

Ko'pgina fayllarni tahrirlash shart emas. Asosiy konfiguratsiya fayli nomli.conf deb ataladi (nomlangan va bog'langan bir xil dastur uchun ikkita nom). Bu fayl nomli.conf.options, named.conf.local va named.conf.default-zones fayllariga havola qiladi.

Keshlash DNS serverini sozlash uchun siz faqat name.conf.options ni tahrirlashingiz kerak.

sudo nano nomli.conf.options

Ushbu fayl quyidagicha ko'rinadi (soddalik uchun izohlar o'tkazib yuborilgan):

variantlari (
"/var/cache/bind" katalogi;
dnssec-validatsiya avtomatik;

v6-da tinglash (har qanday; );
};

Keshlash serverini o'rnatish uchun siz kirishni boshqarish ro'yxatini yoki ACLni yaratishingiz kerak.

Siz tajovuzkorlardan rekursiv so'rovlarni qayta ishlaydigan DNS serverini himoya qilishingiz kerak. DNS kuchaytirish hujumlari ayniqsa xavflidir, chunki ular serverni tarqatilgan rad etish hujumlariga jalb qilishi mumkin.

DNS kuchaytirish hujumlari serverlar va veb-saytlarni buzishning bir usuli hisoblanadi. Buning uchun tajovuzkorlar rekursiv so'rovlarni qayta ishlaydigan umumiy DNS serverlarini topishga harakat qilishadi. Ular jabrlanuvchining IP-manzilini aldashadi va DNS serveriga juda katta javob qaytaradigan so'rov yuboradilar. Bunday holda, DNS server kichik so'rovga javoban jabrlanuvchining serveriga juda ko'p ma'lumotlarni qaytaradi, bu esa tajovuzkorning mavjud o'tkazish qobiliyatini oshiradi.

Ommaviy rekursiv DNS serverini joylashtirish ehtiyotkorlik bilan konfiguratsiya va boshqaruvni talab qiladi. Serveringizni buzib kirishining oldini olish uchun server ishonishi mumkin bo'lgan IP manzillar yoki tarmoq diapazonlari ro'yxatini sozlang.

Variantlar blokidan oldin acl blokini qo'shing. ACL guruhi uchun yorliq yarating (ushbu qo'llanmada guruh yaxshi mijozlar deb ataladi).

acl yaxshi mijozlari (
};
variantlari (
. . .

Ushbu blokda ushbu DNS serveriga kirish huquqiga ega bo'lgan IP manzillar yoki tarmoqlarni ro'yxatlang. Server va mijoz /24 quyi tarmog'ida ishlayotganligi sababli siz ushbu quyi tarmoqqa kirishni cheklashingiz mumkin. Bundan tashqari, avtomatik ravishda ulanadigan localhost va localnetlarni blokdan chiqarishingiz kerak.

acl yaxshi mijozlari (
192.0.2.0/24;
mahalliy xost;
mahalliy tarmoqlar;
};
variantlari (
. . .

Endi sizda xavfsiz mijoz ACL mavjud. Variantlar blokida so'rovlar hal qilishni sozlashni boshlashingiz mumkin. Unga quyidagi qatorlarni qo'shing:

variantlari (
"/var/cache/bind" katalogi;
rekursiya ha;

. . .

Variantlar bloki aniq rekursiyani faollashtiradi va keyin ACL dan foydalanish uchun ruxsat berish so'rovi opsiyasini sozlaydi. ACL guruhiga murojaat qilish uchun ruxsat-rekursiya kabi boshqa parametrdan ham foydalanishingiz mumkin. Rekursiya yoqilganda, allow-recursion rekursiv xizmatlardan foydalanishi mumkin bo'lgan mijozlar ro'yxatini belgilaydi.

Biroq, ruxsat berish-rekursiya o'rnatilmagan bo'lsa, Bind ruxsat-so'rov-kesh ro'yxatiga, keyin ruxsat-so'rovlar ro'yxatiga va nihoyat standart mahalliy tarmoqlar va localhost ro'yxatlariga qaytadi. Biz faqat keshlash serverini o'rnatayotganimiz sababli (uning o'z zonalari yo'q va so'rovlarni yo'naltirmaydi), ruxsat etilgan so'rovlar ro'yxati faqat rekursiya uchun amal qiladi. Bu ACLni aniqlashning eng keng tarqalgan usuli.

Faylni saqlang va yoping.

Bu keshlash DNS server konfiguratsiya fayliga qo'shilishi kerak bo'lgan barcha sozlamalar.

Eslatma: Agar siz faqat ushbu turdagi DNS dan foydalanmoqchi bo'lsangiz, konfiguratsiyalarni tekshirishga o'ting, xizmatni qayta ishga tushiring va mijozingizni sozlang.

3: Yo'naltiruvchi DNS serverini sozlash

Agar sizning infratuzilmangiz DNS-serverni yo'naltirish uchun mosroq bo'lsa, sozlashni biroz sozlashingiz mumkin.

Hozirda nomlangan.conf.options fayli quyidagicha ko'rinadi:

acl yaxshi mijozlari (
192.0.2.0/24;
mahalliy xost;
mahalliy tarmoqlar;
};
variantlari (
"/var/cache/bind" katalogi;
rekursiya ha;
ruxsat-so'rov (yaxshi mijozlar;);
dnssec-validatsiya avtomatik;
auth-nxdomain raqami; # RFC1035 ga mos keladi
v6-da tinglash (har qanday; );
};

DNS serverini mijozlarning ma'lum bir ro'yxati bilan cheklash uchun bir xil ACL dan foydalanishingiz mumkin. Biroq, bu server endi rekursiv so'rovlarni bajarishga harakat qilmasligi uchun konfiguratsiyani biroz o'zgartirishni talab qiladi.

Rekursiyani yo'q deb o'zgartirmang. Qayta yo'naltiruvchi server hali ham rekursiv xizmatlarni qo'llab-quvvatlaydi. Qayta yo'naltirish serverini sozlash uchun siz so'rovlarni qayta yo'naltiradigan keshlash serverlari ro'yxatini yaratishingiz kerak.

Bu options() blokida amalga oshiriladi. Birinchidan, siz unda yangi ekspeditorlar blokini yaratishingiz kerak, bu erda siz so'rovlarni yo'naltirmoqchi bo'lgan rekursiv nom serverlarining IP manzillari saqlanadi. Bunday holda, bular Google DNS serverlari bo'ladi (8.8.8.8 va 8.8.4.4):

. . .
variantlari (
"/var/cache/bind" katalogi;
rekursiya ha;
ruxsat-so'rov (yaxshi mijozlar;);
ekspeditorlar (

8.8.8.8;

8.8.4.4;

};
. . .

Olingan konfiguratsiya quyidagicha ko'rinadi:

acl yaxshi mijozlari (
192.0.2.0/24;
mahalliy xost;
mahalliy tarmoqlar;
};
variantlari (
"/var/cache/bind" katalogi;
rekursiya ha;
ruxsat-so'rov (yaxshi mijozlar;);
ekspeditorlar (
8.8.8.8;
8.8.4.4;
};
faqat oldinga;
dnssec-validatsiya avtomatik;
auth-nxdomain raqami; # RFC1035 ga mos keladi
v6-da tinglash (har qanday; );
};

Oxirgi o'zgarish dnssec parametriga tegishli. Joriy konfiguratsiya bilan va so'rovlar qayta yo'naltiriladigan DNS serverlarining sozlamalariga qarab, jurnallarda quyidagi xatolar paydo bo'lishi mumkin:

25-iyun 15:03:29 kesh nomi: “in-addr.arpa/DS/IN”ni hal qilishda xatolik (DS serverlarini ta’qib qilish): 8.8.8.8#53
25-iyun, 15:03:29 kesh nomi: “111.111.111.111.in-addr.arpa/PTR/IN”ni hal qilishda xatolik (yaroqli DS yo‘q): 8.8.4.4#53

Ularning oldini olish uchun siz dnssec-validation parametrini ha ga o'zgartirishingiz va dnssec-ni aniq yoqishingiz kerak.

. . .
faqat oldinga;
dnssec-yoqish ha;
dnssec-validatsiyasi ha;
auth-nxdomain raqami; # RFC1035 ga mos keladi
. . .

Faylni saqlang va yoping. Yo‘naltiruvchi DNS serverni sozlash tugallandi.

4: Sozlamalarni tekshiring va Bind-ni qayta ishga tushiring

Endi sozlamalar kutilganidek ishlashiga ishonch hosil qilishingiz kerak.

Konfiguratsiya fayllari sintaksisini tekshirish uchun quyidagilarni kiriting:

sudo nomli-checkconf

Agar fayllarda xatolik bo'lmasa, buyruq satri hech qanday chiqishni ko'rsatmaydi.

Agar xato xabari olsangiz, uni tuzating va qaytadan sinab ko'ring.

Keyin sozlamalarni yangilash uchun Bog'lash dasturini qayta ishga tushirishingiz mumkin.

sudo xizmati bind9 qayta ishga tushiriladi

Keyin server jurnallarini tekshirishingiz kerak. Serverda buyruqni ishga tushiring:

sudo tail -f /var/log/syslog

Endi yangi terminalni oching va mijoz mashinasini sozlashni boshlang.

5: Mijozni sozlash

Mijoz mashinasiga kiring. Mijoz sozlangan DNS serverining ACL guruhida ro'yxatga olinganligini tekshiring. Aks holda, DNS serveri ushbu mijozning so'rovlariga xizmat ko'rsatishni rad etadi.

Serverni nom serveriga yo'naltirish uchun /etc/resolv.conf faylini tahrirlang.

Bu erda kiritilgan o'zgarishlar faqat qayta ishga tushirilgunga qadar davom etadi, bu sinov uchun juda yaxshi. Sinov sozlamalari natijalaridan qoniqsangiz, ushbu sozlamalarni doimiy qilishingiz mumkin.

Sudo bilan faylni matn muharririda oching:

sudo nano /etc/resolv.conf

Faylda so'rovlarni hal qilish uchun foydalaniladigan DNS serverlari ro'yxati bo'lishi kerak. Buning uchun nom serveri direktivasidan foydalaning. Barcha joriy yozuvlarni sharhlang va DNS serveringizga ishora qiluvchi nom serveri qatorini qo'shing:

nom serveri 192.0.2.1
# nom serveri 8.8.4.4
# nom serveri 8.8.8.8
# nom serveri 209.244.0.3

Faylni saqlang va yoping.

Endi u toʻgʻri hal qilinganiga ishonch hosil qilish uchun test soʻrovini yuborishingiz mumkin.

Buning uchun ping dan foydalanishingiz mumkin:

ping -c 1 google.com
PING google.com (173.194.33.1) 56(84) bayt ma'lumotlar.
sea09s01-in-f1.1e100.net (173.194.33.1) dan 64 bayt: icmp_seq=1 ttl=55 vaqt=63,8 ms
--- google.com ping statistikasi ---
1 paket uzatildi, 1 ta qabul qilindi, paket yo'qolishi 0%, vaqt 0ms
rtt min/avg/max/mdev = 63,807/63,807/63,807/0,000 ms

Yuqoriga