A ethernet virtual não está recebendo seu ip estático no hotplug

1

Eu preciso configurar uma interface ethernet para obter seu endereço IP dinamicamente se houver um servidor dhcp lá fora, e sempre ter um ip estático se houver um servidor dhcp presente ou não.

Eu tenho o seguinte arquivo /etc/network/interfaces :

...
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static
  address 10.0.10.2
  netmask 255.255.255.0

...

Se o cabo estiver conectado enquanto o sistema está inicializando, a interface virtual ( eth0:1 ) está recebendo seu ip estático. Se o cabo estiver conectado após o sistema estar ativo, eth0 está obtendo seu ip dinâmico do servidor dhcp, mas eth0:1 não está tendo nenhum ip.

Por que isso?

    
por ceremcem 03.12.2014 / 02:00

1 resposta

0

Esta é uma solução alternativa por enquanto.

Eu mantenho este script vivo pelo supervisor :

#!/bin/bash 

is_cable_plugged() {
 if [ "'ifconfig eth0|sed -n '/running/I p''" == '' ];then echo no;else echo yes;fi
}


while true; do
    if [[ "$(is_cable_plugged)" == "no" ]]; then 
        while true; do
            if [[ "$(is_cable_plugged)" == "yes" ]]; then
                echo "DEBUG: Cable is now connected, reloading networking..." 
                /etc/init.d/networking reload
                break
            fi
            echo "DEBUG: Waiting for cable to be connected..."
            sleep 2s
        done
    fi
    echo "DEBUG: Cable is connected, do nothing..."
    sleep 10s
done
    
por 03.12.2014 / 03:33