Em vários hosts remotos do Linux, quero testar os servidores DHCP remotos correspondentes (os servidores estão em hosts diferentes e eu não tenho acesso a eles). Eu me conecto a esses hosts com ssh e não quero reinicializá-los e não quero modificar a configuração eth0.
Eu sei como obter algumas informações básicas do DHCP: nmap --script broadcast-dhcp-discover
Isto dá algumas informações realmente úteis. Mas lidamos com servidores DHCP com bugs, então eu quero configurar uma interface de rede "real" para testá-los a longo prazo.
Se eu usar uma interface de rede como eth0: 1, o dhclient se recusará a fazer o trabalho:
ip addr add 192.168.0.123/24 label eth0:1 dev eth0
dhclient -v eth0:1
# --> dhclient displays: Bind socket to interface: No such device
Eu então tentei criar uma interface de rede fictícia e conectá-la. MAS isso modifica a configuração para eth0, o que não é desejado:
ip link add br0 type bridge # create a bridge
# in one line, so the ssh connection is not lost (can additionnaly be wise
# to use "screen" but I currently do the tests on a local computer):
ip addr del 192.168.0.30/24 dev eth0; \
ip addr add 192.168.0.30/24 dev br0; \
ip link set dev eth0 master br0; \
ip link set dev br0 up
modprobe dummy # create dummy0
ip link set dev dummy0 master br0
Agora posso ter uma concessão de DHCP para eth0: dhclient -v eth0
funciona bem.
Mas dhclient -v dummy0
nunca recebe qualquer concessão DHCP (nenhum erro é exibido).
- > Como posso criar uma interface de rede corretamente conectada à rede física, sem tocar em eth0 (appart para tornar a eth0 parte da ponte)?