Edición de interfaces de red sin reiniciar el sistema

23

Me gustaría hacer algunos cambios en mi configuración de red editando mi /etc/network/interfacesarchivo. ¿Cuál es la forma más limpia de hacer cambios en este archivo y hacer que surtan efecto, sin tener que reiniciar? Por lo general, he estado haciendo:

  1. Edite el archivo
  2. service networking restart

Pero tengo la impresión de que esta no es la forma "correcta" de hacer este tipo de cambios.

Lorin Hochstein
fuente
servicio de reinicio de red casi = /etc/init.d/networking restart.
shantanu

Respuestas:

11

Apague la interfaz de red usando

sudo ifdown eth0

(reemplácelo eth0con la interfaz que desea cambiar) y vuelva a abrirlo usando

sudo ifup eth0
Florian Diesch
fuente
44
Esto no funcionó para mí. Simplemente me dio un error "eth0 no configurado". Tuve que reiniciar el sistema para que el cambio surta efecto el 12.04.
JohnMerlino
4

En Ubuntu Server 16.04 debe usar el comando ip para vaciar la dirección antes de reiniciar la red, de lo contrario, cualquier cambio de dirección en el archivo de interfaces no tendrá efecto:

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

Recibí esta respuesta de este útil artículo.

BrianD
fuente
Perfecto, esta debería ser la respuesta a la pregunta.
Dibujó el
2

Detenga todas las interfaces usando

sudo /etc/init.d/networking stop

Configure (edite) sus interfaces como desee, luego

Comience de nuevo

sudo /etc/init.d/networking start

No hay necesidad de reiniciar.

Achu
fuente
3
Esto tampoco funcionó en Ubuntu 12.04. Solo el sistema de reinicio funcionó.
JohnMerlino
0

¿Por qué no crees que es la forma correcta? Piensa, ¿qué puede hacer Ubuntu extra durante el arranque? Ubuntu tiene una lista de servicios que deben ejecutarse durante el arranque, cada servicio tiene una lista de comandos consecutivos para iniciarse. Ubuntu simplemente ejecuta el servicio de red a través de /etc/init.d/networking script que contiene algún comando que necesita ejecutar el servicio de red. Entonces, si es necesario aplicar algún cambio a su red, entonces debe reiniciar su servicio y la forma es recuperar los comandos consecutivos de su servicio.

shantanu
fuente
Debido a que el reinicio está garantizado para borrar todas las interfaces que he configurado, y me preocupa que si elimino una interfaz de mi archivo de interfaces, reiniciar el script de red no lo eliminará.
Lorin Hochstein
¿Estás seguro? cualquier cambio en la red me funcionó con sudo /etc/init.d/networking restart.
shantanu
Por ejemplo, si creo un vlan etiquetado (p. Ej., Eth0.123), no parece que se destruya automáticamente cuando reinicio la conexión de redes
Lorin Hochstein,
sudo eth0 abajo --- sudo eth0 arriba
shantanu
/etc/init.d/networking vuelva a leer todo el archivo de configuración de red y actualice todas las configuraciones, ¿por qué debería destruir la interfaz creada? si cambia su ip o dns o este tipo de información, entonces / etc / ... es suficiente, si crea un lan virtual, entonces debe reiniciar su interfaz de ethernet (sudo eth0 down y sudo eth0 up).
shantanu
0

/etc/network/interfaces controla las herramientas ifupdown.

Entonces, después de hacer cambios, solo puede decir, por ejemplo sudo ifup eth0.

billar
fuente
0

En realidad ninguno de estos funciona. Probado en Ubuntu 16.10. estos no tuvieron efecto.

  • ifdown ens3 y ifup ens3
  • red de servicio detener e iniciar
  • servicio de recarga de red
  • systemctl deje de networking.service y luego comience nuevamente.

A través de todo esto, el viejo dhcp ip regresó y no el estático. Me pregunto si esto es intencional?

SLS
fuente