DNS (domēna nosaukumu sistēmas) serveris ir izveidots, lai tulkotu domēna vārdus uz IP adresēm un otrādi, lai būtu iespējams nosūtīt datu paketes uz mērķa datoriem. Katru reizi, kad ievadām adresi tīmekļa pārlūkprogrammā, iekārta ir atbildīga par vaicājuma nosūtīšanu reģistrētajam DNS serverim, pieprasot IP adresi, kas ir saistīta ar meklēto domēna nosaukumu, šī meklēšana prasa laiku, un, ja tā tiek veikta katrā piekļuves procesā, DNS serveris var apstrādāt lielu skaitu pieprasījumu, kas galu galā var izraisīt tā sabrukumu, un rezultātā tiek liegta piekļuve.
Lai no tā izvairītos, ir DNS kešatmiņa, kas ir atbildīga par minētā domēna IP adreses lokālu saglabāšanu, lai nākamajā piekļuvē izlaistu meklēšanas procesu, bet tā vietā tā tiek novirzīta, ņemot vērā šo vietējo vērtību, un tādējādi mēs atbrīvojam slodzi uz serveri un tajā pašā laikā mēs piekļūstam daudz ātrāk. Bet problēma ir tā, ka pārāk daudz mitināta DNS kešatmiņa var ietekmēt pārlūkprogrammas veiktspēju, tāpēc ir ieteicams to izlaist, mēs redzēsim, kā šo uzdevumu veikt Linux.
1. Notīriet DNS kešatmiņu, izmantojot systemd-solution operētājsistēmā Linux
Ubuntu un citi izplatījumi, kuru pamatā ir Debian, izmanto komandu systemd-resolution, šī komanda ir DNS dēmons, kas iebūvēts systemd, un ir sistēmas pakalpojums, kas nodrošina tīkla nosaukumu izšķiršanu vietējām lietojumprogrammām.
Šī komanda ievieš kešatmiņu un validācijas DNS / DNSSEC nepilnību atrisinātāju, kā arī LLMNR un MulticastDNS atrisinātāju. Vietējās lietojumprogrammas var nosūtīt tīkla nosaukumu risināšanas pieprasījumus, izmantojot trīs saskarnes:
- Autobusā ir redzama atrisinātās sistēmas pilnvērtīgā vietējā API.
- Glibc getaddrinfo API, ko nosaka RFC3493 un ar to saistītās izšķirtspējas funkcijas, tostarp gethostbyname.
- Vietējās cilpas DNS klausītājs tiek piedāvāts IP adresē 127.0.0.53 vietējās atgriezeniskās saites saskarnē, no turienes programmas, kas ģenerē DNS pieprasījumus tieši, apejot vietējās API, var izmantot šo nepilnību, lai izveidotu savienojumu ar systemd-atrisinātu
1. darbība
Lai izmantotu šo komandu, vispirms redzēsim sistēmas kešatmiņas statistiku sistēmā:
sudo systemd -atrisināt -statistika
PALIELINĀT
2. solis
Tagad, lai notīrītu DNS kešatmiņu, mēs izpildām:
sudo systemd-Resolution-flush-cachres
PALIELINĀT
3. solis
Kā redzam, atkal palaižot statistiku, DNS kešatmiņa ir notīrīta. Šī ir visizplatītākā metode. Citas iespējas dažādiem izplatījumiem ir šādas:
RedHat vai ArchLinux izmantošanas gadījumā
sudo systemctl restartējiet nscd
2. Notīriet DNS kešatmiņu, izmantojot dnsmasq vai nosauktu Linux
Tālāk mēs redzēsim divas citas iespējas, lai varētu notīrīt kešatmiņu
Notīriet DNS kešatmiņu, izmantojot DnsmasqDnsmasq bieži izmanto vietējos DNS serveros vai maršrutētājos, lai notīrītu DNS kešatmiņu, izmantojot šo komandu, mums jāizpilda:
sudo systemctl restartējiet dnsmasq
Notīriet DNS kešatmiņu, izmantojot BINDŠī BIND komanda tiek izmantota DNS serveriem, kas īpaši paredzēti īpašiem uzdevumiem, un lai notīrītu DNS kešatmiņu, kas tiek palaista:
nosaukta sudo systemctl restartēšana
Tik vienkārši mēs esam notīrījuši Linux DNS kešatmiņu, tādējādi uzlabojot mūsu aprīkojuma veiktspēju, izmantojot termināli.