Blame view

net/ipv6/Kconfig 8.96 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
  #
  # IPv6 configuration
6a2e9b738   Sam Ravnborg   [NET]: move confi...
3
4
5
  #
  
  #   IPv6 as module will cause a CRASH if you try to unload it
0b18542b7   Jan Engelhardt   [NET]: Sink IPv6 ...
6
  menuconfig IPV6
6a2e9b738   Sam Ravnborg   [NET]: move confi...
7
  	tristate "The IPv6 protocol"
de551f2eb   Tom Herbert   net: Build IPv6 i...
8
  	default y
6a2e9b738   Sam Ravnborg   [NET]: move confi...
9
  	---help---
de551f2eb   Tom Herbert   net: Build IPv6 i...
10
  	  Support for IP version 6 (IPv6).
6a2e9b738   Sam Ravnborg   [NET]: move confi...
11
12
  
  	  For general information about IPv6, see
242260fb8   Christian Kujau   sun.com documenta...
13
  	  <https://en.wikipedia.org/wiki/IPv6>.
de551f2eb   Tom Herbert   net: Build IPv6 i...
14
15
16
  	  For specific information about IPv6 under Linux, see
  	  Documentation/networking/ipv6.txt and read the HOWTO at
  	  <http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/>
6a2e9b738   Sam Ravnborg   [NET]: move confi...
17
18
19
  
  	  To compile this protocol support as a module, choose M here: the 
  	  module will be called ipv6.
0b18542b7   Jan Engelhardt   [NET]: Sink IPv6 ...
20
  if IPV6
ebacaaa0f   YOSHIFUJI Hideaki   [IPV6]: ROUTE: Ad...
21
22
  config IPV6_ROUTER_PREF
  	bool "IPv6: Router Preference (RFC 4191) support"
ebacaaa0f   YOSHIFUJI Hideaki   [IPV6]: ROUTE: Ad...
23
24
  	---help---
  	  Router Preference is an optional extension to the Router
692105b8a   Matt LaPlante   trivial: fix typo...
25
26
27
  	  Advertisement message which improves the ability of hosts
  	  to pick an appropriate router, especially when the hosts
  	  are placed in a multi-homed network.
ebacaaa0f   YOSHIFUJI Hideaki   [IPV6]: ROUTE: Ad...
28
29
  
  	  If unsure, say N.
70ceb4f53   YOSHIFUJI Hideaki   [IPV6]: ROUTE: Ad...
30
  config IPV6_ROUTE_INFO
f9ceb16ec   Kees Cook   net/ipv6: remove ...
31
32
  	bool "IPv6: Route Information (RFC 4191) support"
  	depends on IPV6_ROUTER_PREF
70ceb4f53   YOSHIFUJI Hideaki   [IPV6]: ROUTE: Ad...
33
34
35
36
  	---help---
  	  This is experimental support of Route Information.
  
  	  If unsure, say N.
95c385b4d   Neil Horman   [IPV6] ADDRCONF: ...
37
  config IPV6_OPTIMISTIC_DAD
f9ceb16ec   Kees Cook   net/ipv6: remove ...
38
  	bool "IPv6: Enable RFC 4429 Optimistic DAD"
95c385b4d   Neil Horman   [IPV6] ADDRCONF: ...
39
40
41
42
43
44
  	---help---
  	  This is experimental support for optimistic Duplicate
  	  Address Detection.  It allows for autoconfigured addresses
  	  to be used more quickly.
  
  	  If unsure, say N.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
45
46
  config INET6_AH
  	tristate "IPv6: AH transformation"
7e1525249   Jan Beulich   xfrm: make xfrm_a...
47
  	select XFRM_ALGO
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
48
49
50
51
52
53
54
55
56
57
58
  	select CRYPTO
  	select CRYPTO_HMAC
  	select CRYPTO_MD5
  	select CRYPTO_SHA1
  	---help---
  	  Support for IPsec AH.
  
  	  If unsure, say Y.
  
  config INET6_ESP
  	tristate "IPv6: ESP transformation"
