Препоръчано, 2020

Избор На Редактора

Как да изтриете DNS кеша в Linux

DNS, или система за имена на домейни, отговаря за разрешаването на имената на уебсайтове в съответните им IP адреси. Така че, ако имате проблеми с връзката с даден уебсайт или ако искате да видите DNS промяна от вашата машина на Ubuntu, трябва да опитате да изчистите DNS кеша. Можете също така да изчистите DNS кеша в Ubuntu, ако сте направили промени в файла hosts и искате той да бъде „видян“ от вашата система, без да се налага да го рестартирате. Е, ако се намирате в някоя от тези ситуации и искате да изчистите DNS кеша, ето как да изчистите DNS кеша в Linux:

Забележка : Използвам система Ubuntu 16.10 “Yakkety Yak”, за да демонстрирам тези методи. Въпреки това, процесът трябва да бъде подобен на повечето дистрибуции на Linux.

Проверка дали е активирано DNS кеширането

Всички дистрибуции на Linux не се държат по един и същи начин, когато става въпрос за неща като кеширане на DNS. Например, Ubuntu по подразбиране не кешира DNS. Преди да се опитаме да изчистим DNS кеша на Linux машина, нека проверим дали кеширането дори е активирано. За да направите това в Ubuntu система, можете да изпълните следните стъпки:

1. Стартирайте терминал и въведете “ ps ax | grep dnsmasq “.

2. В изхода на командата ще можете да видите поле, наречено “ размер на кеша ”. Проверете стойността му. Ако стойността е нула, това означава, че кеширането е деактивирано в системата.

Забележка: Ако искате да разрешите кеширане на DNS на Linux, можете да го направите, като използвате командата “sudo dnsmasq -c 150”. Можете да използвате произволен номер на мястото на 150, което е всъщност броят на записите, които dnsmasq може да кешира.

Flush DNS Cache в Ubuntu

Ако вашата Linux система кешира DNS записи, можете да опитате да изчистите DNS кеша, за да се отървете от всички свързани с DNS проблеми. За да изчистите DNS кеша в Ubuntu, можете да изпълните следните стъпки:

1. Стартирайте Терминал (ctrl + alt + T) и напишете “ sudo /etc/init.d/dns-clean restart ”.

2. След това въведете командата “ sudo /etc/init.d/networking force-reload

Това ще изчисти DNS кеша в Ubuntu и ако проблемите, които изпитвате, се дължат на DNS проблеми, сега те трябва да изчезнат.

Flush DNS Cache в DNS услуги на Linux

Както казах, Ubuntu не кешира DNS записи по подразбиране, но ако сте инсталирали ръчно DNS услуга като nscd, можете да изчистите кеша. По-долу са дадени методи за изчистване на кеш паметта за някои общи DNS услуги:

Flush nscd DNS Cache

  • sudo /etc/init.d/nscd рестартиране

Flush dnsmasq DNS кеш

  • sudo /etc/init.d/dnsmasq рестартиране

Flush BIND DNS Cache

Ако използвате BIND, можете да изчистите DNS кеша, като използвате една от следните команди:

  • sudo /etc/init.d/named рестартиране

  • sudo rndc restart

  • sudo rndc exec

Версия BIND 9.3.0, и по-голяма, поддържа флъш DNS кеш за конкретен домейн, както и за LAN или WAN. Можете да използвате следните команди, за да използвате тази функция:

  • За да изчистите DNS кеша за определен домейн, използвайте „ sudo rndc flushname beebom.com

  • За да изчистите DNS кеша за LAN, използвайте „ sudo rndc flush lan

  • За да изчистите DNS кеша за WAN, използвайте „ sudo rndc flush wan

Бонус: Променете настройките на DNS в Ubuntu

Говорихме за измиване на DNS кеша в Ubuntu, но може да има случаи, в които просто искате да направите промяна в настройките на DNS в Ubuntu. Ако искате да промените настройките на DNS в Ubuntu, можете да направите това с помощта на GUI или чрез терминала.

Промяна на DNS настройки с помощта на GUI

Използването на GUI за промяна на настройките на DNS е по-лесно от използването на терминала. Ако обаче използвате няколко връзки, ще трябва да промените настройката на DNS за всяка от тях. За да промените настройките на DNS с помощта на GUI, просто следвайте стъпките по-долу:

1. Отворете Системните настройки и кликнете върху Мрежа.

2. Кликнете върху стрелката до името на мрежата, към която сте свързани.

3. Сега кликнете върху „Настройки“. Това ще отвори настройките за тази връзка.

4. Преминете към раздела IPv4 и ще видите опция, наречена „ Допълнителни DNS сървъри “. Можете да въведете DNS сървърите, които искате да използвате в това поле. Ако искате да въведете повече от един DNS сървър, просто ги отделете със запетаи.

Промяна на настройките на DNS чрез терминала

Ако не искате да използвате графичния потребителски интерфейс и предпочитате да променяте настройките на DNS чрез терминала, можете да направите това, като добавите сървърите на имената към конфигурационния файл dnsmasq. Въпреки това dnsmasq не се инсталира по подразбиране в системите на Ubuntu (dnsmasq-base, прави). Така че първо трябва да инсталирате dnsmasq чрез стартиране на терминал и използване на “ sudo apt-get install dnsmasq ”.

  • След като сте инсталирали dnsmasq. Можете да редактирате конфигурационния файл с „ sudo nano /etc/dnsmasq.conf “.

  • Тук можете да добавите IP адресите на DNS сървърите, където се казва „ Добавете други сървъри на имена тук “.

Изчистете DNS кеша в Linux, като използвате тези методи

Можете да използвате всеки от тези методи, за да изчистите DNS кеша в Linux система. Проблемите с DNS кеша могат да причинят проблеми като уеб страница, която не се зарежда, промени в сървъра на имена, които не се разпознават от вашата система, и много повече. След като измиете DNS кеша, тези проблеми най-вероятно ще изчезнат.

И така, трябваше ли някога да изплаквате DNS кеша на вашата Linux система? Ако е така, какъв метод сте използвали? Ако знаете за някакъв друг метод за изчистване на DNS кеша на вашата Linux система, да ни уведомите в раздела за коментари по-долу.

Top