У меня CentOS 7.2 (гость в VirtualBox, vagrant box centos/7
, без графического интерфейса).
Я вижу, что в файле есть сервер имен:
$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 10.0.2.3
Но как добавить или заменить на новый?
Я сделал это вручную прямо в сети:
$ vi /etc/sysconfig/network-scripts/ifcfg-eth0
PEERDNS=no
DNS1=91.217.197.2
DNS2=8.8.8.8
И это работает.
Но есть ли способ сделать это через nmcli
?
P.S. Нет nmtui
установлен (в выбранной системе).
Вот команда для изменения существующего соединения.
nmcli con mod <connectionName> ipv4.dns "8.8.8.8 8.8.4.4"
connectionName
можно найти по команде: nmcli con
. В случае вопроса это будет "System eth0"
Если вы хотите игнорировать автоматически настроенные серверы имен и поисковые домены, то есть настройки, переданные от DHCP.
nmcli con mod <connectionName> ipv4.ignore-auto-dns yes
Наконец, чтобы изменения вступили в силу, отключите соединение, а затем включите его:
nmcli con down <connectionName>
nmcli con up <connectionName>
Проверить с cat /etc/resolv.conf
. Вы не должны редактировать /etc/resolv.conf
вручную, поскольку он генерируется службой NetworkManager, он может быть переопределен в любой момент.
есть хороший инструмент TUI, разработанный красной шляпой под названием nmtui
что вам действительно стоит попробовать. в настоящее время он предустановлен в различных дистрибутивах, но если его нет в вашем, попробуйте:
sudo yum install networkmanager-tui
он использует текстовый интерфейс на основе curses, доступный из командной строки. nmcli
особенно необходим только при написании сценариев и имеет больше места для ошибок из-за большего разнообразия возможных входных данных.
В дополнение к настройке свойства ipv4.dns, описанного выше ...
Чтобы исключить DNS-серверы, предоставляемые DHCP ... установите для свойства ipv4.ignore-auto-dns значение yes.
nmcli con mod <connectionName> ipv4.ignore-auto-dns yes
Чтобы изменения вступили в силу, сначала разорвите соединение, затем увеличьте:
nmcli con down <connectionName>
nmcli con up <connectionName>
Проверить с cat /etc/resolv.conf