7e1525249   Jan Beulich   xfrm: make xfrm_a...
59
  	select XFRM_ALGO
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
60
  	select CRYPTO
ed58dd41f   Herbert Xu   [ESP]: Add select...
61
  	select CRYPTO_AUTHENC
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
62
63
  	select CRYPTO_HMAC
  	select CRYPTO_MD5
6b7326c84   Herbert Xu   [IPSEC] ESP: Use ...
64
  	select CRYPTO_CBC
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
65
66
  	select CRYPTO_SHA1
  	select CRYPTO_DES
32b6170ca   Thomas Egerer   ipv4+ipv6: Make I...
67
  	select CRYPTO_ECHAINIV
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
68
69
70
71
  	---help---
  	  Support for IPsec ESP.
  
  	  If unsure, say Y.
7785bba29   Steffen Klassert   esp: Add a softwa...
72
73
74
75
76
77
78
79
80
81
82
83
  config INET6_ESP_OFFLOAD
  	tristate "IPv6: ESP transformation offload"
  	depends on INET6_ESP
  	select XFRM_OFFLOAD
  	default n
  	---help---
  	  Support for ESP transformation offload. This makes sense
  	  only if this system really does IPsec and want to do it
  	  with high throughput. A typical desktop system does not
  	  need it, even if it does IPsec.
  
  	  If unsure, say N.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
84
85
  config INET6_IPCOMP
  	tristate "IPv6: IPComp transformation"
d2acc3479   Herbert Xu   [INET]: Introduce...
86
  	select INET6_XFRM_TUNNEL
6fccab671   Herbert Xu   ipsec: ipcomp - M...
87
  	select XFRM_IPCOMP
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
88
89
90
91
92
  	---help---
  	  Support for IP Payload Compression Protocol (IPComp) (RFC3173),
  	  typically needed for IPsec.
  
  	  If unsure, say Y.
ee5382680   Masahide NAKAMURA   [IPV6]: Add Kconf...
93
  config IPV6_MIP6
f9ceb16ec   Kees Cook   net/ipv6: remove ...
94
  	tristate "IPv6: Mobility"
ee5382680   Masahide NAKAMURA   [IPV6]: Add Kconf...
95
96
97
98
99
  	select XFRM
  	---help---
  	  Support for IPv6 Mobility described in RFC 3775.
  
  	  If unsure, say N.
65d7ab8de   Tom Herbert   net: Identifier L...
100
101
  config IPV6_ILA
  	tristate "IPv6: Identifier Locator Addressing (ILA)"
8cb964dae   Arnd Bergmann   ila: add NETFILTE...
102
  	depends on NETFILTER
65d7ab8de   Tom Herbert   net: Identifier L...
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
  	select LWTUNNEL
  	---help---
  	  Support for IPv6 Identifier Locator Addressing (ILA).
  
  	  ILA is a mechanism to do network virtualization without
  	  encapsulation. The basic concept of ILA is that we split an
  	  IPv6 address into a 64 bit locator and 64 bit identifier. The
  	  identifier is the identity of an entity in communication
  	  ("who") and the locator expresses the location of the
  	  entity ("where").
  
  	  ILA can be configured using the "encap ila" option with
  	  "ip -6 route" command. ILA is described in
  	  https://tools.ietf.org/html/draft-herbert-nvo3-ila-00.
  
  	  If unsure, say N.
d2acc3479   Herbert Xu   [INET]: Introduce...
119
120
121
122
  config INET6_XFRM_TUNNEL
  	tristate
  	select INET6_TUNNEL
  	default n
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
123
  config INET6_TUNNEL
d2acc3479   Herbert Xu   [INET]: Introduce...
124
125
  	tristate
  	default n
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
126

b59f45d0b   Herbert Xu   [IPSEC] xfrm: Abs...
127
128
  config INET6_XFRM_MODE_TRANSPORT
  	tristate "IPv6: IPsec transport mode"
