- Principalement : gaspillage, car adressage hiérarchique (on a fait des parts nécessairement plus grosse que les besoins)
- Plages "réservés" non allouables (exemple : IP privées, broadcast, ...)
    • IP privée (allouée sans concertation \neq publique)
      • 192.168.0.0/16
      • 10.0.0.0/8
      • 172.16.0.0/12
    • IP locale (\neq globale, non routable)
      C’est 192.168.1.1 parce que c’est la plus petite affectable / la première
  1. Plan de donnée (vers quel port router quel paquet) \neq Plan de contrôle (construire la table de routage)

    • Utiliser IPv6 (recommander)
    • Acheter des plages inutilisées
    • NAT : traduction d’adresses (principalement les réseaux téléphoniques)
    • Subdiviser par plages de ports (mais on perd la capacité d’être serveur)
  2. A veut envoyer un paquet IP à C @source 2.0.0.1 @dest 3.0.0.2 + contenu. On suppose que toutes les tables sont bien remplies, donc A envoie une trame Ethernet (qui contient un paquet IP) à B @source 00:1C:25:00:00:01 @dest 00:1C:25:00:00:02 + contenu (paquet IP)
    B envoie à C une trame @source 1 (adresse ARCnet) @dest 2 (adresse ARCnet) + contenu (le même paquet IP sauf le champs TTL qui est décrémenter + le checksum mis à jour
    Puis trame ARCnet C \ra B @source 2 @dest 1 + contenu paquet ip @source 3.0.0.2 @dest 2.0.0.1 Enfin trame Ethernet $B \ra A$ @source 00:1C:25:00:00:02 @dest 00:1C:25:00:00:01 + contenu (même paquet IP C -> A 2. Une table de routage associe une définition (= une plage d'adresse = un préfixe) à une interface **et** l'adresse IP du prochain routeur. Table de $A$ :2.0.0.2/8-eth0 3.0.0.0/8-eth0 (2.0.0.2/ next routeur) Table de $B$ :3.0.0.2/32-arc0 2.0.0.1/32-eth0On observe les adresses de l'ethernet en2.x.y.zet ARCnet en3.x.y.z, donc : - 3.0.0.0/8-arc0-2.0.0.0/8-eth0`
    3. Cache ARP de A :

    • IP \ra MAC
    • 2.0.0.2 \ra 00:1C:25:00:00:02
      Cache ARP de B
    • IP \ra MAC
    • 2.0.0.1 \ra 00:1C:25:00:00:01
    • ARP pour ARCnet??
      4. x
    • Tables mises à jour de 2.2 :
      Table de A :
      2.0.0.2/8 - eth0
      3.0.0.0/8 - eth0 (2.0.0.2 / next routeur)
      0.0.0.0/0 (tout/default) - eth0 (2.0.0.2 / gateway/passerelle)
      Table de B :
      3.0.0.2/32 - arc0
      2.0.0.1/32 - eth0
      0.0.0.0 - arc0 (3.0.0.2)
    • On peut enlever la deuxième, car elle est redondante.
      Table minimale = la plus petite possible
      2.0.0.2/8 - eth0
      0.0.0.0/0 - eth0 (2.0.0.2)
  3. On peut donner ces noms aux liens de C :
    ex3
    172.23.152.12 - eth0
    172.23.152.22 - eth0
    Qu’on peut simplifier avec un masque :
    0.0.0.0/0 - eth0/172.23.152.28 (Internet global)
    172.23.152.0/24 - eth0 (A, B, C)
    172.23.154.0/24 - eth0/172.23.152.22 (D_{1}, D_{2}, D_{3}, D_{\text{en bas}})
    172.23.153.0/24 - eth1 (E_{\text{en haut}})
    172.23.252.0/24 - eth1/172.23.153.13 (E_{\text{en bas}}, F)
    2127.0.0.1/32 - lo (loopback)
    Un paquet vers 172.23.252.13 part par eth0 ou eth1 ? On match 2 règles : une /0 et une /24
    \RA on choisit le plus long préfixe donc on applique /24

  4. dev : nom de l’interface
    via : IP du next hop (prochain routeur)
    default : 0.0.0.0/0
    proto kernel: configuration automatique local
    scope link : adresse locale
    Règle 1 : Trafic internet vers passerelle : 172.23.57.254
    Règle 2 : Trafic local (/20)

  5. Parce qu’il faut associer une IP à une interface

  6. 2001::0 IPv6 globale
    20::0/8 peut-être déjà affectée
    \RA FE80::0/16 : fabrique une IPv6 locale avec un lien avec l’adresse MAC collée dans le suffixe + préfixe FE80

  7. ex4
    2001:66:3301:9202::/64 - eth0
    2001:66:3301:9201::/64 - eth1
    2001:66:3301:9203::/64 - eth1 (inventée - sous réseau local de R') avec R' : FE80::12:35
    0.0.0.0/0 - eth2/FE80::12:34
    ::1 - lo (loopback)

  8. Ordi : 192.168.0.1
    IP de l’imprimante : 192.168.0.27
    Quelle @MAC d’imprimante ?
    Requête : IP Source : 192.168.0.1
    ARP : MAC source : 00:1C::1
    : IP dest : 192.168.0.27
    : MAC dest : FF:FF:FF:FF:FF:FF (broadcast)

  9. Oui car réponse et communications ultérieures en ont besoins

  10. Non

  11. Non + les autres machines n’entendent pas la réponse donc elles ne peuvent rien stocker

  12. On met un cache ARP qui ne dure pas longtemps \RA durée de vie courte (1 minute)

  13. Pour pas perdre l’adresse parce que la durée de vie est courte. Toute trame avec une adresse MAC contenant un paquet adresse IP on remet 0 le timer de (adresse MAC, adresse IP)

  14. On envoie un unicast à l’ancienne adresse MAC. Si elle répond alors c’est bon, sinon on doit broadcast.