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 | ||
| 060-ipv6:060_icmp6 [le 04/03/2025 à 09:05] – [Capture du protocole] prof | 060-ipv6:060_icmp6 [le 04/03/2025 à 15:53] (Version actuelle) – [Multicast] prof | ||
|---|---|---|---|
| Ligne 11: | Ligne 11: | ||
| Contrairement à IPv4, IPv6 n' | Contrairement à IPv4, IPv6 n' | ||
| - | Comme nous les avons déjà rencontrées dans les [[060-ipv6: | + | Comme nous les avons déjà rencontrées dans [[060-ipv6: |
| - | * '' | + | * '' |
| * '' | * '' | ||
| + | Pour savoir quelles sont sur un nœud, les interfaces à l' | ||
| + | < | ||
| + | < | ||
| + | |||
| + | Interface | ||
| + | --------------- ------ --------------------- | ||
| + | lo 1 ff02::1 | ||
| + | lo 1 ff01::1 | ||
| + | <span class=" | ||
| + | enp1s0 | ||
| + | enp1s0 | ||
| + | </ | ||
| + | L' | ||
| + | < | ||
| + | <b>ip link ls enp1s0</ | ||
| + | |||
| + | 2: enp1s0: BROADCAST,< | ||
| + | <span class=" | ||
| + | </ | ||
| ===== NDP ===== | ===== NDP ===== | ||
| - | « Neighbor Discovery Protocol (découverte des voisins) ». Ce protocole permet aux nœuds d' | + | « Neighbor Discovery Protocol (découverte des voisins) ». Ce protocole permet aux nœuds d' |
| Ligne 25: | Ligne 44: | ||
| NDP utilise des messages ICMPv6 et les adresses multicast '' | NDP utilise des messages ICMPv6 et les adresses multicast '' | ||
| + | ==== Recherche d'un routeur ==== | ||
| - | + | Nous allons lancer notre wireshark favori à l' | |
| - | ==== Capture du protocole ==== | + | |
| - | + | ||
| - | Nous allons lancer notre wireshark favori à l' | + | |
| < | < | ||
| Ligne 40: | Ligne 57: | ||
| - un routeur dont l' | - un routeur dont l' | ||
| - | ==== Analyse de l' | + | ==== succéder à ARP ==== |
| + | En IPv4, lorsqu' | ||
| - | === La question === | + | En IPv6, ARP n'est plus, broadcast non plus. À la place il y a NDP qui va utiliser une adresse multicast spécifique: |
| - | Elle est assez simple, nous allons | + | Si nous démarrons notre wireshark en filtrant à la capture uniquement le protocole ICMP6, nous allons |
| + | < | ||
| + | No. | ||
| + | | ||
| + | | ||
| - | < | ||
| - | Frame 1 (62 bytes on wire, 62 bytes captured) | ||
| - | ... | ||
| - | Ethernet II, Src: 00: | ||
| - | <span class=" | ||
| - | Address: 33: | ||
| - | .... ...1 .... .... .... .... = IG bit: <span class=" | ||
| - | .... ..1. .... .... .... .... = LG bit: <span class=" | ||
| - | Source: 00: | ||
| - | Address: 00: | ||
| - | .... ...0 .... .... .... .... = IG bit: Individual address (unicast) | ||
| - | .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default)</ | ||
| - | Type: IPv6 (0x86dd) | ||
| - | Internet Protocol Version 6 | ||
| - | ... | ||
| - | <span class=" | ||
| - | Destination: | ||
| - | <span class=" | ||
| - | Type: 133 (Router solicitation)</ | ||
| - | Code: 0 | ||
| - | Checksum: 0xab1e [correct] | ||
| </ | </ | ||
| - | Notez, sur la couche Ethernet, les adresses multicast utilisées. | + | '' |
| + | - dans l' | ||
| + | - '' | ||
| + | - dans l' | ||
| + | Voilà pour un tour d' | ||
| + | Donc, pour une raison quelconque, la Freebox a eu besoin de rattacher l' | ||
| - | + | En regardant la partie spécifique à ICMPv6 | |
| - | Pour le reste, nous découvrons bien sur ICMPv6 | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | === La réponse === | + | |
| - | + | ||
| - | Ça va être un peu plus copieux ici. | + | |
| < | < | ||
| - | Frame 2 (158 bytes on wire, 158 bytes captured) | ||
| - | ... | ||
| - | Ethernet II, Src: 00: | ||
| - | <span class=" | ||
| - | Address: 33: | ||
| - | .... ...1 .... .... .... .... = IG bit: Group address (multicast/ | ||
| - | .... ..1. .... .... .... .... = LG bit: Locally administered address (this is NOT the factory default)</ | ||
| - | Source: 00: | ||
| - | Address: 00: | ||
| - | .... ...0 .... .... .... .... = IG bit: Individual address (unicast) | ||
| - | .... ..0. .... .... .... .... = LG bit: Globally unique address (factory default) | ||
| - | Type: IPv6 (0x86dd) | ||
| - | Internet Protocol Version 6 | ||
| - | ... | ||
| - | <span class=" | ||
| - | Destination: | ||
| Internet Control Message Protocol v6 | Internet Control Message Protocol v6 | ||
| - | | + | <span class=" |
| Code: 0 | Code: 0 | ||
| - | Checksum: | + | Checksum: |
| - | | + | |
| - | | + | |
| - | 0... .... = Not managed | + | ICMPv6 Option (Source link-layer |
| - | .0.. .... = Not other | + | |
| - | ..0. .... = Not Home Agent | + | |
| - | ...0 0... = Router preference: Medium | + | |
| - | Router lifetime: 1800 | + | |
| - | Reachable time: 0 | + | |
| - | Retrans timer: 0 | + | |
| - | + | ||
| - | <span class=" | + | |
| - | Type: Prefix information (3) | + | |
| - | Length: 32 | + | |
| - | Prefix length: 64 | + | |
| - | Flags: 0xc0 | + | |
| - | 1... .... = Onlink | + | |
| - | .1.. .... = Auto | + | |
| - | ..0. .... = Not router | + | |
| - | ...0 .... = Not site prefix | + | |
| - | <span class=" | + | |
| - | Preferred lifetime: 86400 | + | |
| - | Prefix: 2a01:5d8:52f3:500d::</ | + | |
| - | + | ||
| - | ICMPv6 Option <span class=" | + | |
| - | Type: Recursive DNS Server (25) | + | |
| - | Length: 40 | + | |
| - | Reserved | + | |
| - | Lifetime: 600 | + | |
| - | <span class=" | + | |
| - | Recursive DNS Servers: 2a01: | + | |
| - | </ | + | |
| - | ICMPv6 Option <span class=" | + | |
| - | Type: MTU (5) | + | |
| - | Length: 8 | + | |
| - | <span class=" | + | |
| - | </ | + | |
| - | ICMPv6 Option <span class=" | + | |
| Type: Source link-layer address (1) | Type: Source link-layer address (1) | ||
| - | Length: 8 | + | Length: |
| - | <span class=" | + | <span class=" |
| </ | </ | ||
| + | Confirmation que c'est bien la Freebox qui pose la question. | ||
| - | Tout est dit dans un seul paquet ICMP. Notez que ce message « Neighbor | + | La réponse: |
| + | < | ||
| + | Internet Control Message Protocol v6 | ||
| + | <span class=" | ||
| + | Code: 0 | ||
| + | Checksum: 0x7f63 | ||
| + | Flags: 0x60000000, Solicited, Override | ||
| + | <span class=" | ||
| + | <span class=" | ||
| + | <span class=" | ||
| + | ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0 | ||
| + | <span class=" | ||
| + | ICMPv6 Option (Target link-layer address : 52: | ||
| + | Type: Target link-layer address (2) | ||
| + | Length: 1 (8 bytes) | ||
| + | <span class=" | ||
| + | </ | ||
| + | La machine expérimentale répond avec ses flags: | ||
| + | - qu'elle n'est pas un routeur, | ||
| + | - qu' | ||
| + | - que la réponse remplace éventuellement une donnée périmée. | ||
| + | Voilà pour un tout d' | ||
ICMPv6, multicast, NDP...: Dernière modification le: 04/03/2025 à 09:05 par prof