web-dev-qa-db-fra.com

Comment les routeurs attribuent-ils les adresses IP?

Comment un routeur attribue-t-il une adresse IP? Est-ce aléatoire ou existe-t-il une méthode définie?

Il semble que le même appareil, quelle que soit l'heure à laquelle il a été connecté, semble se voir attribuer la même adresse IP. Le routeur connaît-il l'adresse MAC et attribue-t-il la même adresse IP ou y a-t-il autre chose?

14
agz

Les adresses IPv4 sont généralement attribuées à l'aide du protocole DHCP. Comment cela se produit, dépend du serveur DHCP particulier exécuté sur le routeur ...

  • Avec DHCP, les adresses sont louées pour une certaine période. Ainsi, si un périphérique redémarre demande une adresse avant l'expiration du bail, le routeur donne généralement la même adresse (en fonction de l'ID client DHCP ou de l'adresse MAC).

  • Certains serveurs DHCP mémorisent l'adresse qui a été émise même un certain temps après l'expiration du bail. Ils communiquent donc toujours la même adresse au même périphérique.

  • Si le périphérique n’a pas été vu précédemment, cela dépend de la mise en œuvre - la nouvelle adresse est généralement choisie de manière aléatoire, mais parfois de manière séquentielle, et parfois basée sur une sorte de hachage sur l’adresse MAC afin que le routeur soit au moins essaie de redonner l'ancienne adresse.

Par exemple, pour citer la page de manuel dhcpd.conf(5) du serveur DHCP ISC dhcpd :

 Le serveur DHCP génère la liste des adresses IP disponibles à partir d'une table de hachage 
. Cela signifie que les adresses ne sont pas triées dans un ordre particulier, il est donc impossible de prédire l'ordre dans lequel 
 Le serveur DHCP attribuera les adresses IP. Les utilisateurs des versions antérieures 
 Du serveur DHCP ISC se sont peut-être habitués au serveur DHCP 
 Qui attribue les adresses IP par ordre croissant, mais cela n’est plus possible. 
 n’est aucun moyen de configurer ce comportement avec la version 3 de 
 du serveur DHCP ISC. 

Pour IPv6, il existe un protocole similaire DHCPv6, auquel la réponse ci-dessus s'applique toujours.

Cependant, de nombreux réseaux utilisent un protocole plus simple "autoconfiguration sans état" dans lequel le routeur diffuse uniquement le préfixe (adresse réseau), et les périphériques attribuent leurs propres adresses IP. La mission se fait de deux manières:

  • Avec une "configuration automatique sans état" ( RFC 4862 ), la partie "hôte" des adresses IP est en fonction de l'adresse matérielle du périphérique . Pour les adresses MAC 48 bits, le second bit est inversé et ff:fe est inséré au milieu (pour passer à 64 bits)

    Par exemple, le préfixe 2001:470:1f0b:915::/64 plus l'adresse MAC 48:5d:60:e8:65:8f donne l'adresse IP 2001:470:1f0b:915:4a5d:60ff:fee8:658f.

  • Avec "Privacy Extensions" ( RFC 4941 ), la partie "hôte" est choisie de manière aléatoire - et une nouvelle adresse est ajoutée. toutes les 10 heures aussi.

    Notez que les "extensions de confidentialité" sont presque toujours utilisées en plus de l'adresse IP normale "sans état" basée sur MAC.

13
grawity

Je pense qu'il est important de souligner que les routeurs n'attribuent pas d'adresses IP: les routeurs reçoivent un paquet IP sur une interface et l'envoient presque inchangé sur une autre interface (les changements auxquels je peux penser diminuent le TTL et mettre à jour la somme de contrôle du paquet IP; même changer l'adresse IP dans le paquet (NAT) ne relève pas de la tâche d'un routeur).

Les périphériques appelés routeurs domestiques sont bien plus que des routeurs, ils incluent également certaines des fonctionnalités/services suivants:

  • Serveur DHCP (c'est le service qui attribue les adresses IP),
  • Modem ADSL (pour négocier une connexion au FAI),
  • Pare-feu (pour filtrer les connexions entrantes et sortantes),
  • NAT périphérique entrant et sortant (pour partager l'adresse IPv4 unique allouée par le fournisseur de services Internet pour tous les périphériques du réseau domestique),
  • Routeur,
  • Commutateur,
  • Antenne WiFi,
  • Serveur Web,
  • Console (web, ssh ou telnet) pour configurer le périphérique,
  • Autres...

(Remarque: les pare-feu peuvent généralement utiliser NAT et le routage entrants et sortants, même si ces 4 fonctions peuvent être effectuées à l'aide de périphériques dédiés.)

Dans les déploiements d'entreprise de grande taille, le serveur DHCP est souvent hébergé sur des serveurs Linux ou Windows dédiés (généralement un cluster) qui n'a rien à voir avec les routeurs.

4
jfg956

Généralement (pour IPV4), le système utilisé s'appelle "DHCP" et fonctionne globalement comme suit.

  • Le routeur exécute un "serveur DHCP", qui contient une table avec des adresses IP pouvant être utilisée.
  • Chaque ordinateur émet une requête DHCP, qui est essentiellement un paquet (avec son adresse MAC) envoyé sur le réseau en disant "Quelle adresse IP puis-je avoir?"
  • Le routeur examine le paquet reçu et indique votre adresse IP, votre passerelle, votre serveur DNS [et tout le reste]
  • L'ordinateur se configure alors tout seul.

L'adresse MAC peut être utilisée par la table du serveur DHCP pour s'assurer que la machine obtient la même adresse IP, si elle est disponible à chaque fois.

4
davidgo