Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
090_applicatifs:165dhcp:30-client_dhcp [le 16/02/2025 à 14:36] – ↷ Page déplacée de 050_applicatifs:165dhcp:30-client_dhcp à 090_applicatifs:165dhcp:30-client_dhcp prof | 090_applicatifs:165dhcp:30-client_dhcp [le 23/03/2025 à 09:40] (Version actuelle) – [La mémoire du client] prof | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== | + | ====== |
- | Tout système | + | Sur Debian 12 (Bookworm), le client dhcp installé par défaut est le client |
+ | ===== Configuration ===== | ||
- | Si le poste de travail est correctement configuré, le client DHCP s' | + | ==== nas ==== |
- | ===== MS Windows™ ===== | + | Version expurgée des commentaires: |
- | N' | + | < |
- | ==== Configuration ==== | + | option rfc3442-classless-static-routes code 121 = array of unsigned integer 8; |
- | Voici un moyen (parmi d' | + | |
- | Tu cliques à gauche sur '' | + | send host-name = gethostname(); |
- | {{ : | + | <span class=" |
- | Tout ceci doit faire apparaitre cette fenêtre : | + | domain-name, |
- | {{ : | + | dhcp6.name-servers, |
- | Là, tu cliques à droite sur la '' | + | |
- | {{ : | + | |
- | Tu cliques deux fois de suite à gauche sur '' | + | </pre></ |
- | {{ : | + | Ce fichier n'a pas été modifié, c'est donc la configuration |
- | Ici, il suffit de cliquer à gauche successivement sur '' | + | |
- | ==== Contrôle ==== | + | |
- | Il existe une méthode, dite « méthode en sept clics », qui permet de consulter sa configuration | + | |
- | Tu ouvres une '' | + | Toutes |
- | ipconfig | + | ==== democlient1 |
- | {{ : | + | < |
- | Nous obtenons alors l' | + | option rfc3442-classless-static-routes code 121 = array of unsigned integer 8; |
- | + | ||
- | Si nous souhaitons plus de détails, il faudra utiliser la commande : | + | |
- | ipconfig /all | + | |
- | {{ : | + | |
- | Nous voyons ici toutes | + | |
- | ===== GNU/ | + | |
- | Ici, nous sommes dans le bazar et suivant les distributions, | + | |
- | GNU/Linux étant en perpétuelle évolution, les possibilités de configuration du réseau ont suivi le même chemin. Il existe en gros deux moyens de le faire : | + | send host-name = gethostname(); |
- | * des fichiers texte qui décrivent la configuration de chaque interface, c'est la bonne vieille méthode, encore tout à fait d' | + | <span class=" |
- | * un système dynamique, '' | + | domain-name, domain-name-servers, domain-search, |
- | ==== NetworkManager ==== | + | |
- | Commençons par le plus « simple », c'est-à-dire la méthode où ce sont les autres qui choisissent à votre place (courant très en vogue de nos jours). Un « Desktop » avec Ubuntu 9.04 (Jaunty) est connecté au réseau où notre DHCP opère. Voici ce que ça donne : | + | |
- | {{ : | + | |
- | Tu cliques à droite sur l' | + | |
- | {{ : | + | <span class=" |
- | + | ||
- | Bien entendu, tout ceci fonctionne bien parce que les concepteurs d' | + | |
- | Les trois paquets essentiels, mais qui incluent beaucoup de dépendances, | + | |
- | * '' | + | |
- | * '' | + | |
- | * '' | + | |
- | + | ||
- | ==== A l' | + | |
- | Une méthode plus rustique, mais tout aussi efficace lorsque l'on est sédentaire, | + | |
- | + | ||
- | Nous sommes sur une Lenny sans interface graphique (pas de méthodes en X clics). Il nous faut bien sûr un client DHCP, pourquoi pas '' | + | |
- | <code> | + | |
- | auto lo | + | |
- | iface lo inet loopback | + | |
- | + | ||
- | auto eth0 | + | |
- | iface eth0 inet dhcp | + | |
- | </ | + | |
- | La traduction est assez intuitive : Nous voulons que eth0 soit activée automatiquement et soit configurée par DHCP. | + | |
- | + | ||
- | Après un démarrage de notre Lenny, voyons où nous en sommes. Il existe plusieurs façons de récolter les informations : | + | |
- | + | ||
- | === ifconfig === | + | |
- | Méthode traditionnelle : | + | |
- | < | + | |
- | # ifconfig eth0 | + | |
- | eth0 Link encap:Ethernet | + | |
- | <span class=" | + | |
- | adr inet6: 2a01: | + | |
- | adr inet6: fe80:: | + | |
- | UP BROADCAST RUNNING MULTICAST | + | |
- | RX packets:134 errors:0 dropped:0 overruns:0 frame:0 | + | |
- | TX packets:69 errors:0 dropped:0 overruns:0 carrier:0 | + | |
- | collisions: | + | |
- | RX bytes:18211 (17.7 KiB) TX bytes:9947 (9.7 KiB) | + | |
- | Interruption: | + | |
</ | </ | ||
- | === iproute | + | En revanche, ici le client envoie explicitement sa seule adresse MAC comme CID, ce qui explique l' |
- | Plus moderne | + | ===== La mémoire du client |
+ | isc-dhcp-client a de la mémoire. Elle est écrite dans le fichier ''/ | ||
< | < | ||
- | # ip addr ls dev eth0 | + | cat dhclient.enp1s0.leases |
- | 2: eth0: < | + | default-duid |
- | link/ether 00: | + | |
- | <span class=" | + | |
- | inet6 2a01: | + | |
- | | + | |
- | inet6 fe80:: | + | |
- | | + | |
- | </ | + | |
- | === les logs === | + | |
- | Si nous voulons vraiment savoir ce qu'il s'est passé au niveau DHCP, il suffit de consulter les logs du client '' | + | |
- | < | + | |
- | # cat / | + | |
lease { | lease { | ||
- | interface "eth0"; | + | interface "enp1s0"; |
- | fixed-address 192.168.0.67; | + | fixed-address 192.168.61.2; |
option subnet-mask 255.255.255.0; | option subnet-mask 255.255.255.0; | ||
- | | + | option dhcp-lease-time 3600; |
- | <span class=" | + | option routers 192.168.61.1; |
option dhcp-message-type 5; | option dhcp-message-type 5; | ||
- | option domain-name-servers 192.168.0.252; | + | |
- | option dhcp-server-identifier 192.168.0.252; | + | |
- | option | + | option domain-search " |
- | option domain-name "maison.mrs"; | + | option dhcp-renewal-time 1800; |
- | <span class=" | + | option dhcp-rebinding-time 2700; |
- | rebind | + | option host-name " |
- | expire | + | option dhcp-client-identifier ff:0: |
+ | renew 6 2025/03/22 11:04:54; | ||
+ | rebind 6 2025/03/22 11:20:11; | ||
+ | expire 6 2025/03/22 11:35:11; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff:0: | ||
+ | renew 6 2025/03/22 11:29:41; | ||
+ | rebind 6 2025/03/22 11:49:54; | ||
+ | expire 6 2025/03/22 12:04:54; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff:0: | ||
+ | renew 6 2025/03/22 11:54:35; | ||
+ | rebind 6 2025/03/22 12:14:41; | ||
+ | expire 6 2025/03/22 12:29:41; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search | ||
+ | | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff: | ||
+ | renew 6 2025/03/22 12:21:31; | ||
+ | rebind 6 2025/03/22 12:39:35; | ||
+ | expire 6 2025/03/22 12:54:35; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff: | ||
+ | renew 6 2025/03/22 12:46:46; | ||
+ | rebind 6 2025/03/22 13:06:31; | ||
+ | expire 6 2025/03/22 13:21:31; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff: | ||
+ | | ||
+ | | ||
+ | | ||
} | } | ||
</ | </ | ||
- | Nous avons ici toutes les informations transmises. Notre système est « neuf », c'est la première fois que l'interface est configurée. Comme nous sommes curieux, nous avons mis en place un « sniffeur » (l'indispensable Wireshark), qui a capturé le dialogue, mais nous verrons ça plus tard. | + | Le serveur était hors service et le client a perdu son adresse, mais il l'a récupérée aux alentours de 14:18:47 - 30 minutes soit 13:48:47. L'interruption |
- | + | ||
- | Les heures sont indiquées en UTC. | + | |
- | + | ||
- | La machine cliente | + | |
< | < | ||
lease { | lease { | ||
- | interface "eth0"; | + | interface "enp1s0"; |
- | fixed-address 192.168.0.67; | + | fixed-address 192.168.61.2; |
option subnet-mask 255.255.255.0; | option subnet-mask 255.255.255.0; | ||
- | option routers 192.168.0.252; | ||
option dhcp-lease-time 3600; | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
option dhcp-message-type 5; | option dhcp-message-type 5; | ||
- | option | + | option |
- | option | + | option |
- | option | + | option |
- | option | + | option |
- | renew 5 2009/05/08 08:38:00; | + | option dhcp-rebinding-time 2700; |
- | rebind | + | option host-name "nas"; |
- | expire | + | |
+ | <span class=" | ||
+ | rebind | ||
+ | expire | ||
} | } | ||
- | <span class=" | + | lease { |
- | interface "eth0"; | + | interface "enp1s0"; |
- | fixed-address 192.168.0.67; | + | fixed-address 192.168.61.2; |
option subnet-mask 255.255.255.0; | option subnet-mask 255.255.255.0; | ||
- | option routers 192.168.0.252; | ||
option dhcp-lease-time 3600; | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
option dhcp-message-type 5; | option dhcp-message-type 5; | ||
- | option domain-name-servers 192.168.0.252; | + | |
- | option dhcp-server-identifier 192.168.0.252; | + | |
- | option | + | option domain-search " |
- | option domain-name "maison.mrs"; | + | option dhcp-renewal-time 1800; |
- | <span class="bhly"> | + | option dhcp-rebinding-time 2700; |
- | rebind | + | option host-name " |
- | expire 5 2009/05/08 09:38:00;</span> | + | option dhcp-client-identifier ff:0: |
- | }</span> | + | renew 6 2025/03/22 14:48:17; |
+ | rebind 6 2025/03/22 15:03:47; | ||
+ | expire 6 2025/03/22 15:18:47; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff:0: | ||
+ | renew 6 2025/03/22 15:13:52; | ||
+ | rebind 6 2025/03/22 15:33:17; | ||
+ | expire 6 2025/03/22 15:48:17; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search | ||
+ | | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name | ||
+ | option dhcp-client-identifier ff: | ||
+ | | ||
+ | rebind | ||
+ | expire | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff: | ||
+ | renew 6 2025/03/22 16:06:35; | ||
+ | rebind 6 2025/03/22 16:25:37; | ||
+ | expire 6 2025/03/22 16:40:37; | ||
+ | } | ||
+ | lease { | ||
+ | interface " | ||
+ | fixed-address 192.168.61.2; | ||
+ | option subnet-mask 255.255.255.0; | ||
+ | option dhcp-lease-time 3600; | ||
+ | option routers 192.168.61.1; | ||
+ | option dhcp-message-type 5; | ||
+ | option dhcp-server-identifier 192.168.61.1; | ||
+ | option domain-name-servers 192.168.61.1; | ||
+ | option domain-search " | ||
+ | option dhcp-renewal-time 1800; | ||
+ | option dhcp-rebinding-time 2700; | ||
+ | option host-name " | ||
+ | option dhcp-client-identifier ff: | ||
+ | renew 6 2025/03/22 16:29:12; | ||
+ | rebind 6 2025/03/22 16:51:35; | ||
+ | expire 6 2025/03/22 17:06:35; | ||
+ | } | ||
</ | </ | ||
- | Notre client | + | Le client |
- | + | ||
- | Notre Wireshark n'a rien perdu de tout ceci, nous pouvons aller y voir de plus près. | + | |
- | + | ||
- | + |
Le client DHCP d'ISC: Dernière modification le: 16/02/2025 à 14:36 par prof