b59f45d0b   Herbert Xu   [IPSEC] xfrm: Abs...
129
130
131
132
133
134
135
136
137
  	default IPV6
  	select XFRM
  	---help---
  	  Support for IPsec transport mode.
  
  	  If unsure, say Y.
  
  config INET6_XFRM_MODE_TUNNEL
  	tristate "IPv6: IPsec tunnel mode"
b59f45d0b   Herbert Xu   [IPSEC] xfrm: Abs...
138
139
140
141
142
143
  	default IPV6
  	select XFRM
  	---help---
  	  Support for IPsec tunnel mode.
  
  	  If unsure, say Y.
0a69452cb   Diego Beltrami   [XFRM]: BEET mode
144
145
  config INET6_XFRM_MODE_BEET
  	tristate "IPv6: IPsec BEET mode"
0a69452cb   Diego Beltrami   [XFRM]: BEET mode
146
147
148
149
150
151
  	default IPV6
  	select XFRM
  	---help---
  	  Support for IPsec BEET mode.
  
  	  If unsure, say Y.
1d71627d6   Masahide NAKAMURA   [XFRM] STATE: Int...
152
  config INET6_XFRM_MODE_ROUTEOPTIMIZATION
f9ceb16ec   Kees Cook   net/ipv6: remove ...
153
  	tristate "IPv6: MIPv6 route optimization mode"
1d71627d6   Masahide NAKAMURA   [XFRM] STATE: Int...
154
155
156
  	select XFRM
  	---help---
  	  Support for MIPv6 route optimization mode.
ed1efb2ae   Steffen Klassert   ipv6: Add support...
157
158
159
  config IPV6_VTI
  tristate "Virtual (secure) IPv6: tunneling"
  	select IPV6_TUNNEL
876fc03aa   Steffen Klassert   ip6_vti: Fix buil...
160
  	select NET_IP_TUNNEL
ed1efb2ae   Steffen Klassert   ipv6: Add support...
161
162
163
164
165
166
167
  	depends on INET6_XFRM_MODE_TUNNEL
  	---help---
  	Tunneling means encapsulating data of one protocol type within
  	another protocol and sending it over a channel that understands the
  	encapsulating protocol. This can be used with xfrm mode tunnel to give
  	the notion of a secure tunnel for IPSEC and then use routing protocol
  	on top.
989e5b96e   Joerg Roedel   [IPV6]: Seperate ...
168
169
  config IPV6_SIT
  	tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)"
c73cb5a2d   Kazunori MIYAZAWA   [IPSEC]: make sit...
170
  	select INET_TUNNEL
f61dd388a   Pravin B Shelar   Tunneling: use IP...
171
  	select NET_IP_TUNNEL
de357cc01   YOSHIFUJI Hideaki   [IPV6] NDISC: Don...
172
  	select IPV6_NDISC_NODETYPE
989e5b96e   Joerg Roedel   [IPV6]: Seperate ...
173
174
175
176
177
  	default y
  	---help---
  	  Tunneling means encapsulating data of one protocol type within
  	  another protocol and sending it over a channel that understands the
  	  encapsulating protocol. This driver implements encapsulation of IPv6
5c5d6dabb   David S. Miller   Revert "ipv6: Fix...
178
  	  into IPv4 packets. This is useful if you want to connect two IPv6
989e5b96e   Joerg Roedel   [IPV6]: Seperate ...
179
  	  networks over an IPv4-only path.
4737f0978   Pavel Machek   trivial: Kconfig:...
180
  	  Saying M here will produce a module called sit. If unsure, say Y.
989e5b96e   Joerg Roedel   [IPV6]: Seperate ...
181

