Eu tenho o CentOS 7.2 (convidado no VirtualBox, vagrant box centos/7
, sem GUI).
Vejo que há um servidor de nomes no arquivo:
$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 10.0.2.3
Mas como adicionar ou substituir por um novo?
Eu fiz isso manualmente diretamente na rede:
$ vi /etc/sysconfig/network-scripts/ifcfg-eth0
PEERDS=no
DNS1=8.8.4.4
DNS2=8.8.8.8
E funciona.
Mas existe alguma maneira de fazer isso através nmcli
?
PS Não nmtui
instalado (em um sistema selecionado).
Aqui está o comando para modificar uma conexão existente.
connectionName
pode ser encontrado pelo comando:nmcli con
. No caso da pergunta, será"System eth0"
Se você deseja ignorar servidores de nomes e domínios de pesquisa configurados automaticamente, ou seja, as configurações passadas pelo DHCP.
Por fim, para habilitar as alterações,
diminua a conexão e suba:Verifique com
cat /etc/resolv.conf
. Você não deve editar/etc/resolv.conf
manualmente, pois é gerado pelo serviço NetworkManager, é provável que seja substituído a qualquer momento.manual nmcli útil
existe uma boa ferramenta TUI desenvolvida pela red hat chamada
nmtui
que você realmente deveria experimentar. ele vem pré-instalado em várias distros, hoje em dia, mas se não estiver na sua, tente:ele usa uma interface de texto baseada em maldições - acessível a partir da linha de comando.
nmcli
é especialmente necessário ao escrever scripts e tem maior espaço para erros devido à maior variedade de entradas possíveis.Além de definir a propriedade ipv4.dns descrita acima...
Para excluir os servidores DNS fornecidos pelo DHCP... defina a propriedade ipv4.ignore-auto-dns como yes.
Para habilitar as alterações, diminua a conexão e suba:
Verifique com
cat /etc/resolv.conf
Apenas no caso de eu ter feito um pequeno script para fazer isso automaticamente (aqui com o Google DNS) para todas as conexões ethernet/wireless:
No final, as conexões sem fio serão perdidas. Você tem que se reconectar e voilà!