Atualmente, tenho o servidor Ubuntu 10.04 configurado com dhcp3-server e uma interface em ponte (br0) para uso em máquinas virtuais. O problema que tenho é que, quando o servidor é reiniciado, o dhcp3-server falha ao carregar devido ao atraso extra causado pela abertura da interface em ponte.
Essencialmente, o br0 não tem um endereço IP para uso com o servidor DHCP3 até o final do ciclo de inicialização, bem depois que o servidor DHCP3 tenta carregar.
Depois que o servidor inicializar, eu posso executar '/etc/init.d/dhcp3-server start' sem nenhum problema.
Existe alguma maneira de: - Forçar o dhcp3-server a esperar até que a interface seja carregada antes de tentar carregar? - Inicie o dhcp3-server depois que todo o resto for carregado?
fonte
Você pode modificar o
/etc/init.d/dhcp3-server
script de inicialização para aguardar a disponibilidade de um endereço IPbr0
. Por exemplo: (Aviso: código não testado!)O snippet deve ir para o script de inicialização, dentro da
case ... start)
parte, antes da inicialização do daemon DHCP3. Obviamente, você deve ajustar o tempo de espera e o número de tentativas para corresponder ao seu ambiente (quanto tempo leva para o br0 obter o endereço IP?)fonte
grep -q
linha: 1. Acho que a correspondência falha porque a ponte adquire um endereço IPv6 assim que termina. Se você estiver interessado apenas no endereço IPv4, substitua agrep
linha porgrep -q 'inet addr:'
(já feita acima); caso contrário, uma expressão regular mais complexa precisará ser encontrada, que corresponda a todos os possíveis endereços IP finais da sua ponte. 2. A-q
saída suprime opção (como> /dev/null
)log_warning_msg
; Acho que fixa-lo de acordo com sua sugestão