A DNS-gyorsítótárazás beállítása a dnsmasq használatával az Ubuntu rendszeren

A DNSmasq használható a Linux disztribúciók DNS-kérelmeinek gyorsítótárazására. azonban ez egy kicsit kihívást jelenthet.

A DNS-gyorsítótár azért működik, hogy felgyorsítsa a DNS-keresési eljárást, amely a webhely tartománynevét a hozzá tartozó IP-címre konvertálja. Ha a hálózaton több felhasználó keresi fel ugyanazt a webhelycímet, a helyi DNS-gyorsítótár-kiszolgáló használata csökkentheti a web betöltéséhez szükséges időt.

Először nézzük meg, mi az a DNS-gyorsítótárazás.

Mi az a DNS-gyorsítótárazás?

A DNS-t az internet arra használja, hogy nyomon kövesse az összes nyilvánosan elérhető online webhelyet és a kapcsolódó IP-címeket. Összehasonlítható egy telefonkönyvvel. A DNS használata megakadályozza, hogy meg kell jegyeznünk az egyes webhelyek IP-címét, amely szükséges a hálózati infrastruktúra és az internetes oldalak közötti interakcióhoz.

Amikor arra kéri a keresőmotort, hogy jelenítsen meg egy weboldalt, valójában ez történik a színfalak mögött.

Bár a rendszer számos külső DNS-kiszolgálóhoz fér hozzá, a probléma az, hogy a DNS központi másolata még mindig felgyorsítja az átvitelt és a felbontást. Ekkor lép életbe a DNS-gyorsítótárazás.

Mielőtt elküldené a kérést a webre, a DNS-gyorsítótár kezeli az identitásfeloldást a közelmúltban és gyakran elért tartományokhoz, hogy ezzel sokkal jobban felgyorsítsa az eljárást.

A DNS-kiszolgálót akkor lehet elérni, amikor egy IP-címet tartománynévvé kell feloldani. Ez további terhelést jelenthet a DNS-kiszolgálón, különösen, ha a webhely egyszerre sok kérést kap.

A DNS-gyorsítótárat a DNS-kérések és a válaszidő csökkentésére használják. A megoldott IP-címek a gazdagép adataival együtt helyileg mentésre kerülnek. Ahelyett, hogy új DNS-lekérdezést kezdeményezne, az eredményt a rendszer a DNS-gyorsítótárból kéri le, amikor legközelebb meg kell oldani az IP-címet vagy a tartománynevet.

Hogyan segít a DNS-gyorsítótárazás a szakaszos DNS-megoldási problémák megoldásában az Amazon EC2 példányokon?

A Linux rendszerek többsége nem használ helyi DNS-gyorsítótárat. Ez azt jelenti, hogy minden DNS-kérést közvetlenül elküldenek az Amazon által biztosított mérvadó DNS-feloldónak, amely korlátozza az egyszerre feldolgozható kérések számát. DNS-feloldási problémák akkor fordulnak elő, ha sok a kérés.

A helyi DNS-gyorsítótár telepítése a rendszerben segít csökkenteni a CPU és a hálózat kihasználtságát, miközben megelőzi a DNS-feloldási hibákat. A helyi DNS-gyorsítótár válaszol a külső DNS-erőforrásokhoz, például az Amazon RDS-hez és az S3-hoz intézett lekérdezésekre.

  Hogyan működik a kijelzőn belüli ujjlenyomat-szkennelés?

A DHCP protokollt az Amazon VPC-hez csatlakoztatott Amazon EC2 példányai indításkor használják DNS-kiszolgáló címének kérésére.

Amikor az Amazon VPC-t használja virtuális magánfelhő létrehozásához, a Route 53 DNS Resolver hatékonyan használja a VPC-n található feloldót, hogy válaszoljon a helyi Amazon VPC webcímek és bejegyzések alatt futó EC2-példányok DNS-kéréseire. A Resolver ismétlődő kereséseket végez nyilvános DNS-kiszolgálókon az összes további webcímhez.

A DNS-gyorsítótár a korábbi DNS-lekérdezések átmeneti rekordjaként szolgál, amelyet rendszerünk gyorsan megvizsgálhat, miközben megpróbál hozzáférni egy online webhelyhez. Naplót vezet minden meglévő és azt követő munkamenetről. Ez a DNS-gyorsítótár megkönnyíti a tartományfeloldást, és megakadályozza a hibákat az Amazon EC2 Linux példányaival.

Sok felhasználó általában az Amazon Route 53 szolgáltatását használja DNS-hez az AWS elérésekor. Nagyon könnyen használható és szinte ingyenes. De számos ok is befolyásolhatja a felhasználó döntését a helyi DNS-kiszolgáló használatáról.

