1@node IPv6 Support
2@chapter IPv6 Support
3
4Quagga fully supports IPv6 routing.  As described so far, Quagga supports
5RIPng, OSPFv3, Babel and BGP-4+.  You can give IPv6 addresses to an interface
6and configure static IPv6 routing information.  Quagga IPv6 also provides
7automatic address configuration via a feature called @code{address
8auto configuration}.  To do it, the router must send router advertisement
9messages to the all nodes that exist on the network.
10
11@menu
12* Router Advertisement::        
13@end menu
14
15@node Router Advertisement
16@section Router Advertisement
17
18@deffn {Interface Command} {no ipv6 nd suppress-ra} {}
19Send router advertisment messages.
20@end deffn
21
22@deffn {Interface Command} {ipv6 nd suppress-ra} {}
23Don't send router advertisment messages.
24@end deffn
25
26@deffn {Interface Command} {ipv6 nd prefix @var{ipv6prefix} [@var{valid-lifetime}] [@var{preferred-lifetime}] [off-link] [no-autoconfig] [router-address]} {}
27Configuring the IPv6 prefix to include in router advertisements. Several prefix
28specific optional parameters and flags may follow:
29@itemize @bullet
30@item
31@var{valid-lifetime} - the length of time in seconds during what the prefix is
32valid for the purpose of on-link determination. Value @var{infinite} represents
33infinity (i.e. a value of all one bits (@code{0xffffffff})).
34
35Range: @code{<0-4294967295>}  Default: @code{2592000}
36
37@item
38@var{preferred-lifetime} - the length of time in seconds during what addresses
39generated from the prefix remain preferred. Value @var{infinite} represents
40infinity.
41
42Range: @code{<0-4294967295>}  Default: @code{604800}
43
44@item
45@var{off-link} - indicates that advertisement makes no statement about on-link or
46off-link properties of the prefix.
47
48Default: not set, i.e. this prefix can be used for on-link determination.
49
50@item
51@var{no-autoconfig} - indicates to hosts on the local link that the specified prefix
52cannot be used for IPv6 autoconfiguration.
53
54Default: not set, i.e. prefix can be used for autoconfiguration.
55
56@item
57@var{router-address} - indicates to hosts on the local link that the specified 
58prefix 
59contains a complete IP address by setting R flag.
60
61Default: not set, i.e. hosts do not assume a complete IP address is placed.
62@end itemize
63@end deffn
64
65@deffn {Interface Command} {ipv6 nd ra-interval <1-1800>} {}
66@deffnx {Interface Command} {no ipv6 nd ra-interval [<1-1800>]} {}
67The  maximum  time allowed between sending unsolicited multicast router
68advertisements from the interface, in seconds.
69
70Default: @code{600}
71@end deffn
72
73@deffn {Interface Command} {ipv6 nd ra-interval msec <70-1800000>} {}
74@deffnx {Interface Command} {no ipv6 nd ra-interval [msec <70-1800000>]} {}
75The  maximum  time allowed between sending unsolicited multicast router
76advertisements from the interface, in milliseconds.
77
78Default: @code{600000}
79@end deffn
80
81@deffn {Interface Command} {ipv6 nd ra-lifetime <0-9000>} {}
82@deffnx {Interface Command} {no ipv6 nd ra-lifetime [<0-9000>]} {}
83The value to be placed in the Router Lifetime field of router advertisements
84sent from the interface, in seconds. Indicates the usefulness of the router
85as a default router on this interface. Setting the value to zero indicates
86that the router should not be considered a default router on this interface.
87Must be either zero or between value specified with @var{ipv6 nd ra-interval}
88(or default) and 9000 seconds.
89
90Default: @code{1800}
91@end deffn
92
93@deffn {Interface Command} {ipv6 nd reachable-time <1-3600000>} {}
94@deffnx {Interface Command} {no ipv6 nd reachable-time [<1-3600000>]} {}
95The value to be placed in the Reachable Time field in the Router Advertisement
96messages sent by the router, in milliseconds. The configured time enables the
97router to detect unavailable neighbors. The value zero means unspecified (by
98this router).
99
100Default: @code{0}
101@end deffn
102
103@deffn {Interface Command} {ipv6 nd managed-config-flag} {}
104@deffnx {Interface Command} {no ipv6 nd managed-config-flag} {}
105Set/unset flag in IPv6 router advertisements which indicates to hosts that they
106should use managed (stateful) protocol for addresses autoconfiguration in
107addition to any addresses autoconfigured using stateless address
108autoconfiguration.
109
110Default: not set
111@end deffn
112
113@deffn {Interface Command} {ipv6 nd other-config-flag} {}
114@deffnx {Interface Command} {no ipv6 nd other-config-flag} {}
115Set/unset flag in IPv6 router advertisements which indicates to hosts that
116they should use administered (stateful) protocol to obtain autoconfiguration
117information other than addresses.
118
119Default: not set
120@end deffn
121
122@deffn {Interface Command} {ipv6 nd home-agent-config-flag} {}
123@deffnx {Interface Command} {no ipv6 nd home-agent-config-flag} {}
124Set/unset flag in IPv6 router advertisements which indicates to hosts that
125the router acts as a Home Agent and includes a Home Agent Option.
126
127Default: not set
128@end deffn
129
130@deffn {Interface Command} {ipv6 nd home-agent-preference <0-65535>} {}
131@deffnx {Interface Command} {no ipv6 nd home-agent-preference [<0-65535>]} {}
132The value to be placed in Home Agent Option, when Home Agent config flag is set, 
133which indicates to hosts Home Agent preference. The default value of 0 stands
134for the lowest preference possible.
135
136Default: 0
137@end deffn
138
139@deffn {Interface Command} {ipv6 nd home-agent-lifetime <0-65520>} {}
140@deffnx {Interface Command} {no ipv6 nd home-agent-lifetime [<0-65520>]} {}
141The value to be placed in Home Agent Option, when Home Agent config flag is set, 
142which indicates to hosts Home Agent Lifetime. The default value of 0 means to
143place the current Router Lifetime value.
144
145Default: 0
146@end deffn
147
148@deffn {Interface Command} {ipv6 nd adv-interval-option} {}
149@deffnx {Interface Command} {no ipv6 nd adv-interval-option} {}
150Include an Advertisement Interval option which indicates to hosts the maximum time, 
151in milliseconds, between successive unsolicited Router Advertisements.
152
153Default: not set
154@end deffn
155
156@deffn {Interface Command} {ipv6 nd router-preference (high|medium|low)} {}
157@deffnx {Interface Command} {no ipv6 nd router-preference [(high|medium|low)]} {}
158Set default router preference in IPv6 router advertisements per RFC4191.
159
160Default: medium
161@end deffn
162
163@deffn {Interface Command} {ipv6 nd mtu <1-65535>} {}
164@deffnx {Interface Command} {no ipv6 nd mtu [<1-65535>]} {}
165Include an MTU (type 5) option in each RA packet to assist the attached hosts
166in proper interface configuration. The announced value is not verified to be
167consistent with router interface MTU.
168
169Default: don't advertise any MTU option
170@end deffn
171
172@example
173@group
174interface eth0
175 no ipv6 nd suppress-ra
176 ipv6 nd prefix 2001:0DB8:5009::/64
177@end group
178@end example
179
180For more information see @cite{RFC2462 (IPv6 Stateless Address Autoconfiguration)}
181, @cite{RFC4861 (Neighbor Discovery for IP Version 6 (IPv6))}
182, @cite{RFC6275 (Mobility Support in IPv6)}
183and @cite{RFC4191 (Default Router Preferences and More-Specific Routes)}.
184