User Tools

Site Tools


informatique:logiciels:dhcpd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
informatique:logiciels:dhcpd [2019/02/20 15:54] – [Diagnostic] Client désobéissant pteuinformatique:logiciels:dhcpd [2019/12/02 09:23] (current) – [Boot BIOS vs UEFI] pteu
Line 200: Line 200:
 </code> </code>
  
 +=====Boot BIOS vs UEFI=====
  
 +Pour prendre en compte le PXE avec des machines UEFI : on doit utiliser des fichiers différents en fonction de l'architecture (ia32 et x64) :
 +<code bash>
 +# Definition of PXE-specific options
 +# Code 1: Multicast IP address of bootfile
 +# Code 2: UDP port that client should monitor for MTFTP responses
 +# Code 3: UDP port that MTFTP servers are using to listen for MTFTP requests
 +# Code 4: Number of secondes a client must listen for activity before trying
 +#         to start a new MTFTP transfer
 +# Code 5: Number of secondes a client must listen before trying to restart
 +#         a MTFTP transfer
 +option space PXE;
 + option PXE.mtftp-ip    code 1 = ip-address;
 + option PXE.mtftp-cport code 2 = unsigned integer 16;
 + option PXE.mtftp-sport code 3 = unsigned integer 16;
 + option PXE.mtftp-tmout code 4 = unsigned integer 8;
 + option PXE.mtftp-delay code 5 = unsigned integer 8;
 +option arch code 93 = unsigned integer 16; # RFC4578
 +#
 +# [..]
 +class "pxeclients" {
 +   match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
 +   next-server 10.1.0.2;
 +   # 6    EFI IA32
 +   #<-> match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00006";
 +   if option arch = 00:06 {
 +      filename "uefi/bootia32.efi";
 +   # 7    EFI BC (EFI Byte Code)
 +   } else if option arch = 00:07 {
 +      filename "uefi/bootx64.efi";
 +   # Défaut (cas des machines avec BIOS classiques)
 +   } else {
 +      filename "pxelinux.0";
 +   }
 +}
 +</code>
 ======Diagnostic===== ======Diagnostic=====
  
Line 221: Line 257:
 Feb 20 16:06:14 srv1 dhcpd: DHCPACK to 10.40.22.67 (90:b1:1c:00:00:01) via eth0 Feb 20 16:06:14 srv1 dhcpd: DHCPACK to 10.40.22.67 (90:b1:1c:00:00:01) via eth0
 </code> </code>
-On voit que le client demande une IP, le serveur lui en propose une (10.40.2.173), mais le client "désobéit" et continue d'utiliser 10.40.22.67 alors qu'on le lui a interdit (DHCPNAK). C'est le cas typique d'un autre serveur DHCP sur le réseau qui, lui, valide cette IP-là.+On voit que le client demande une IP, le serveur lui en propose une (10.40.2.173), mais le client "désobéit" et continue d'utiliser 10.40.22.67 alors qu'on le lui a interdit (DHCPNAK). C'est le cas typique d'un autre serveur DHCP (rogue DHCPd) sur le réseau qui, lui, valide cette IP-là. 
 + 
 +====Client poli==== 
 + 
 +Si un client choisi bien une offre mais fini par la décliner (''DHCPDISCOVER-DHCPOFFER-DHCPREQUEST-DHCPACK'' puis ''DHCPDECLINE'') : 
 +<code bash> 
 +Oct 4 14:50:59 monserveur dhcpd: DHCPDECLINE of 10.40.0.12 from 10:65:30:00:11:22 via eth0: not found 
 +</code> 
 +.. cela peut être dû à une autre machine qui utilise déjà cette adresse sur le réseau. En effet, avant d'utiliser l'IP demandée au serveur, la plupart des clients DHCP pinguent cette adresse pour vérifier si elle n'est pas déjà utilisée. Si tel est le cas, ce dernier déclinera au final la proposition. 
informatique/logiciels/dhcpd.1550678078.txt.gz · Last modified: 2019/02/20 15:54 by pteu