I'm learning how to program a Cisco router with dhcpv6 and i saw that they never configure the default gateway address in the dhcpv6 configuration . Then how can the pc know what it's gateway address is? Do i have to configure it myself ? This doesn't sound like something Cisco would forget to add . What am I missing here ? . Thanks guys
In IPv6 there are two ways of dynamic address assignment. One is SLAAC (StateLess Address Auto Configuration), the other is DHCPv6. DHCPv6 can be used to only assign additional informations (DNS resolvers, NTP, ...) or only addresses or both.
In IPv6 the router tells the client which method to use via flags in a an mechanism called router advertisement (RA). The origin of the RA is used as the default gateway. This is all done via link local addresses (those addresses starting with fe80::)
Below is an example output of an Cisco router showing possible options. If you don't set the managed-config-flag and the other-config-flag no DHCPv6 will be used.
router(config-if)#ipv6 nd ? advertisement-interval Send an advertisement interval option in RA's dad Duplicate Address Detection managed-config-flag Hosts should use DHCP for address config ns-interval Set advertised NS retransmission interval nud Neighbor Unreachability Detection other-config-flag Hosts should use DHCP for non-address config prefix Configure IPv6 Routing Prefix Advertisement ra Router Advertisement control reachable-time Set advertised reachability time
Note: Android does not support DHCPv6 at all.
IPv6 uses the concept of neighbour discovery (ND). I do not use IPv6 on a regular basis in my day to day work, but when I do encounter it and need to brush up, www.tcpipguide.com is a very useful starting point.
Here is a link to the Router discovery section that will help explain ND far more elegantly than I could. Enjoy.