A helyi DNS-gyorsítótár kiürítése megoldhatja a HTTP-hibákat, és megvédheti Önt a DNS-hamisítástól. Íme, hogyan teheti ezt meg Linuxon.
Amikor egy webhelyhez annak tartománynevével lép fel, a rendszer kérést küld egy DNS-kiszolgálónak, hogy megkapja az adott tartomány IP-címét. Ez a tartomány-IP-címpár a DNS-gyorsítótárban van elmentve későbbi használatra, így nem kell minden alkalommal kéréseket küldenie a DNS-kiszolgálónak a kapcsolat létrehozásához.
De néha a helyi DNS-gyorsítótár megsérül, és HTTP-hibákat okoz. Szerencsére a DNS-gyorsítótár öblítése és újraépítése Linuxos számítógépeken egyszerű. Íme, hogyan kell csinálni.
Miért törölje ki a DNS-gyorsítótárat Linuxon?
Számos oka lehet annak, hogy érdemes újraépíteni a rendszeren tárolt DNS-gyorsítótárat. Lehet, hogy egy webhelyhez elavult DNS-rekordja van, és szeretné újra lekérni a DNS-kiszolgálóról. Vagy az is lehet, hogy a rendszert feltörték, és meg akar győződni arról, hogy a DNS-gyorsítótárat nem manipulálták. DNS-hamisításként ismert.
Amikor kiüríti a DNS-gyorsítótárat, a rendszernek újra meg kell pingelnie a DNS-kiszolgálót, és le kell kérnie onnan az új domain-IP-címrekordot, eltávolítva a folyamat során minden elavult vagy sérült adatot.
A helyi DNS-gyorsítótár megtekintése Linuxon
A rendszerezés előtt a legtöbb Linux disztribúció nem rendelkezett rendszerszintű DNS-gyorsítótárral, hacsak nem manuálisan állítottak be egy olyan programot, mint a dnsmasq vagy az nscd. A systemd a systemd-resolved szolgáltatással érkezik, amely a tartományneveket IP-címekké oldja fel, és gyorsítótárazza a DNS-bejegyzéseket.
A következő szakaszok bemutatják, hogyan tekintheti meg a systemd-resolved, az nscd és a dnsmasq által generált DNS-gyorsítótár tartalmát, hogy megértse a gyorsítótárazott adatokat, mielőtt úgy döntene, hogy kiüríti azokat.
A rendszer által feloldott DNS-gyorsítótár megtekintése
A rendszer által feloldott gyorsítótárrekordok megtekintéséhez először ideiglenesen le kell állítania a szolgáltatást, majd exportálnia kell a naplóit egy fájlba.
Kezdje egy SIGUSR1 jel küldésével a rendszer által feloldott szolgáltatás leállításához:
sudo killall -USR1 systemd-resolved
Használat a Journalctl parancs és a szabványos kimeneti operátor a kimenet szövegfájlba mentéséhez:
sudo journalctl -u systemd-resolved > ~/cache.txt
Ezután megtekintheti a fájl tartalmát egy szövegszerkesztővel, mint például a Vim:
vim ~/cache.txt
A fájlban keresse meg a „CACHE:” kifejezést a gomb megnyomásával Menekülni, gépelés "/CACHE:", és üt Belép. alatt felsorolt összes DNS-rekord CACHE: a helyi DNS-gyorsítótár részei. nyomja meg n hogy a következő DNS-bejegyzésekre ugorjon, ha Vim-et használ.
Tekintse meg az nscd helyi DNS-gyorsítótárát
Az nscd által generált helyi gyorsítótár megtekintéséhez be kell olvasnia az nscd hosts adatbázis tartalmát a strings paranccsal.
Debian és Ubuntu alapú disztribúciókon ez a fájl a következő címen található: /var/cache/nscd/hosts. Futtassa a következő parancsot a fájl megtekintéséhez:
sudo strings /var/cache/nscd/hosts | uniq
Az nscd DNS-gyorsítótárra vonatkozó általános statisztikák megtekintéséhez használja a -g zászló:
sudo nscd -g
A dnsmasq által generált DNS-gyorsítótár megjelenítése
A dnsmasq a DNS-gyorsítótárat a memóriában tárolja, így nem könnyű megszerezni a pontos rekordokat. De küldhet egy tiltó jelet a dnsmasq-nak, és naplózhatja a kimenetét, hogy megkapja a feldolgozott DNS-lekérdezések számát.
Ehhez először győződjön meg arról, hogy a dnsmasq működik és fut a systemctl paranccsal:
sudo systemctl állapot dnsmasq
Ha az állapot azt mutatja Aktív, futtassa a következő parancsot a szolgáltatás leállításához:
sudo pkill -USR1 dnsmasq
A journalctl paranccsal bontsa ki a dnsmasq naplókat, és mentse el őket egy szöveges fájlba:
sudo journalctl -u dnsmasq > ~/cache.txt
Végül tekintse meg a fájl tartalmát fájlmegtekintő segédprogram segítségével mint a macska vagy kevesebb:
cat ~/cache.txt
A DNS-gyorsítótár kiürítése Linuxon
A DNS-gyorsítótár kiürítése azt jelenti, hogy eltávolítja a gyorsítótárazott DNS-rekordokat a számítógépről. Ez arra kényszeríti, hogy kérést küldjön a DNS-kiszolgálónak az új DNS-bejegyzések lekérésére.
A következőképpen ürítheti ki a DNS-gyorsítótárat Linuxon:
Systemd-resolved használata
A solvectl paranccsal kiürítheti a systemd-resolved által tárolt DNS-gyorsítótárat:
sudo solvectl flush-caches
Ha Ubuntu 17.04-et vagy 18.04-et futtat, használja a systemd-resolved parancsot a gyorsítótár ürítéséhez:
sudo systemd-resolved --flush-caches
Öblítse ki az nscd DNS-gyorsítótárat Linuxon
Az nscd DNS-gyorsítótárának eltávolításának legkényelmesebb módja a szolgáltatás egyszerű újraindítása. Ezt a következő futtatással teheti meg:
sudo /etc/init.d/nscd újraindítás
Ha ez nem működik, először ellenőrizze, hogy a számítógépén tárolt helyi gyorsítótár állandó-e. Használhatja a -g jelölje meg az ellenőrzéshez:
sudo nscd -g
Ha ez a helyzet, használja a -én jelölje meg az nscd paranccsal a rekordok törléséhez (én jelentése érvénytelenít):
sudo nscd -i hosts
Távolítsa el a dnsmasq DNS-gyorsítótárat
A dnsmasq által generált DNS-gyorsítótár kiürítése egyszerű. Mivel a gyorsítótár a memóriában van tárolva, a szolgáltatás újraindítása törli az összes tárolt bejegyzést.
A dnsmasq újraindításához futtassa a következő systemctl parancsot:
sudo systemctl indítsa újra a dnsmasq-ot
Vagy adja ki a következő parancsot:
szolgáltatás dnsmasq újraindítása
Adja meg a rendszergazdai jelszót, ha a rendszer kéri. A dnsmasq most újraindul, és az összes meglévő DNS-bejegyzés törlődik a gyorsítótárból.
A DNS-gyorsítótár kiürítése után a legjobb, ha megnézi a helyi gyorsítótár bejegyzéseit, és ellenőrizze, hogy az adatok sikeresen eltávolításra kerültek-e. Használhatja dig, az egyik számos hálózati hibaelhárítási Linux parancs, és ellenőrizze a Query time értéket a kimenetben. Ha több mint 0 ms, a gyorsítótár sikeresen törlődött (0 msec azt jelenti, hogy a tartományrekord még mindig a gyorsítótárban van).
dig google.com
Törölje a Google Chrome DNS-gyorsítótárát
A gyakran használt webböngésző a DNS-rekordokat is gyorsítótárazza. Amikor beír egy URL-t, a rendszer egy gyorsítótár-bejegyzést keres a helyi böngésző gyorsítótárában. Ha nem található, akkor ellenőrzi a rekordokat a helyi rendszer gyorsítótárában. Kulcsfontosságú a webböngésző DNS-gyorsítótárának törlése, mivel annak nagyobb a prioritása, mint a rendszerszintű gyorsítótáré.
A bemutató kedvéért ürítse ki a DNS-gyorsítótárat a Google Chrome-ban. Más böngészőkben is megteheti ezt, ezért a legjobb, ha rákeres a Google-ra, hogyan kell ezt megtenni az Ön által használt böngészőben.
Kezdésként írja be: "chrome://net-internals/#dns" az URL sávban, és nyomja meg a gombot Belép:
Kattintson A gazdagép gyorsítótárának törlése a Google Chrome-ban tárolt DNS-bejegyzések törléséhez.
A Linux a legjobb operációs rendszer a hálózatépítés tanulására
A Linux elsőre bonyolultnak tűnhet, de ha időt fektet abba, hogy megtanulja, hogyan működik, gyorsan rájön, hogy fantasztikus, és talán még jobb is, mint a Windows vagy a macOS.
A legtöbb online szerveren Linux fut, és ez az egyik oka annak, hogy a Linux ideális, ha hálózatépítést szeretne tanulni, vagy általában meg szeretné tudni, hogyan működnek a számítógépek.