blob: bb7dabe2ebbf8aabc624af02c00dbc2b33ad544a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# IPv6 configuration
Sam Ravnborg6a2e9b72005-07-11 21:13:56 -07003#
4
5# IPv6 as module will cause a CRASH if you try to unload it
Jan Engelhardt0b185422008-04-13 23:30:47 -07006menuconfig IPV6
Sam Ravnborg6a2e9b72005-07-11 21:13:56 -07007 tristate "The IPv6 protocol"
Tom Herbertde551f22015-07-13 08:48:00 -07008 default y
Sam Ravnborg6a2e9b72005-07-11 21:13:56 -07009 ---help---
Tom Herbertde551f22015-07-13 08:48:00 -070010 Support for IP version 6 (IPv6).
Sam Ravnborg6a2e9b72005-07-11 21:13:56 -070011
12 For general information about IPv6, see
Christian Kujau242260f2013-02-21 16:43:05 -080013 <https://en.wikipedia.org/wiki/IPv6>.
Tom Herbertde551f22015-07-13 08:48:00 -070014 For specific information about IPv6 under Linux, see
15 Documentation/networking/ipv6.txt and read the HOWTO at
16 <http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/>
Sam Ravnborg6a2e9b72005-07-11 21:13:56 -070017
18 To compile this protocol support as a module, choose M here: the
19 module will be called ipv6.
20
Jan Engelhardt0b185422008-04-13 23:30:47 -070021if IPV6
22
YOSHIFUJI Hideakiebacaaa2006-03-20 17:04:53 -080023config IPV6_ROUTER_PREF
24 bool "IPv6: Router Preference (RFC 4191) support"
YOSHIFUJI Hideakiebacaaa2006-03-20 17:04:53 -080025 ---help---
26 Router Preference is an optional extension to the Router
Matt LaPlante692105b2009-01-26 11:12:25 +010027 Advertisement message which improves the ability of hosts
28 to pick an appropriate router, especially when the hosts
29 are placed in a multi-homed network.
YOSHIFUJI Hideakiebacaaa2006-03-20 17:04:53 -080030
31 If unsure, say N.
32
YOSHIFUJI Hideaki70ceb4f2006-03-20 17:06:24 -080033config IPV6_ROUTE_INFO
Kees Cookf9ceb162012-10-02 11:19:49 -070034 bool "IPv6: Route Information (RFC 4191) support"
35 depends on IPV6_ROUTER_PREF
YOSHIFUJI Hideaki70ceb4f2006-03-20 17:06:24 -080036 ---help---
37 This is experimental support of Route Information.
38
39 If unsure, say N.
40
Neil Horman95c385b2007-04-25 17:08:10 -070041config IPV6_OPTIMISTIC_DAD
Kees Cookf9ceb162012-10-02 11:19:49 -070042 bool "IPv6: Enable RFC 4429 Optimistic DAD"
Neil Horman95c385b2007-04-25 17:08:10 -070043 ---help---
44 This is experimental support for optimistic Duplicate
45 Address Detection. It allows for autoconfigured addresses
46 to be used more quickly.
47
48 If unsure, say N.
49
Linus Torvalds1da177e2005-04-16 15:20:36 -070050config INET6_AH
51 tristate "IPv6: AH transformation"
Jan Beulich7e152522012-05-15 01:57:44 +000052 select XFRM_ALGO
Linus Torvalds1da177e2005-04-16 15:20:36 -070053 select CRYPTO
54 select CRYPTO_HMAC
55 select CRYPTO_MD5
56 select CRYPTO_SHA1
57 ---help---
58 Support for IPsec AH.
59
60 If unsure, say Y.
61
62config INET6_ESP
63 tristate "IPv6: ESP transformation"
Jan Beulich7e152522012-05-15 01:57:44 +000064 select XFRM_ALGO
Linus Torvalds1da177e2005-04-16 15:20:36 -070065 select CRYPTO
Herbert Xued58dd42008-03-04 14:29:21 -080066 select CRYPTO_AUTHENC
Linus Torvalds1da177e2005-04-16 15:20:36 -070067 select CRYPTO_HMAC
68 select CRYPTO_MD5
Herbert Xu6b7326c2006-07-30 15:41:01 +100069 select CRYPTO_CBC
Linus Torvalds1da177e2005-04-16 15:20:36 -070070 select CRYPTO_SHA1
71 select CRYPTO_DES
72 ---help---
73 Support for IPsec ESP.
74
75 If unsure, say Y.
76
77config INET6_IPCOMP
78 tristate "IPv6: IPComp transformation"
Herbert Xud2acc342006-03-28 01:12:13 -080079 select INET6_XFRM_TUNNEL
Herbert Xu6fccab62008-07-25 02:54:40 -070080 select XFRM_IPCOMP
Linus Torvalds1da177e2005-04-16 15:20:36 -070081 ---help---
82 Support for IP Payload Compression Protocol (IPComp) (RFC3173),
83 typically needed for IPsec.
84
85 If unsure, say Y.
86
Masahide NAKAMURAee538262006-08-23 19:13:46 -070087config IPV6_MIP6
Kees Cookf9ceb162012-10-02 11:19:49 -070088 tristate "IPv6: Mobility"
Masahide NAKAMURAee538262006-08-23 19:13:46 -070089 select XFRM
90 ---help---
91 Support for IPv6 Mobility described in RFC 3775.
92
93 If unsure, say N.
94
Tom Herbert65d7ab82015-08-17 13:42:27 -070095config IPV6_ILA
96 tristate "IPv6: Identifier Locator Addressing (ILA)"
Arnd Bergmann8cb964d2015-12-18 15:37:37 +010097 depends on NETFILTER
Tom Herbert65d7ab82015-08-17 13:42:27 -070098 select LWTUNNEL
99 ---help---
100 Support for IPv6 Identifier Locator Addressing (ILA).
101
102 ILA is a mechanism to do network virtualization without
103 encapsulation. The basic concept of ILA is that we split an
104 IPv6 address into a 64 bit locator and 64 bit identifier. The
105 identifier is the identity of an entity in communication
106 ("who") and the locator expresses the location of the
107 entity ("where").
108
109 ILA can be configured using the "encap ila" option with
110 "ip -6 route" command. ILA is described in
111 https://tools.ietf.org/html/draft-herbert-nvo3-ila-00.
112
113 If unsure, say N.
114
Herbert Xud2acc342006-03-28 01:12:13 -0800115config INET6_XFRM_TUNNEL
116 tristate
117 select INET6_TUNNEL
118 default n
119
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120config INET6_TUNNEL
Herbert Xud2acc342006-03-28 01:12:13 -0800121 tristate
122 default n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700123
Herbert Xub59f45d2006-05-27 23:05:54 -0700124config INET6_XFRM_MODE_TRANSPORT
125 tristate "IPv6: IPsec transport mode"
Herbert Xub59f45d2006-05-27 23:05:54 -0700126 default IPV6
127 select XFRM
128 ---help---
129 Support for IPsec transport mode.
130
131 If unsure, say Y.
132
133config INET6_XFRM_MODE_TUNNEL
134 tristate "IPv6: IPsec tunnel mode"
Herbert Xub59f45d2006-05-27 23:05:54 -0700135 default IPV6
136 select XFRM
137 ---help---
138 Support for IPsec tunnel mode.
139
140 If unsure, say Y.
141
Diego Beltrami0a694522006-10-03 23:47:05 -0700142config INET6_XFRM_MODE_BEET
143 tristate "IPv6: IPsec BEET mode"
Diego Beltrami0a694522006-10-03 23:47:05 -0700144 default IPV6
145 select XFRM
146 ---help---
147 Support for IPsec BEET mode.
148
149 If unsure, say Y.
150
Masahide NAKAMURA1d716272006-08-23 17:59:44 -0700151config INET6_XFRM_MODE_ROUTEOPTIMIZATION
Kees Cookf9ceb162012-10-02 11:19:49 -0700152 tristate "IPv6: MIPv6 route optimization mode"
Masahide NAKAMURA1d716272006-08-23 17:59:44 -0700153 select XFRM
154 ---help---
155 Support for MIPv6 route optimization mode.
156
Steffen Klasserted1efb22013-08-19 08:07:34 +0200157config IPV6_VTI
158tristate "Virtual (secure) IPv6: tunneling"
159 select IPV6_TUNNEL
Steffen Klassert876fc032014-02-19 13:33:23 +0100160 select NET_IP_TUNNEL
Steffen Klasserted1efb22013-08-19 08:07:34 +0200161 depends on INET6_XFRM_MODE_TUNNEL
162 ---help---
163 Tunneling means encapsulating data of one protocol type within
164 another protocol and sending it over a channel that understands the
165 encapsulating protocol. This can be used with xfrm mode tunnel to give
166 the notion of a secure tunnel for IPSEC and then use routing protocol
167 on top.
168
Joerg Roedel989e5b92006-10-10 14:47:44 -0700169config IPV6_SIT
170 tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)"
Kazunori MIYAZAWAc73cb5a2007-02-13 12:55:25 -0800171 select INET_TUNNEL
Pravin B Shelarf61dd382013-03-25 14:50:00 +0000172 select NET_IP_TUNNEL
YOSHIFUJI Hideakide357cc2008-03-15 23:59:18 -0400173 select IPV6_NDISC_NODETYPE
Joerg Roedel989e5b92006-10-10 14:47:44 -0700174 default y
175 ---help---
176 Tunneling means encapsulating data of one protocol type within
177 another protocol and sending it over a channel that understands the
178 encapsulating protocol. This driver implements encapsulation of IPv6
David S. Miller5c5d6da2008-04-26 22:50:57 -0700179 into IPv4 packets. This is useful if you want to connect two IPv6
Joerg Roedel989e5b92006-10-10 14:47:44 -0700180 networks over an IPv4-only path.
181
Pavel Machek4737f092009-06-05 00:44:53 +0200182 Saying M here will produce a module called sit. If unsure, say Y.
Joerg Roedel989e5b92006-10-10 14:47:44 -0700183
YOSHIFUJI Hideaki / 吉藤英明fa857af2009-09-22 23:43:14 +0000184config IPV6_SIT_6RD
Kees Cookf9ceb162012-10-02 11:19:49 -0700185 bool "IPv6: IPv6 Rapid Deployment (6RD)"
186 depends on IPV6_SIT
YOSHIFUJI Hideaki / 吉藤英明fa857af2009-09-22 23:43:14 +0000187 default n
188 ---help---
189 IPv6 Rapid Deployment (6rd; draft-ietf-softwire-ipv6-6rd) builds upon
190 mechanisms of 6to4 (RFC3056) to enable a service provider to rapidly
191 deploy IPv6 unicast service to IPv4 sites to which it provides
192 customer premise equipment. Like 6to4, it utilizes stateless IPv6 in
193 IPv4 encapsulation in order to transit IPv4-only network
194 infrastructure. Unlike 6to4, a 6rd service provider uses an IPv6
195 prefix of its own in place of the fixed 6to4 prefix.
196
197 With this option enabled, the SIT driver offers 6rd functionality by
198 providing additional ioctl API to configure the IPv6 Prefix for in
199 stead of static 2002::/16 for 6to4.
200
201 If unsure, say N.
202
YOSHIFUJI Hideakide357cc2008-03-15 23:59:18 -0400203config IPV6_NDISC_NODETYPE
204 bool
205
Linus Torvalds1da177e2005-04-16 15:20:36 -0700206config IPV6_TUNNEL
YOSHIFUJI Hideaki38fe9992008-03-20 16:13:58 -0700207 tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)"
Herbert Xud2acc342006-03-28 01:12:13 -0800208 select INET6_TUNNEL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 ---help---
YOSHIFUJI Hideaki38fe9992008-03-20 16:13:58 -0700210 Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in
211 RFC 2473.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212
213 If unsure, say N.
214
xeb@mail.ruc12b3952012-08-10 00:51:50 +0000215config IPV6_GRE
216 tristate "IPv6: GRE tunnel"
217 select IPV6_TUNNEL
Pravin B Shelarf61dd382013-03-25 14:50:00 +0000218 select NET_IP_TUNNEL
xeb@mail.ruc12b3952012-08-10 00:51:50 +0000219 ---help---
220 Tunneling means encapsulating data of one protocol type within
221 another protocol and sending it over a channel that understands the
222 encapsulating protocol. This particular tunneling driver implements
223 GRE (Generic Routing Encapsulation) and at this time allows
224 encapsulating of IPv4 or IPv6 over existing IPv6 infrastructure.
225 This driver is useful if the other endpoint is a Cisco router: Cisco
226 likes GRE much better than the other Linux tunneling driver ("IP
227 tunneling" above). In addition, GRE allows multicast redistribution
228 through the tunnel.
229
230 Saying M here will produce a module called ip6_gre. If unsure, say N.
231
Ville Nuorvala264e91b2006-10-16 22:12:21 -0700232config IPV6_MULTIPLE_TABLES
233 bool "IPv6: Multiple Routing Tables"
Ville Nuorvala264e91b2006-10-16 22:12:21 -0700234 select FIB_RULES
235 ---help---
236 Support multiple routing tables.
237
YOSHIFUJI Hideaki4e96c2b2006-08-23 17:23:39 -0700238config IPV6_SUBTREES
239 bool "IPv6: source address based routing"
Ville Nuorvala264e91b2006-10-16 22:12:21 -0700240 depends on IPV6_MULTIPLE_TABLES
YOSHIFUJI Hideaki4e96c2b2006-08-23 17:23:39 -0700241 ---help---
242 Enable routing by source address or prefix.
243
244 The destination address is still the primary routing key, so mixing
245 normal and source prefix specific routes in the same routing table
246 may sometimes lead to unintended routing behavior. This can be
247 avoided by defining different routing tables for the normal and
248 source prefix specific routes.
249
250 If unsure, say N.
251
YOSHIFUJI Hideaki7bc570c2008-04-03 09:22:53 +0900252config IPV6_MROUTE
Kees Cookf9ceb162012-10-02 11:19:49 -0700253 bool "IPv6: multicast routing"
254 depends on IPV6
YOSHIFUJI Hideaki7bc570c2008-04-03 09:22:53 +0900255 ---help---
256 Experimental support for IPv6 multicast forwarding.
257 If unsure, say N.
258
Patrick McHardyd1db2752010-05-11 14:40:55 +0200259config IPV6_MROUTE_MULTIPLE_TABLES
260 bool "IPv6: multicast policy routing"
261 depends on IPV6_MROUTE
262 select FIB_RULES
263 help
264 Normally, a multicast router runs a userspace daemon and decides
265 what to do with a multicast packet based on the source and
266 destination addresses. If you say Y here, the multicast router
267 will also be able to take interfaces and packet marks into
268 account and run multiple instances of userspace daemons
269 simultaneously, each one handling a single table.
270
271 If unsure, say N.
272
YOSHIFUJI Hideaki14fb64e2008-04-03 09:22:54 +0900273config IPV6_PIMSM_V2
Kees Cookf9ceb162012-10-02 11:19:49 -0700274 bool "IPv6: PIM-SM version 2 support"
YOSHIFUJI Hideaki14fb64e2008-04-03 09:22:54 +0900275 depends on IPV6_MROUTE
276 ---help---
277 Support for IPv6 PIM multicast routing protocol PIM-SMv2.
278 If unsure, say N.
279
Jan Engelhardt0b185422008-04-13 23:30:47 -0700280endif # IPV6