dhcpcd-9.1.4

Introduction à dhcpcd

dhcpcd est une implémentation du client DHCP spécifié dans RFC2131. Un client DHCP sert à connecter votre ordinateur à un réseau qui utilise DHCP pour affecter les adresses réseau. dhcpcd vise à être un client très complet mais toujours très léger.

Ce paquet est connu pour se construire correctement sur une plateforme LFS-9.1.

Informations sur le paquet

Dépendances de dhcpcd

Facultatives

LLVM-10.0.1 (avec Clang), ntp-4.2.8p15, chronyd et ypbind

Notes utilisateur : http://wiki.linuxfromscratch.org/blfs/wiki/dhcpcd

Installation de dhcpcd

Les versions récentes de dhcpcd implémentent la séparation de privilèges. Des étapes d'installation supplémentaires sont nécessaires pour configurer l'environnement approprié, elles sont effectuées en lançant les commandes suivantes en tant qu'utilisateur root :

install  -v -m700 -d /var/lib/dhcpcd &&

groupadd -g 52 dhcpcd        &&
useradd  -c 'dhcpcd PrivSep' \
         -d /var/lib/dhcpcd  \
         -g dhcpcd           \
         -s /bin/false     \
         -u 52 dhcpcd &&
chown    -v dhcpcd:dhcpcd /var/lib/dhcpcd 

Installez dhcpcd en lançant les commandes suivantes :

./configure --libexecdir=/lib/dhcpcd \
            --dbdir=/var/lib/dhcpcd  \
            --privsepuser=dhcpcd     &&
make

Pour tester les résultats lancez : make test.

Maintenant, en tant qu'utilisateur root :

make install

Explication des commandes

--libexecdir=/lib/dhcpcd : le répertoire par défaut /libexec n'est pas compatible FHS. Comme le répertoire doit être disponible plus tôt dans le démarrage, /usr/libexec ne peut pas être utilisé non plus.

--dbdir=/var/lib/dhcp : le répertoire par défaut /var/db n'est pas compatible FHS

--with-hook=... : Vous pouvez éventuellement installer plus de crochets, par exemple pour installer quelques fichiers de configuration comme ntp.conf. L'ensemble des crochets est dans le répertoire dhcpcd-hooks dans l'arbre de construction.

Configurer dhcpcd

Fichiers de configuration

/etc/dhcpcd.conf

Informations de configuration

Pour configurer dhcpcd, vous avez tout d'abord besoin d'installer le script du service réseau, /lib/services/dhcpcd inclus dans le paquet blfs-bootscripts-20200404 (comme utilisateur root) :

make install-service-dhcpcd
[Note]

Note

le script de service réseau /lib/services/dhcpcd contenu dans les scripts de démarrage jusqu'à blfs-bootscripts-20191204 n'est plus compatible avec le dernier dhcpcd car l'emplacement du fichier de pid a changé. Pour contourner cela, lancez la commande suivante :

sed -i "s;/run/dhcpcd-;/run/dhcpcd/;g" /lib/services/dhcpcd
[Note]

Note

Le comportement par défaut de dhcpcd est de régler le nom de l'hôte et les paramètres du MTU. Il écrase aussi /etc/resolv.conf et /etc/ntp.conf. Ces modifications des fichiers de système et des paramétrages des fichiers de configuration système sont faites par les scripts conservés dans /lib/dhcpcd/dhcpcd-hooks. Paramétrez dhcpcd en supprimant ou en ajoutant des scripts dans ce répertoire. Vous pouvez désactiver l'exécution des scripts en utilisant l'option --nohook (-C) de la ligne de commande ou via l'option nohook du fichier /etc/dhcpcd.conf.

Enfin, en tant qu'utilisateur root, créez le fichier de configuration /etc/sysconfig/ifconfig.eth0 en utilisant les commandes suivantes. Ajustez de façon appropriée les interfaces supplémentaires.

cat > /etc/sysconfig/ifconfig.eth0 << "EOF"
ONBOOT="yes"
IFACE="eth0"
SERVICE="dhcpcd"
DHCP_START="-b -q <insert appropriate start options here>"
DHCP_STOP="-k <insert additional stop options here>"
EOF

Pour plus d'informations sur les valeurs appropriées de DHCP_START et DHCP_STOP, consultez la page de man de dhcpcd.

Information de configuration : ip fixe

Même si c'est pas commun, il est possible que vous vouliez configurer dhcpcd pour utiliser une ip fixe. Ici, nous donnons un exemple. En tant qu'utilisateur root créez le fichier de configuration /etc/sysconfig/ifconfig.eth0 en utilisant les commandes suivantes. Ajustez comme il le faut les interfaces supplémentaires, l'ip et le routeur dont vous avez besoin :

cat > /etc/sysconfig/ifconfig.eth0 << "EOF"
ONBOOT="yes"
IFACE="eth0"
SERVICE="dhcpcd"
DHCP_START="-b -q -S ip_address=192.168.0.10/24 -S routers=192.168.0.1"
DHCP_STOP="-k"
EOF

Vous pouvez également utiliser les serveurs DNS de /etc/resolv.conf par un autre système, vos serveurs préférés, ou juste le ficher d'exemple /etc/resolv.conf.head ci-dessous :

cat > /etc/resolv.conf.head << "EOF"
# OpenDNS servers
nameserver 208.67.222.222
nameserver 208.67.220.220
EOF

Contenu

Programme installé: dhcpcd
Bibliothèque installée: /lib/dhcpcd/dev/udev.so
Répertoire installé: /{,var/}lib/dhcpcd and /usr/share/dhcpcd

Descriptions courtes

dhcpcd

est une implémentation du client DHCP spécifiée dans RFC2131.

udev.so

ajoute le support de udev pour les arrivées et départs d'interface ; c'est parce que udev aime renommer les interfaces ce qui ne peut pas se faire si dhcpcd la récupère avant.

Last updated on 2020-07-04 16:05:16 +0000