edit SideBar

Main / Ipv6

This is a 128-bit address. It is written as xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx where each x is a hex value (4 bits). IPv4 is only 32-bit, so to represent an IPv4 address in an IPv6 world you can use

The localhost address is 0000:0000:0000:0000:0000:0000:0000:0001. Leading zeroes are often just omitted from an address, so the localhost might simply look like ::1.

Link-local addresses are derived from the MAC and start with 0xfe80. They are assigned automatically to each interface on boot. To use IPv6 assign a site-local address, which starts with 0xfec0.
To do this assignment use ifconfig <interface> inet6 add <ipv6address>/<prefixlength>

ipv6calc tool (Linux)

Use this tool to derive information from an address. To convert a semi-formed address into a fully-formed address
ipv6calc -q -i -m fe80::9fa2

Router Solicitation

Router solicitation messages belong to the ICMPv6 set of messages, specific to the IPv6 protocol. They are identified by a Next Header value "x'3A and decimal 58. (e.g. the Multicast Listener Report Message) They may be induced by bringing the IF down and up using ifconfig


The Linux kernel automatically assigns a link-local IPv6 address to any interface the comes up. To not use IPv6 at all, use /etc/modprobe.conf to prevent the appropriate module from being loaded. (try disabling the ipv6 module?)

To get rid of the IPv6 address on a particular interface, use some variation of 'ip addr ...'?

To prevent the kernel from assigning an address when an interface is brought up, set the MTU. If the MTU is too low for IPv6 to work, the kernel won't assign the address. This is an ugly hack, and it's not supported by the networking scripts.


used as ping6 -I <device> <IPv6addr>



Page last modified on December 20, 2012, at 05:13 PM