Annak ellenére, hogy a bind9 továbbra is nagyszerű lehetőség a helyi DNS-gyorsítótár-kiszolgáló beállítására, a dnsmasq telepítése és konfigurálása sokkal egyszerűbb mind az EC2-példányokon, mind a helyi gépeken.

Mi az a dnsmasq?

A DNSmasq egy Linuxhoz kapcsolódó eszköz, amely támogatja a DNS, DHCP, TFTP és DNS gyorsítótárazást. Kompaktnak és könnyűnek készült, így ideális hálózatokhoz és tűzfalakhoz, kevesebb erőforrás-korlátozással.

Hihetetlenül egyszerű a telepítés és a konfigurálás. Az alhálózatok DNS és DHCP beállításához a dnsmasq rugalmas és praktikus megoldás.

Lehetőség van beállítani ezeket a DHCP-hez rendelt azonosítókat és a kapcsolódó utasításokat minden egyes kiszolgálóhoz vagy egy mögöttes vezérlőhöz. A dnsmasq a dinamikus és a statikus DHCP opciókat egyaránt támogatja. Hordozható, és legalább 1000 kliens DNS- és DHCP-kezelésére képes.

DNS-lekérdezés fogadásakor a dnsmasq vagy a helyi gyorsítótárból válaszol, vagy továbbítja azt egy hiteles DNS-kiszolgálónak. Amellett, hogy válaszol a DHCP-konfigurációval rendelkező címekre vonatkozó DNS-kérésekre, ellenőrzi az /etc/hosts fájl tartalmát, hogy azonosítsa azokat a helyi gazdagépneveket, amelyek nem szerepelnek a nyilvános DNS-ben.

A dnsmasq eszköz használata a böngésző beépített DNS-gyorsítótára helyett nagymértékben javítja az internetes böngészés teljesítményét. Ideális korlátozott erőforrásokkal rendelkező integrált környezethez, mivel nagyon egyszerű a beállítása, és nagyon kevés lemezterületet igényel.

A dnsmasq jellemzői

  • Egyszerű a belső DNS-kiszolgálók integrálása a dnsmasq használatával úgy, hogy úgy konfigurálja, hogy adott tartománynév-feloldási lekérdezéseket továbbítson bizonyos mérvadó szervereknek.
  • A kiszolgáló munkaterhelése csökken, és a megbízhatóság nő a konfigurált helyi DNS-kiszolgáló használatával.
  • A tűzfal-kompatibilis végpontok DNS-konfigurálása meglehetősen egyszerű, és független az internetszolgáltató által használt DNS-től.
  • Ha az internethez kapcsolódó port nem érhető el a számítógép DNS-ellenőrzése közben, a keresési művelet azonnal felfüggesztésre kerül.
  • A PPP (Point-to-point protokoll) vagy DHCP lekérdezések révén a dnsmasq valóban beállítható úgy, hogy időszakonként közvetlenül az alapul szolgáló tartományfeloldó szerverről gyűjtsön adatokat.
  28 A legjobb ingyenes képszerkesztő szoftver PC-re

Telepítés

A rendszer által feloldott szolgáltatást ki kell kapcsolni a dnsmasq segédprogram telepítése és konfigurálása előtt.

systemctl stop systemd-resolved

A mask attribútum használatával is elrejtheti, hogy ne induljon el automatikusan újraindításkor.

 systemctl mask systemd-resolved

A dnsmasq telepítése a kezdeti művelet, amelyet a systemd-resolved kikapcsolása után végre kell hajtania. A DNSmasq szinte minden Linux disztribúcióban előre telepítve van. Ha nem, akkor manuálisan telepítheti. Indítson el egy parancsterminált, majd írja be a következő parancsot.

sudo apt-get install dnsmasq

Használja a következő parancsot, ha yum felhasználó:

sudo yum install -y dnsmasq

Ez a parancs automatikusan telepíti az eszközt, és elindítja a dnsmasq-ot a háttérben.

A sikeres telepítés után az alábbi paranccsal ellenőrizheti a dnsmasq állapotát.

systemctl status dnsmasq

Ha az állapota „aktív (futó)”, az azt jelenti, hogy a telepítés megtörtént és az 53-as portra van konfigurálva. Ha „inaktív (halott)” állapotot mutat, akkor újra kell indítania az Ubuntu gépet és a dnsmasq-ot is. Ez kijavítja a hibát.

Konfiguráció

A Dnsmasq most készen áll arra, hogy beállítsa a számítógépén a helyi gyorsítótárazó DNS-kiszolgálóként. Az alapértelmezett konfigurációs fájl az /etc/dnsmasq.conf címen található. Ezt a konfigurációs fájlt módosítani kell a dnsmasq segédprogram beállításához a rendszerben.

