Eu tenho duas interfaces no meu computador eth0
e eth1
.
Ambas as sub-redes possuem um servidor DHCP. Como eu poderia usar dhclient
para renovar o endereço IP das duas interfaces?
Se eu fizer:
dhclient -r && dhclient eth0
Renova o IP ativado eth0
. Então, se eu quiser apenas fazer:
dhclient eth1
Falha com erro:
dhclient(22421) is already running - exiting.
Eu posso fazer:
dhclient -r && dhclient eth1
Mas a dhclient -r
parte libera a concessão e eu também perco o endereço IP eth0
.
Por enquanto, a única maneira que eu consegui fazer o que eu quero é correr dhclient
para eth0
, brutalmente matá-lo e executá-lo em eth1
: Eu acabar com um IP renovado em ambas as interfaces.
Eu também testei com, em dhclient -x
vez de dhclient -r
, sem sorte.
Certamente, este não é o caminho a seguir!
EDITAR:
Duas respostas sugeridas para fazer dhclient -r eth0 eth1 && dhclient eth0 eth1
isso, de fato, limitam as chamadas de transmissão para essas interfaces. Mas o primeiro servidor DHCP a responder será o único usado, resultando em um novo IP em uma única interface e não em ambos. Veja aqui, podemos ver as DHCPDISCOVER
chamadas nas duas interfaces, mas a primeira interface DHCPREQUEST
é feita apenas eth0
através da qual um servidor DHCP foi encontrado:
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.
fonte
Idéia # 1: tente passar 2 interfaces para o dhclient
Se você olhar a página de manual,
dhclient
perceberá que, no final do exemplo, use o bit[ if0 [ ...ifN ]
. Isso implica que você pode executardhclient
e transmitir várias interfaces nas quais deseja executar.trecho da página de manual do dhclient
Portanto, você deve conseguir
dhclient
lançar em várias interfaces e se conectar a elas também.Idéia # 2: veja como o NetworkManager faz isso
Veja como o NetworkManager é configurado
dhclient
no meu sistema. Você pode tentar chamar o segundo dhclient explicitamente com argumentos.fonte
dhclient -r && dhclient eth0 && dhclient -v eth1
dhclient(1155) is already running - exiting.