próximo acima anterior sumário índice
Next: Notas Diversas Up: Configuração do Cliente Previous: Redes Token Ring   Sumário   Índice Remissivo


Executando o DHCPCD

Após a reinicialização da máquina, a interface de rede deve ser configurada.

Digite:

ifconfig

Deve-se obter algo como:


lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Bcast:127.255.255.255  Mask:255.0.0.0
          UP BROADCAST LOOPBACK RUNNING  MTU:3584  Metric:1
          RX packets:302 errors:0 dropped:0 overruns:0 frame:0
          TX packets:302 errors:0 dropped:0 overruns:0 carrier:0 coll:0

eth0      Link encap:Ethernet  HWaddr 00:20:AF:EE:05:45
------>   inet addr:24.128.53.102  Bcast:24.128.53.255  Mask:255.255.254.0
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:24783 errors:1 dropped:1 overruns:0 frame:1
          TX packets:11598 errors:0 dropped:0 overruns:0 carrier:0 coll:96
          Interrupt:10 Base address:0x300

caso se tenha algum número normal no campo endereço inet, então a máquina estará configurada. Caso se obtenha um endereço igual a 0.0.0.0 não se desespere, trata-se de uma configuração temporária antes que o dhcpcd obtenha o endereço IP. Se mesmo alguns minutos após se visualizar somente o endereço 0.0.0.0 por favor verifique a seção DHCPcd [*] (Resolução de Problemas). DHCPcd é um servidor que seguirá sendo executado enquanto o computador estiver ligado. Mesmo três horas depois ele irá contatar o servidor DHCP e tentará renovar o endereço IP. Todas as mensagens serão registradas no arquivo do syslog (no Slackware em /var/adm/syslog, RedHat/Conectiva/OpenLinux em /var/log/syslog).

Um detalhe final. É necessário especificar os servidores de nomes. Há duas formas de fazê-lo. Pode-se solicitar ao provedor para informar os endereços do servidor de nomes e colocá-los no /etc/resolv.conf ou o DHCPcd obterá uma lista do servidores DHCP e construirá um resolv.conf em /etc/dhcpc. Decidi usar os arquivos gerados pelo DHCPcd da seguinte forma: servidor de nomes

Gere uma cópia de segurança do /etc/resolv.conf da seguinte forma:

mv /etc/resolv.conf /etc/resolv.conf.antifo

Caso o diretório /etc/dhcpc não exista, ele deve ser criado da seguinte forma:

mkdir /etc/dhcpc

Crie uma ligação de /etc/dhcpc/resolv.conf para /etc/resolv.conf, através do seguinte comando:

ln -s /etc/dhcpc/resolv.conf /etc/resolv.conf

Caso isso não funcione, pode-se tentar o seguinte (ajuste sugerido por com uma pequena correção de Henrik Stoerner).

O último passo é executado somente porque meu dhcpcd não cria o arquivo /etc/dhcpc/resolv.conf. Em /etc/sysconfig/network-scripts/ifup efetuei as seguintes mudanças (as quais são mudanças simples, mas funcionam):


elif [ "$BOOTPROTO" = dhcp -a "$ISALIAS" = no ]; then
    echo -n "Usando DHCP para ${DEVICE}... "
    /sbin/dhcpcd -c /etc/sysconfig/network-scripts/ifdhcpc-done ${DEVICE}
    echo "echo \$$ > /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30" | sh

    if [ -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        echo "falhou."
        exit 1

Foi mudada para:


elif [ "$BOOTPROTO" = dhcp -a "$ISALIAS" = no ]; then
    echo -n "Usando DHCP para ${DEVICE}... "
    /sbin/dhcpcd
    echo "echo \$$ > /var/run/dhcp-wait-${DEVICE}.pid; exec sleep 30" | sh

    if [ ! -f /var/run/dhcp-wait-${DEVICE}.pid ]; then
        ^^^^^^
       echo "falhou."
       exit 1

Note o sinal de exclamação em
if [ ! -f /var/run/dhcp-wait-$$\{$DEVICE$\}$.pid ];

Agora sente-se e aprecie o seu desempeno. :-).


próximo acima anterior sumário índice
Next: Notas Diversas Up: Configuração do Cliente Previous: Redes Token Ring   Sumário   Índice Remissivo
Cyro Mendes de Moraes Neto 1999-12-30