Назад | Перейти на главную страницу

Как обновить / очистить кеш DNS на клиентах?

Когда я внес изменения в DNS-хост.

Как мне заставить клиентов (серверы) обновить / очистить свой кеш DNS, чтобы они сразу увидели изменения?

Вы можете перезапустить BIND в Ubuntu, используя sudo rndc reload, на Centos я считаю, что вам нужно /etc/init.d/bind restart.

Вы также можете выполнить /etc/init.d/networking restart чтобы очистить DNS / сеть для локальных компьютеров под управлением Ubuntu.

Я обнаружил, что простой перезапуск не всегда очищает кеш. Другой способ сделать это - использовать команду nscd и сделать недействительным кеш хостов.

# nscd -i hosts

Тогда вам даже не нужно перезапускать службу кеширования.

В зависимости от вашего дистрибутива клиенты могут не кэшировать по умолчанию. Для Ubuntu или CentOS попробуйте эту команду: sudo /etc/init.d/nscd status

... чтобы увидеть, запущен ли демон кеширования. Если это так, то ваш клиент кэширует DNS, и вы можете очистить его следующим образом: sudo /etc/init.d/nscd restart

если NSCD не запущен, то на клиенте нечего сбрасывать, и вам необходимо: 1. убедиться, что старой записи нет в файле / etc / hosts 2. убедиться, что изменение DNS уже распространено на все подчиненные DNS-серверы ( проверьте resolv.conf, где он разрешается)