Beruflich Dokumente
Kultur Dokumente
Rick Graziani
Cabrillo College
Rick.Graziani@cabrillo.edu
For more information please check out my Cisco Press book and video series:
©
10.1: Introducing ICMPv6
Neighbor Discovery
ICMPv6 Neighbor Discover Protocol
ICMPv6 Neighbor Discovery defines 5 different packet types:
• Router Solicitation Message
• Router Advertisement Message Router-Device
Messaging
Used with dynamic address allocation
• Redirect Message
Similar to ICMPv4 redirect message See these processes with:
Router-to-Device messaging R1# debug ipv6 nd
©
ICMPv6 Redirect
Network X
R1 R2
Destination:
Network
PCB X Host
IPv6
Network A PCA PCB IPv6
Network B
©
10.2: Router Solicitation and
Router Advertisement Messages
Dynamic Address Allocation in IPv4
DHCPv4 Server
I need IPv4
addressing
information.
Here is everything
you need.
©
Dynamic Address Allocation in IPv6
To all IPv6 routers: I might not be
Router(config)# ipv6 unicast-routing I need IPv6 address needed.
information.
DHCPv6 Server
To all IPv6 devices: ICMPv6 Router Advertisement
Let me tell you how
to do this … 1. SLAAC
SLAAC
2. SLAAC with
(Stateless Address Autoconfiguration)
Stateless DHCPv6
3. Stateful DHCPv6
©
RA Message Options
©
Analyzing the Router Solicitation Message
©
Ethernet II, Src: 00:21:9b:d9:c6:44, Dst: 33:33:00:00:00:02
Ethernet multicast MAC address – Maps to “all IPv6 routers”
Internet Protocol Version 6
0110 .... = Version: 6 [Traffic class and Flowlabel not shown]
Payload length: 16
Next header: ICMPv6 (0x3a) Next header is an ICMPv6 header
Hop limit: 255
Source: fe80::50a5:8a35:a5bb:66e1 Link-local address of PC1
Destination: ff02::2 All-IPv6-routers multicast address
©
R1(config)# ipv6 unicast-routing
An IPv6 Router
R1# show ipv6 interface gigabitethernet 0/0
GigabitEthernet0/0 is up, line protocol is up
IPv6 is enabled, link-local address is FE80::1
Global unicast address(es):
2001:DB8:CAFE:1::1, subnet is 2001:DB8:CAFE:1::/64
Joined group address(es):
FF02::1
FF02::2 All-routers multicast group
FF02::1:FF00:1
MTU is 1500 bytes
<output omitted for brevity>
ND advertised retransmit interval is 0 milliseconds
ND router advertisements are sent every 200 seconds
ND router advertisements live for 1800 seconds
Hosts use stateless autoconfig for addresses. M & O flags = 0
©
Analyzing the Router
Advertisement Message
Ethernet II, Src: 00:03:6b:e9:d4:80, Dst: 33:33:00:00:00:01
Ethernet multicast MAC address – Maps to “All-IPv6 devices”
Internet Protocol Version 6
0110 .... = Version: 6
.... 1110 0000 .... .... .... .... .... = Traffic class: 0x000000e0
.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000
Payload length: 64
Next header: ICMPv6 (0x3a) Next Header is an ICMPv6 header
Hop limit: 255
Link-local address of R1. Added to hosts’ Default Router List
Source: fe80::1
and is the address they will use as their default gateway.
Destination: ff02::1
2 1 Neighbor
Know
My IPv6!
Here is the Neighbor Neighbor Cache IPv6, what
Advertisement Solicitation is the
MAC?
MAC?
©
Neighbor Solicitation and Neighbor Advertisement
2001:DB8:CAFE:1::200/64 2001:DB8:CAFE:1::100/64
FF02::1:FF00:200 (Solicited Node Multicast)
MAC Address MAC Address
PC2 00-1B-24-04-A2-1E 00-21-9B-D9-C6-44 PC1
1
PC1> ping 2001:DB8:CAFE:1::200
4 3 Neighbor Cache 2 5
Neighbor Neighbor <empty until step 5>
Advertisement Solicitation
©
Neighbor Solicitation
2001:DB8:CAFE:1::200/64 2001:DB8:CAFE:1::100/64
FF02::1:FF00:200 (Solicited Node Multicast) Neighbor
MAC Address MAC Address Cache
PC2 00-1B-24-04-A2-1E 00-21-9B-D9-C6-44 PC1
©
Ethernet II, Src: 00:21:9b:d9:c6:44, Dst: 33:33:ff:00:02:00
PC1
NS Internet Protocol Version 6 Mapped multicast address for PC2
0110 .... = Version: 6
.... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000
.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000
Payload length: 32
Next header: ICMPv6 (0x3a) Next header is an ICMPv6 header
Hop limit: 255
Source: 2001:db8:cafe:1::100 Global unicast address of PC1
Destination: ff02::1:ff00:200 Solicited-node multicast address of PC2
Neighbor Cache
©
Ethernet II, Src: 00:1b:24:04:a2:1e, Dst: 00:21:9b:d9:c6:44
PC2
NA Internet Protocol Version 6 Unicast MAC address of PC1
0110 .... = Version: 6
.... 0000 0000 .... .... .... .... .... = Traffic class: 0x00000000
.... .... .... 0000 0000 0000 0000 0000 = Flowlabel: 0x00000000
Payload length: 32
Next header: ICMPv6 (0x3a) Next header is an ICMPv6 header
Hop limit: 255
Source: 2001:db8:cafe:1::200 Global unicast address of PC2
Destination: 2001:db8:cafe:1::100 Global unicast address of PC1
PC1
Neighbor Cache
IPv6 Address MAC Address
2001:DB8:ACAD:1::10 0021.9bd9.c644 IPv6 - 2001:DB8:ACAD:1::10
?
MAC - 0021.9bd9.c644
• Neighbor Cache – Maps IPv6 addresses with Ethernet MAC addresses
• Similar to ARP Cache for IPv4
• 5 States (2 noticeable and 3 transitory):
• Reachable: Packets have recently been received providing confirmation that
this device is reachable.
• Stale: A certain time period has elapsed since a packet has been received from
this address.
• Transitory States: INCOMPLETE, DELAY, PROBE
©
Neighbor Cache
R1# show ipv6 neighbors
IPv6 Address Age Link-layer Addr State Interface
FE80::50A5:8A35:A5BB:66E1 16 0021.9bd9.c644 STALE Fa0/0
2001:DB8:AAAA:1::100 16 0021.9bd9.c644 STALE Fa0/0
R1#
©
Neighbor Cache FSM
Neighbor Cache (“ARP Cache”)
See the process with:
R1# debug ipv6 nd
Neighbor Solicitation (NS) sent
No Entry Exists Incomplete
3 NS sent with no NA returned
NA received
Reachable Time exceeded (default 30 sec)
Or Reachable
Unsolicited NA received NS sent and
Packet returned (TCP increasing ACK) NA received
Stale – no action required Packet sent Delay 5 sec Probe
(Requires resolution again) (Resolution pending) (Reresolution in progress)
©
10: ICMPv6 Neighbor Discovery
Rick Graziani
Cabrillo College
Rick.Graziani@cabrillo.edu