Как автоматически изменить DNS-сервер имен

Как автоматически изменить DNS-сервер имен

DNS-сервер моего интернет-провайдера испытывает проблемы с разрешением множества важных веб-сайтов, таких как google, github, gmail и т. д. В качестве хака я вручную отредактировал файл /etc/resolv.conf на 8.8.8.8 от Google. Но измененный файл переделывается на DNS-сервис моего интернет-провайдера при изменении сети. Как мне автоматически установить /etc/resolv.conf на DNS от Google в случае изменения сети и при перезагрузке компьютера с помощью скриптов bash.

Я новичок в написании скриптов на Linux. Мне нужны указания, как написать скрипт для этого. Спасибо.

решение1

/etc/resolv.confфайлом обычно управляет ваш сетевой менеджер.

Вы можете заставить своего сетевого менеджера использовать определенный DNS-сервер.

Например, если у вас Gnome, то gnome-control-centerвы можете сделать это:

введите описание изображения здесь

Для других сетевых менеджеров процедура будет аналогичной.

решение2

Nano /etc/dhcp/dhclient.conf

введите описание изображения здесь

тогда измени это

sudo nano /etc/resolv.conf

ради Бога, не используйте DNS-сервер Google. Используйте сервер Cloudflare.

nameserver 1.1.1.1
nameserver 1.0.0.1

затем

sudo chattr -a /etc/resolv.conf
sudo chattr -i /etc/resolv.conf

теперь проверьте статус:

mousepad /etc/resolv.conf // или используйте leafpad

введите описание изображения здесь

Теперь он доступен только для чтения.

Связанный контент