Merge branch 'for-4.5/nvme' of git://git.kernel.dk/linux-block
[deliverable/linux.git] / net / ipv6 / Kconfig
CommitLineData
1da177e4
LT
1#
2# IPv6 configuration
6a2e9b73
SR
3#
4
5# IPv6 as module will cause a CRASH if you try to unload it
0b18542b 6menuconfig IPV6
6a2e9b73 7 tristate "The IPv6 protocol"
de551f2e 8 default y
6a2e9b73 9 ---help---
de551f2e 10 Support for IP version 6 (IPv6).
6a2e9b73
SR
11
12 For general information about IPv6, see
242260fb 13 <https://en.wikipedia.org/wiki/IPv6>.
de551f2e
TH
14 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/>
6a2e9b73
SR
17
18 To compile this protocol support as a module, choose M here: the
19 module will be called ipv6.
20
0b18542b
JE
21if IPV6
22
ebacaaa0
YH
23config IPV6_ROUTER_PREF
24 bool "IPv6: Router Preference (RFC 4191) support"
ebacaaa0
YH
25 ---help---
26 Router Preference is an optional extension to the Router
692105b8
ML
27 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.
ebacaaa0
YH
30
31 If unsure, say N.
32
70ceb4f5 33config IPV6_ROUTE_INFO
f9ceb16e
KC
34 bool "IPv6: Route Information (RFC 4191) support"
35 depends on IPV6_ROUTER_PREF
70ceb4f5
YH
36 ---help---
37 This is experimental support of Route Information.
38
39 If unsure, say N.
40
95c385b4 41config IPV6_OPTIMISTIC_DAD
f9ceb16e 42 bool "IPv6: Enable RFC 4429 Optimistic DAD"
95c385b4
NH
43 ---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
1da177e4
LT
50config INET6_AH
51 tristate "IPv6: AH transformation"
7e152524 52 select XFRM_ALGO
1da177e4
LT
53 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"
7e152524 64 select XFRM_ALGO
1da177e4 65 select CRYPTO
ed58dd41 66 select CRYPTO_AUTHENC
1da177e4
LT
67 select CRYPTO_HMAC
68 select CRYPTO_MD5
6b7326c8 69 select CRYPTO_CBC
1da177e4
LT
70 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"
d2acc347 79 select INET6_XFRM_TUNNEL
6fccab67 80 select XFRM_IPCOMP
1da177e4
LT
81 ---help---
82 Support for IP Payload Compression Protocol (IPComp) (RFC3173),
83 typically needed for IPsec.
84
85 If unsure, say Y.
86
ee538268 87config IPV6_MIP6
f9ceb16e 88 tristate "IPv6: Mobility"
ee538268
MN
89 select XFRM
90 ---help---
91 Support for IPv6 Mobility described in RFC 3775.
92
93 If unsure, say N.
94
65d7ab8d
TH
95config IPV6_ILA
96 tristate "IPv6: Identifier Locator Addressing (ILA)"
8cb964da 97 depends on NETFILTER
65d7ab8d
TH
98 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
d2acc347
HX
115config INET6_XFRM_TUNNEL
116 tristate
117 select INET6_TUNNEL
118 default n
119
1da177e4 120config INET6_TUNNEL
d2acc347
HX
121 tristate
122 default n
1da177e4 123
b59f45d0
HX
124config INET6_XFRM_MODE_TRANSPORT
125 tristate "IPv6: IPsec transport mode"
b59f45d0
HX
126 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"
b59f45d0
HX
135 default IPV6
136 select XFRM
137 ---help---
138 Support for IPsec tunnel mode.
139
140 If unsure, say Y.
141
0a69452c
DB
142config INET6_XFRM_MODE_BEET
143 tristate "IPv6: IPsec BEET mode"
0a69452c
DB
144 default IPV6
145 select XFRM
146 ---help---
147 Support for IPsec BEET mode.
148
149 If unsure, say Y.
150
1d71627d 151config INET6_XFRM_MODE_ROUTEOPTIMIZATION
f9ceb16e 152 tristate "IPv6: MIPv6 route optimization mode"
1d71627d
MN
153 select XFRM
154 ---help---
155 Support for MIPv6 route optimization mode.
156
ed1efb2a
SK
157config IPV6_VTI
158tristate "Virtual (secure) IPv6: tunneling"
159 select IPV6_TUNNEL
876fc03a 160 select NET_IP_TUNNEL
ed1efb2a
SK
161 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
989e5b96
JR
169config IPV6_SIT
170 tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)"
c73cb5a2 171 select INET_TUNNEL
f61dd388 172 select NET_IP_TUNNEL
de357cc0 173 select IPV6_NDISC_NODETYPE
989e5b96
JR
174 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
5c5d6dab 179 into IPv4 packets. This is useful if you want to connect two IPv6
989e5b96
JR
180 networks over an IPv4-only path.
181
4737f097 182 Saying M here will produce a module called sit. If unsure, say Y.
989e5b96 183
fa857afc 184config IPV6_SIT_6RD
f9ceb16e
KC
185 bool "IPv6: IPv6 Rapid Deployment (6RD)"
186 depends on IPV6_SIT
fa857afc
YH
187 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
de357cc0
YH
203config IPV6_NDISC_NODETYPE
204 bool
205
1da177e4 206config IPV6_TUNNEL
38fe999e 207 tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)"
d2acc347 208 select INET6_TUNNEL
1da177e4 209 ---help---
38fe999e
YH
210 Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in
211 RFC 2473.
1da177e4
LT
212
213 If unsure, say N.
214
c12b395a 215config IPV6_GRE
216 tristate "IPv6: GRE tunnel"
217 select IPV6_TUNNEL
f61dd388 218 select NET_IP_TUNNEL
c12b395a 219 ---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
264e91b6
VN
232config IPV6_MULTIPLE_TABLES
233 bool "IPv6: Multiple Routing Tables"
264e91b6
VN
234 select FIB_RULES
235 ---help---
236 Support multiple routing tables.
237
4e96c2b4
YH
238config IPV6_SUBTREES
239 bool "IPv6: source address based routing"
264e91b6 240 depends on IPV6_MULTIPLE_TABLES
4e96c2b4
YH
241 ---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
7bc570c8 252config IPV6_MROUTE
f9ceb16e
KC
253 bool "IPv6: multicast routing"
254 depends on IPV6
7bc570c8
YH
255 ---help---
256 Experimental support for IPv6 multicast forwarding.
257 If unsure, say N.
258
d1db275d
PM
259config 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
14fb64e1 273config IPV6_PIMSM_V2
f9ceb16e 274 bool "IPv6: PIM-SM version 2 support"
14fb64e1
YH
275 depends on IPV6_MROUTE
276 ---help---
277 Support for IPv6 PIM multicast routing protocol PIM-SMv2.
278 If unsure, say N.
279
0b18542b 280endif # IPV6
This page took 0.827591 seconds and 5 git commands to generate.