Ezzel a paranccsal megnyithatja és szerkesztheti a konfigurációs fájlt.

nano /etc/dnsmasq.conf

A konfigurációs fájlt csak root jogosultságokkal szabad szerkeszteni. Csak töröljön mindent a fájlból, beleértve a megjegyzéseket, és egyszerűen másolja be, és mentse el ezt a konfigurációs beállítást.

port=53
domain-needed
bogus-priv
listen-address=127.0.0.1
expand-hosts
domain=geek-demo.com
cache-size=1000

Hadd írjam le röviden az egyes paraméterek jelentését.

  • Port – A Dnsmasq által a DNS-kérések fogadására használt port megadása vagy összerendelése.
  • domain-needed – Csak a tartományneveket továbbítja az upstream DNS-kiszolgálóhoz.
  • hamis-priv – megakadályozza a tartomány- és porttovábbítást
  • listen-address – A névszerver címének meghatározása. Általában a localhost használatos alapértelmezettként a helyi DNS-kiszolgáló beállításához.
  • domain – A dnsmasq által a rövid azonosítókhoz fűzött tartományok konfigurálása.
  • cache-size – A tárhelyen engedélyezett maximális DNS-gyorsítótárméret.
  A Hugo Static Site Generator használata Linuxon

Az összes szükséges módosítás végrehajtása után mentse el és zárja be a konfigurációs fájlt. A következő lépés az /etc/resolv.conf fájl szerkesztése a helyi gazdagépfeloldási cím hozzáadásához. Az alábbi paranccsal nyissa meg a nano szerkesztővel.

nano /etc/resolv.conf

Itt megtalálja a rendszere által a címfeloldáshoz használt összes névszervert. Ehhez a listához adja hozzá a hurokcímet is. Adja hozzá a „nameserver 127.0.0.1” nevet, és tartsa az első sorban.

Mentse el és lépjen ki a konfigurációs fájlból. A frissített beállítás érvénybe léptetéséhez indítsa újra a dnsmasq segédprogramot.

systemctl restart dnsmasq

Helyi DNS-gyorsítótárazási kiszolgáló tesztelése

A helyi DNS-kiszolgáló tesztelése egyszerű. Nyisson meg egy parancssort, és a dig paranccsal ellenőrizze a DNS-gyorsítótárat. Amikor először futtatja a dig parancsot, az eredménynek meglehetősen gyakorinak kell lennie.

┌──(root💀kali)-[/home/writer]
└─# dig etoppc.com.com                                                                                     1 ⚙

; <<>> DiG 9.18.0-2-Debian <<>> etoppc.com.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 623
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;etoppc.com.com.                 IN      A

;; ANSWER SECTION:
etoppc.com.com.          227     IN      A       172.66.43.163
etoppc.com.com.          227     IN      A       172.66.40.93

;; Query time: 31 msec
;; SERVER: 127.0.0.1#53(127.0.0.1) (UDP)
;; WHEN: Sat Oct 15 07:52:49 EDT 2022
;; MSG SIZE  rcvd: 74

Itt kérjük, vegye figyelembe, hogy a lekérdezési idő körülbelül 31 msec a részletek lekérdezéséhez az upstream névszerverről. Hajtsa végre ugyanazt a dig parancsot még egyszer, és észreveszi, hogy a lekérdezési idő jelentősen csökken.

┌──(root💀kali)-[/home/writer]
└─# dig etoppc.com.com                                                                                     1 ⚙

; <<>> DiG 9.18.0-2-Debian <<>> etoppc.com.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21942
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;etoppc.com.com.                 IN      A

;; ANSWER SECTION:
etoppc.com.com.          281     IN      A       172.66.40.93
etoppc.com.com.          281     IN      A       172.66.43.163

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1) (UDP)
;; WHEN: Sat Oct 15 07:58:10 EDT 2022
;; MSG SIZE  rcvd: 74

Itt a lekérdezési idő 0 msec. Ez annak köszönhető, hogy a kezdeti keresést követően a dnsmasq eltárolta az adatokat, és a tárolt gyorsítótár kihasználtsága miatt minden később végrehajtott keresés azonnali volt. A dnsmasq újraindítása szükséges, ha törölni szeretné a tárolt DNS-gyorsítótárat.

Becsomagolás

Ebben a cikkben megtudtuk, hogyan kell beállítani és konfigurálni a dnsmasq-ot, hogy helyi DNS-kiszolgálóként működjön. Érdekelheti azt is, hogyan módosíthatja a DNS-kiszolgálókat a gyorsabb böngészés érdekében a különböző operációs rendszerekben.