# ICMP Internet Control Message Protocol - Sends messages between two IP hosts - Checks for errors along link - Information about communication | Code | ICMPv4 | ICMPv6 | | ---- | ----------------------------- | -------------------------------------------- | | 0 | Net unrecheable | No route to destination | | 1 | Host unrecheable | Communication is administratively prohibited | | 2 | Protocol unrecheable | Beyond scoupe of source address | | 3 | Port unrecheable | Address unrecheable | | 4 | Fragmentation Needed and D.F. | Port unrecheable | # Time Exceeded * ICMPv4: TTL = 0 * ICMPv6: Hop Limit = 0 # ICMPv6 messages - Router Advertisement (RA) - Every 200s broadcasted to IPv6 hosts - Sends Prefix and default gateway link local - **Router:** *I am an IPv6 router, this is my prefix, use SLAAC/RID to generate a GUA, and this is my default gateway link-local address: ...* - Router Solicitation (RS) - Sent if host needs RA message for IPv6 configuration - **Host:** *Hey! Is there any IPv6 router here? I need it to generate an IPv6 address.* - Neighbour Solicitation (NS) - Sent to a host's address to check address uniqueness - If host receives NA message, it regenerates its IPv6 interface ID (randomly) and checks again - *"Hey you! Are you there? Do you have this address already?"* - Neighbour Advertisement (NA) - Reply meant for NS messages - *"Hey, I'm using this address already! Use another one!"*