fa857afcf   YOSHIFUJI Hideaki / 吉藤英明   ipv6 sit: 6rd (IP...
182
  config IPV6_SIT_6RD
f9ceb16ec   Kees Cook   net/ipv6: remove ...
183
184
  	bool "IPv6: IPv6 Rapid Deployment (6RD)"
  	depends on IPV6_SIT
fa857afcf   YOSHIFUJI Hideaki / 吉藤英明   ipv6 sit: 6rd (IP...
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
  	default n
  	---help---
  	  IPv6 Rapid Deployment (6rd; draft-ietf-softwire-ipv6-6rd) builds upon
  	  mechanisms of 6to4 (RFC3056) to enable a service provider to rapidly
  	  deploy IPv6 unicast service to IPv4 sites to which it provides
  	  customer premise equipment.  Like 6to4, it utilizes stateless IPv6 in
  	  IPv4 encapsulation in order to transit IPv4-only network
  	  infrastructure.  Unlike 6to4, a 6rd service provider uses an IPv6
  	  prefix of its own in place of the fixed 6to4 prefix.
  
  	  With this option enabled, the SIT driver offers 6rd functionality by
  	  providing additional ioctl API to configure the IPv6 Prefix for in
  	  stead of static 2002::/16 for 6to4.
  
  	  If unsure, say N.
de357cc01   YOSHIFUJI Hideaki   [IPV6] NDISC: Don...
200
201
  config IPV6_NDISC_NODETYPE
  	bool
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
202
  config IPV6_TUNNEL
38fe999e2   YOSHIFUJI Hideaki   [IPV6] KCONFIG: F...
203
  	tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)"
d2acc3479   Herbert Xu   [INET]: Introduce...
204
  	select INET6_TUNNEL
607f725f6   Paolo Abeni   net: replace dst_...
205
  	select DST_CACHE
97e219b7c   Eric Dumazet   gro_cells: move t...
206
  	select GRO_CELLS
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
207
  	---help---
38fe999e2   YOSHIFUJI Hideaki   [IPV6] KCONFIG: F...
208
209
  	  Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in
  	  RFC 2473.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
210
211
  
  	  If unsure, say N.
c12b395a4   xeb@mail.ru   gre: Support GRE ...
212
213
214
  config IPV6_GRE
  	tristate "IPv6: GRE tunnel"
  	select IPV6_TUNNEL
f61dd388a   Pravin B Shelar   Tunneling: use IP...
215
  	select NET_IP_TUNNEL
8bf42e9e5   Arnd Bergmann   gre6: add Kconfig...
216
  	depends on NET_IPGRE_DEMUX
c12b395a4   xeb@mail.ru   gre: Support GRE ...
217
218
219
220
221
222
223
224
225
226
227
228
  	---help---
  	  Tunneling means encapsulating data of one protocol type within
  	  another protocol and sending it over a channel that understands the
  	  encapsulating protocol. This particular tunneling driver implements
  	  GRE (Generic Routing Encapsulation) and at this time allows
  	  encapsulating of IPv4 or IPv6 over existing IPv6 infrastructure.
  	  This driver is useful if the other endpoint is a Cisco router: Cisco
  	  likes GRE much better than the other Linux tunneling driver ("IP
  	  tunneling" above). In addition, GRE allows multicast redistribution
  	  through the tunnel.
  
  	  Saying M here will produce a module called ip6_gre. If unsure, say N.
fabb13db4   Arnd Bergmann   fou: add Kconfig ...
229
230
231
232
233
234
235
  config IPV6_FOU
  	tristate
  	default NET_FOU && IPV6
  
  config IPV6_FOU_TUNNEL
  	tristate
  	default NET_FOU_IP_TUNNELS && IPV6_FOU
95e4daa82   Arnd Bergmann   fou: fix IPv6 Kco...
236
  	select IPV6_TUNNEL
fabb13db4   Arnd Bergmann   fou: add Kconfig ...
237

264e91b68   Ville Nuorvala   [IPV6]: Make IPV6...
238
239
  config IPV6_MULTIPLE_TABLES
  	bool "IPv6: Multiple Routing Tables"
264e91b68   Ville Nuorvala   [IPV6]: Make IPV6...
240
241
242
  	select FIB_RULES
  	---help---
  	  Support multiple routing tables.
4e96c2b41   YOSHIFUJI Hideaki   [IPV6] KCONFIG: A...
243
244
  config IPV6_SUBTREES
  	bool "IPv6: source address based routing"
264e91b68   Ville Nuorvala   [IPV6]: Make IPV6...
245
  	depends on IPV6_MULTIPLE_TABLES
4e96c2b41   YOSHIFUJI Hideaki   [IPV6] KCONFIG: A...
246
247
248
249
250
251
252
253
254
255
  	---help---
  	  Enable routing by source address or prefix.
  
  	  The destination address is still the primary routing key, so mixing
  	  normal and source prefix specific routes in the same routing table
  	  may sometimes lead to unintended routing behavior.  This can be
  	  avoided by defining different routing tables for the normal and
  	  source prefix specific routes.
  
  	  If unsure, say N.
7bc570c8b   YOSHIFUJI Hideaki   [IPV6] MROUTE: Su...
256
  config IPV6_MROUTE
f9ceb16ec   Kees Cook   net/ipv6: remove ...
257
258
  	bool "IPv6: multicast routing"
  	depends on IPV6
7bc570c8b   YOSHIFUJI Hideaki   [IPV6] MROUTE: Su...
259
260
261
  	---help---
  	  Experimental support for IPv6 multicast forwarding.
  	  If unsure, say N.
d1db275dd   Patrick McHardy   ipv6: ip6mr: supp...
262
263
264
265
266
267
268
269
270
271
272
273
274
  config IPV6_MROUTE_MULTIPLE_TABLES
  	bool "IPv6: multicast policy routing"
  	depends on IPV6_MROUTE
  	select FIB_RULES
  	help
  	  Normally, a multicast router runs a userspace daemon and decides
  	  what to do with a multicast packet based on the source and
  	  destination addresses. If you say Y here, the multicast router
  	  will also be able to take interfaces and packet marks into
  	  account and run multiple instances of userspace daemons
  	  simultaneously, each one handling a single table.
  
  	  If unsure, say N.
14fb64e1f   YOSHIFUJI Hideaki   [IPV6] MROUTE: Su...
275
  config IPV6_PIMSM_V2
f9ceb16ec   Kees Cook   net/ipv6: remove ...
276
  	bool "IPv6: PIM-SM version 2 support"
14fb64e1f   YOSHIFUJI Hideaki   [IPV6] MROUTE: Su...
277
278
279
280
  	depends on IPV6_MROUTE
  	---help---
  	  Support for IPv6 PIM multicast routing protocol PIM-SMv2.
  	  If unsure, say N.
46738b131   David Lebrun   ipv6: sr: add opt...
281
282
283
284
  config IPV6_SEG6_LWTUNNEL
  	bool "IPv6: Segment Routing Header encapsulation support"
  	depends on IPV6
  	select LWTUNNEL
402a5bc46   David Lebrun   ipv6: sr: select ...
285
  	select DST_CACHE
d7a669dd2   David Lebrun   ipv6: sr: add hel...
286
  	select IPV6_MULTIPLE_TABLES
46738b131   David Lebrun   ipv6: sr: add opt...
287
288
289
  	---help---
  	  Support for encapsulation of packets within an outer IPv6
  	  header and a Segment Routing Header using the lightweight
d1df6fd8a   David Lebrun   ipv6: sr: define ...
290
291
  	  tunnels mechanism. Also enable support for advanced local
  	  processing of SRv6 packets based on their active segment.
46738b131   David Lebrun   ipv6: sr: add opt...
292
293
  
  	  If unsure, say N.
bf355b8d2   David Lebrun   ipv6: sr: add cor...
294
295
296
297
298
299
300
301
302
303
304
  config IPV6_SEG6_HMAC
  	bool "IPv6: Segment Routing HMAC support"
  	depends on IPV6
  	select CRYPTO_HMAC
  	select CRYPTO_SHA1
  	select CRYPTO_SHA256
  	---help---
  	  Support for HMAC signature generation and verification
  	  of SR-enabled packets.
  
  	  If unsure, say N.
0b18542b7   Jan Engelhardt   [NET]: Sink IPv6 ...
305
  endif # IPV6