Editando interfaces de rede sem reinicializar o sistema

20

Gostaria de fazer algumas alterações na minha configuração de rede editando meu arquivo /etc/network/interfaces . Qual é a maneira mais limpa de fazer alterações neste arquivo e tê-lo em vigor, sem ter que reiniciar? Normalmente, eu tenho feito:

  1. Edite o arquivo
  2. service networking restart

Mas tenho a impressão de que essa não é a maneira "certa" de fazer esse tipo de alteração.

    
por Lorin Hochstein 10.02.2012 / 21:48

6 respostas

11

Encerre a interface de rede usando

sudo ifdown eth0

(substitua eth0 pela interface que você deseja alterar) e exiba-o novamente usando

sudo ifup eth0
    
por Florian Diesch 10.02.2012 / 22:01
2

Pare todas as interfaces usando

sudo /etc/init.d/networking stop

Configure (edite) suas interfaces como quiser, então

Inicie novamente

sudo /etc/init.d/networking start

Não há necessidade de reiniciar.

    
por Achu 10.02.2012 / 22:00
0

/etc/network/interfaces controla as ferramentas ifupdown.

Então, depois de fazer alterações, você pode apenas dizer, por exemplo, sudo ifup eth0 .

    
por poolie 10.02.2012 / 22:02
0

Na verdade, nada disso funciona. Testado no Ubuntu 16.10. estes não tiveram efeito.

  • ifdown ens3 e ifup ens3
  • serviço de rede parar e iniciar
  • recarregar a rede de serviços
  • systemctl interrompe o networking.service e, em seguida, inicie novamente.

Através de todos estes o antigo dhcp ip voltou e não o estático. Eu me pergunto se isso é intencional?

    
por SLS 26.07.2017 / 16:54
0

No Ubuntu Server 16.04, você deve usar o comando ip para liberar o endereço antes de reiniciar a rede, caso contrário, qualquer mudança de endereço no arquivo de interfaces não terá efeito:

$ sudo ip addr flush interface-name
$ sudo systemctl restart networking

Eu recebi esta resposta do este útil artigo

    
por BrianD 21.10.2017 / 17:58
0

Por que você não acha que é o caminho certo? Pense, o que o ubuntu pode fazer extra durante a inicialização? Ubuntu tem uma lista de serviços que precisam ser executados durante a inicialização, cada serviço tem uma lista de comandos consecutivos para iniciar a si mesmo. O Ubuntu apenas executa o serviço de rede através do script /etc/init.d/networking que contém algum comando que precisa executar o serviço de rede. Portanto, se alguma alteração precisar se aplicar à sua rede, será necessário reiniciar o serviço e a maneira de chamar os comandos consecutivos do seu serviço.

    
por shantanu 10.02.2012 / 21:58