Tengo dos interfaces en mi computadora eth0
y eth1
.
Ambas subredes tienen un servidor DHCP en ellas. ¿Cómo podría usar dhclient
para renovar la dirección IP para ambas interfaces?
Si lo hago:
dhclient -r && dhclient eth0
Renueva la IP eth0
. Entonces, si solo quiero hacer:
dhclient eth1
Falla con error:
dhclient(22421) is already running - exiting.
Puedo hacer:
dhclient -r && dhclient eth1
Pero la dhclient -r
parte libera el contrato de arrendamiento y también pierdo la dirección IP eth0
.
Por ahora, la única forma que he conseguido hacer lo que quiero es correr dhclient
para eth0
, brutalmente matar a ella, y ejecutarlo en eth1
: termino con un renovado IP en ambas interfaces.
También probé con en dhclient -x
lugar de dhclient -r
, sin suerte.
¡Seguramente, este no es el camino a seguir!
EDITAR:
Dos respuestas sugirieron que hacer dhclient -r eth0 eth1 && dhclient eth0 eth1
esto, de hecho, limita las llamadas de difusión a estas interfaces. Pero el primer servidor DHCP que responda será el único que se use, lo que dará como resultado una nueva IP en una sola interfaz y no en ambas. Vea aquí, podemos ver DHCPDISCOVER
llamadas en ambas interfaces, pero DHCPREQUEST
solo se realiza en la eth0
primera interfaz a través de la cual se encontró un servidor DHCP:
Listening on LPF/eth0/0a:00:27:00:00:00
Sending on LPF/eth0/0a:00:27:00:00:00
Listening on LPF/eth1/84:8f:69:d3:d4:a1
Sending on LPF/eth1/84:8f:69:d3:d4:a1
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5 (xid=0x170fcb67)
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 4 (xid=0x115a24c3)
DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x170fcb67)
DHCPOFFER from 192.168.1.1
DHCPACK from 192.168.1.1 (xid=0x170fcb67)
bound to 192.168.1.4 -- renewal in 1710 seconds.
fuente
Idea # 1: Intente pasar 2 interfaces a dhclient
Si observa la página del manual
dhclient
, notará que al final del ejemplo, utilice el bit[ if0 [ ...ifN ]
. Esto implicaría que puede ejecutardhclient
y pasarle múltiples interfaces en las que desea ejecutar.extracto de la página de manual de dhclient
Por lo tanto, debería poder
dhclient
lanzar en múltiples interfaces y conectarse también en ellas.Idea # 2: Mira cómo lo hace NetworkManager
Así es como NetworkManager se configura
dhclient
en mi sistema. Podría intentar llamar al segundo dhclient explícitamente con argumentos.fuente
dhclient -r && dhclient eth0 && dhclient -v eth1
dhclient(1155) is already running - exiting.