dhclient e dhcpcd a diferença real

13

Não consigo descobrir a diferença apenas nas páginas de manual. Eu posso ver o que é um daemon e o outro é um cliente, mas o que isso significa praticamente ao usar os comandos? Além disso, qual é a diferença entre o cliente e o daemon nesse caso, não apenas os termos (cliente e daemon), mas funcionalmente sábio? EDIT: Como as tarefas são divididas, se o cliente atualiza as informações no cliente, qual é o objetivo do daemon. Eu estou falando sobre o daemon do cliente, neste caso, dhcpcd e não dhcpd. Ambos são instalados por padrão com algumas versões do Linux e parecem compartilhar os deveres do cliente dhcp.

NAME dhcpcd - daemon do cliente DHCP

Name
dhclient - Dynamic Host Configuration Protocol Client 
rubixibuc
fonte

Respostas:

17

O ISC fornece dhclient e, como tal, serve como uma espécie de referência. O dhcpcd mais leve está um pouco mais atualizado. O dhcpcd e o dhclient são daemons de cliente DHCP com capacidade total. Dhclient não é um utilitário "único":

homem dhclient

-w Continue executando mesmo que nenhuma interface de transmissão tenha sido encontrada. Normalmente, o cliente DHCP será encerrado se não conseguir identificar nenhuma interface de rede para configurar. (...)

Isso é mais parecido com o comportamento padrão do dhcpcd.


O DHCP tem sido uma espécie de alvo em movimento, com vários fornecedores (Microsoft em particular) introduzindo vários desvios do padrão.

alguém
fonte
2

O Debian oferece um dhcpcdpacote. A descrição do pacote é a seguinte:

Simple configuration: supports executions of a script when the IP address changes.

dhclienté geralmente usado desta maneira: dhclient -v eth0ou similar - o que acontecerá é que ele enviará uma transmissão eth0e, se um servidor DHCP responder, aplicará as informações fornecidas eth0. Ele sairá. Não monitorará a interface posteriormente. Eu não usei, dhcpcdmas presumo que esse seja o seu propósito.

Você usaria dhclientse as coisas estivessem bagunçadas e quisesse buscar um IP novo de um servidor DHCP manualmente. Boa ferramenta para ter e é por isso que muitas distros a incluem, suponho.

LawrenceC
fonte
2

O dhclient é um cliente único - ele chega ao servidor uma vez e apenas uma vez para solicitar ou validar o endereço IP de um cliente.

Por outro lado, o dhcpcd é executado em segundo plano e gerencia ativamente solicitações após o tempo de concessão expirado, etc. pp. Sem precisar ser chamado novamente.

BTW não confunda dhcpcd e dhcpd. O último é um servidor dhcp - ou seja, ele entrega endereços para dispositivos de rede quando configurado para isso. Você geralmente não usará o dhcpd em um computador, a menos que esteja usando esse computador específico para gerenciar endereços IP para toda a rede.

uSlackr
fonte
2
Voto negativo: eu discordo. Vi o dhclient permanecer em execução e lidar com renovações de concessão de DHCP. Talvez suas informações sejam precisas para alguma versão do software dhclient, mas não para o dhclient ISC (que geralmente é a versão de referência). Tente verificar se o que está sendo executado após o dhclient parece estar pronto. Você pode achar que, mesmo retornando o terminal ao prompt de comando, ele ainda está em execução.
TOOGAM
2

Parece que o dhclient do ISC não é um cliente único. É página de manual diz:

The DHCP client will normally run in the foreground until it has 
configured an interface, and then will revert to running in the 
back-ground.

Você pode usar o sinalizador -1 para solicitar ao dhclient que tente apenas uma vez obter um IP e saia com falha. Na página do manual:

The -1 flag cause dhclient to try once to get a lease.  If it 
fails, dhclient exits with exit code two.
Vladimir
fonte