1 # SPDX-License-Identifier: GPL-2.0-only << 2 # 1 # 3 # IPv6 configuration 2 # IPv6 configuration 4 # 3 # 5 4 6 # IPv6 as module will cause a CRASH if you t 5 # IPv6 as module will cause a CRASH if you try to unload it 7 menuconfig IPV6 6 menuconfig IPV6 8 tristate "The IPv6 protocol" 7 tristate "The IPv6 protocol" 9 default y !! 8 default m 10 select CRYPTO_LIB_SHA1 !! 9 ---help--- 11 help !! 10 This is complemental support for the IP version 6. 12 Support for IP version 6 (IPv6). !! 11 You will still be able to do traditional IPv4 networking as well. 13 12 14 For general information about IPv6, 13 For general information about IPv6, see 15 <https://en.wikipedia.org/wiki/IPv6> !! 14 <http://playground.sun.com/pub/ipng/html/ipng-main.html>. 16 For specific information about IPv6 !! 15 For Linux IPv6 development information, see <http://www.linux-ipv6.org>. 17 Documentation/networking/ipv6.rst an !! 16 For specific information about IPv6 under Linux, read the HOWTO at 18 <https://www.tldp.org/HOWTO/Linux+IP !! 17 <http://www.bieringer.de/linux/IPv6/>. 19 18 20 To compile this protocol support as !! 19 To compile this protocol support as a module, choose M here: the 21 module will be called ipv6. 20 module will be called ipv6. 22 21 23 if IPV6 22 if IPV6 24 23 >> 24 config IPV6_PRIVACY >> 25 bool "IPv6: Privacy Extensions (RFC 3041) support" >> 26 ---help--- >> 27 Privacy Extensions for Stateless Address Autoconfiguration in IPv6 >> 28 support. With this option, additional periodically-altered >> 29 pseudo-random global-scope unicast address(es) will be assigned to >> 30 your interface(s). >> 31 >> 32 We use our standard pseudo-random algorithm to generate the >> 33 randomized interface identifier, instead of one described in RFC 3041. >> 34 >> 35 By default the kernel does not generate temporary addresses. >> 36 To use temporary addresses, do >> 37 >> 38 echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr >> 39 >> 40 See <file:Documentation/networking/ip-sysctl.txt> for details. >> 41 25 config IPV6_ROUTER_PREF 42 config IPV6_ROUTER_PREF 26 bool "IPv6: Router Preference (RFC 419 43 bool "IPv6: Router Preference (RFC 4191) support" 27 help !! 44 ---help--- 28 Router Preference is an optional ext 45 Router Preference is an optional extension to the Router 29 Advertisement message which improves 46 Advertisement message which improves the ability of hosts 30 to pick an appropriate router, espec 47 to pick an appropriate router, especially when the hosts 31 are placed in a multi-homed network. 48 are placed in a multi-homed network. 32 49 33 If unsure, say N. 50 If unsure, say N. 34 51 35 config IPV6_ROUTE_INFO 52 config IPV6_ROUTE_INFO 36 bool "IPv6: Route Information (RFC 419 !! 53 bool "IPv6: Route Information (RFC 4191) support (EXPERIMENTAL)" 37 depends on IPV6_ROUTER_PREF !! 54 depends on IPV6_ROUTER_PREF && EXPERIMENTAL 38 help !! 55 ---help--- 39 Support of Route Information. !! 56 This is experimental support of Route Information. 40 57 41 If unsure, say N. 58 If unsure, say N. 42 59 43 config IPV6_OPTIMISTIC_DAD 60 config IPV6_OPTIMISTIC_DAD 44 bool "IPv6: Enable RFC 4429 Optimistic !! 61 bool "IPv6: Enable RFC 4429 Optimistic DAD (EXPERIMENTAL)" 45 help !! 62 depends on EXPERIMENTAL 46 Support for optimistic Duplicate Add !! 63 ---help--- 47 autoconfigured addresses to be used !! 64 This is experimental support for optimistic Duplicate >> 65 Address Detection. It allows for autoconfigured addresses >> 66 to be used more quickly. 48 67 49 If unsure, say N. 68 If unsure, say N. 50 69 51 config INET6_AH 70 config INET6_AH 52 tristate "IPv6: AH transformation" 71 tristate "IPv6: AH transformation" 53 select XFRM_AH !! 72 select XFRM 54 help !! 73 select CRYPTO 55 Support for IPsec AH (Authentication !! 74 select CRYPTO_HMAC 56 !! 75 select CRYPTO_MD5 57 AH can be used with various authenti !! 76 select CRYPTO_SHA1 58 enabling AH support itself, this opt !! 77 ---help--- 59 implementations of the algorithms th !! 78 Support for IPsec AH. 60 implemented. If you need any other << 61 them in the crypto API. You should << 62 implementations of any needed algori << 63 79 64 If unsure, say Y. 80 If unsure, say Y. 65 81 66 config INET6_ESP 82 config INET6_ESP 67 tristate "IPv6: ESP transformation" 83 tristate "IPv6: ESP transformation" 68 select XFRM_ESP !! 84 select XFRM 69 help !! 85 select CRYPTO 70 Support for IPsec ESP (Encapsulating !! 86 select CRYPTO_AUTHENC 71 !! 87 select CRYPTO_HMAC 72 ESP can be used with various encrypt !! 88 select CRYPTO_MD5 73 Besides enabling ESP support itself, !! 89 select CRYPTO_CBC 74 implementations of the algorithms th !! 90 select CRYPTO_SHA1 75 implemented. If you need any other !! 91 select CRYPTO_DES 76 them in the crypto API. You should !! 92 ---help--- 77 implementations of any needed algori !! 93 Support for IPsec ESP. 78 94 79 If unsure, say Y. 95 If unsure, say Y. 80 96 81 config INET6_ESP_OFFLOAD << 82 tristate "IPv6: ESP transformation off << 83 depends on INET6_ESP << 84 select XFRM_OFFLOAD << 85 default n << 86 help << 87 Support for ESP transformation offlo << 88 only if this system really does IPse << 89 with high throughput. A typical desk << 90 need it, even if it does IPsec. << 91 << 92 If unsure, say N. << 93 << 94 config INET6_ESPINTCP << 95 bool "IPv6: ESP in TCP encapsulation ( << 96 depends on XFRM && INET6_ESP << 97 select STREAM_PARSER << 98 select NET_SOCK_MSG << 99 select XFRM_ESPINTCP << 100 help << 101 Support for RFC 8229 encapsulation o << 102 TCP/IPv6 sockets. << 103 << 104 If unsure, say N. << 105 << 106 config INET6_IPCOMP 97 config INET6_IPCOMP 107 tristate "IPv6: IPComp transformation" 98 tristate "IPv6: IPComp transformation" 108 select INET6_XFRM_TUNNEL 99 select INET6_XFRM_TUNNEL 109 select XFRM_IPCOMP 100 select XFRM_IPCOMP 110 help !! 101 ---help--- 111 Support for IP Payload Compression P 102 Support for IP Payload Compression Protocol (IPComp) (RFC3173), 112 typically needed for IPsec. 103 typically needed for IPsec. 113 104 114 If unsure, say Y. 105 If unsure, say Y. 115 106 116 config IPV6_MIP6 107 config IPV6_MIP6 117 tristate "IPv6: Mobility" !! 108 tristate "IPv6: Mobility (EXPERIMENTAL)" >> 109 depends on EXPERIMENTAL 118 select XFRM 110 select XFRM 119 help !! 111 ---help--- 120 Support for IPv6 Mobility described 112 Support for IPv6 Mobility described in RFC 3775. 121 113 122 If unsure, say N. 114 If unsure, say N. 123 115 124 config IPV6_ILA << 125 tristate "IPv6: Identifier Locator Add << 126 depends on NETFILTER << 127 select DST_CACHE << 128 select LWTUNNEL << 129 help << 130 Support for IPv6 Identifier Locator << 131 << 132 ILA is a mechanism to do network vir << 133 encapsulation. The basic concept of << 134 IPv6 address into a 64 bit locator a << 135 identifier is the identity of an ent << 136 ("who") and the locator expresses th << 137 entity ("where"). << 138 << 139 ILA can be configured using the "enc << 140 "ip -6 route" command. ILA is descri << 141 https://tools.ietf.org/html/draft-he << 142 << 143 If unsure, say N. << 144 << 145 config INET6_XFRM_TUNNEL 116 config INET6_XFRM_TUNNEL 146 tristate 117 tristate 147 select INET6_TUNNEL 118 select INET6_TUNNEL 148 default n 119 default n 149 120 150 config INET6_TUNNEL 121 config INET6_TUNNEL 151 tristate 122 tristate 152 default n 123 default n 153 124 154 config IPV6_VTI !! 125 config INET6_XFRM_MODE_TRANSPORT 155 tristate "Virtual (secure) IPv6: tunne !! 126 tristate "IPv6: IPsec transport mode" 156 select IPV6_TUNNEL !! 127 default IPV6 157 select NET_IP_TUNNEL !! 128 select XFRM >> 129 ---help--- >> 130 Support for IPsec transport mode. >> 131 >> 132 If unsure, say Y. >> 133 >> 134 config INET6_XFRM_MODE_TUNNEL >> 135 tristate "IPv6: IPsec tunnel mode" >> 136 default IPV6 >> 137 select XFRM >> 138 ---help--- >> 139 Support for IPsec tunnel mode. >> 140 >> 141 If unsure, say Y. >> 142 >> 143 config INET6_XFRM_MODE_BEET >> 144 tristate "IPv6: IPsec BEET mode" >> 145 default IPV6 >> 146 select XFRM >> 147 ---help--- >> 148 Support for IPsec BEET mode. >> 149 >> 150 If unsure, say Y. >> 151 >> 152 config INET6_XFRM_MODE_ROUTEOPTIMIZATION >> 153 tristate "IPv6: MIPv6 route optimization mode (EXPERIMENTAL)" >> 154 depends on EXPERIMENTAL 158 select XFRM 155 select XFRM 159 help !! 156 ---help--- 160 Tunneling means encapsulating data of !! 157 Support for MIPv6 route optimization mode. 161 another protocol and sending it over a << 162 encapsulating protocol. This can be us << 163 the notion of a secure tunnel for IPSE << 164 on top. << 165 158 166 config IPV6_SIT 159 config IPV6_SIT 167 tristate "IPv6: IPv6-in-IPv4 tunnel (S 160 tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)" 168 select INET_TUNNEL 161 select INET_TUNNEL 169 select NET_IP_TUNNEL << 170 select IPV6_NDISC_NODETYPE 162 select IPV6_NDISC_NODETYPE 171 default y 163 default y 172 help !! 164 ---help--- 173 Tunneling means encapsulating data o 165 Tunneling means encapsulating data of one protocol type within 174 another protocol and sending it over 166 another protocol and sending it over a channel that understands the 175 encapsulating protocol. This driver 167 encapsulating protocol. This driver implements encapsulation of IPv6 176 into IPv4 packets. This is useful if 168 into IPv4 packets. This is useful if you want to connect two IPv6 177 networks over an IPv4-only path. 169 networks over an IPv4-only path. 178 170 179 Saying M here will produce a module 171 Saying M here will produce a module called sit. If unsure, say Y. 180 172 181 config IPV6_SIT_6RD << 182 bool "IPv6: IPv6 Rapid Deployment (6RD << 183 depends on IPV6_SIT << 184 default n << 185 help << 186 IPv6 Rapid Deployment (6rd; draft-ie << 187 mechanisms of 6to4 (RFC3056) to enab << 188 deploy IPv6 unicast service to IPv4 << 189 customer premise equipment. Like 6t << 190 IPv4 encapsulation in order to trans << 191 infrastructure. Unlike 6to4, a 6rd << 192 prefix of its own in place of the fi << 193 << 194 With this option enabled, the SIT dr << 195 providing additional ioctl API to co << 196 stead of static 2002::/16 for 6to4. << 197 << 198 If unsure, say N. << 199 << 200 config IPV6_NDISC_NODETYPE 173 config IPV6_NDISC_NODETYPE 201 bool 174 bool 202 175 203 config IPV6_TUNNEL 176 config IPV6_TUNNEL 204 tristate "IPv6: IP-in-IPv6 tunnel (RFC 177 tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)" 205 select INET6_TUNNEL 178 select INET6_TUNNEL 206 select DST_CACHE !! 179 ---help--- 207 select GRO_CELLS << 208 help << 209 Support for IPv6-in-IPv6 and IPv4-in 180 Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in 210 RFC 2473. 181 RFC 2473. 211 182 212 If unsure, say N. 183 If unsure, say N. 213 184 214 config IPV6_GRE << 215 tristate "IPv6: GRE tunnel" << 216 select IPV6_TUNNEL << 217 select NET_IP_TUNNEL << 218 depends on NET_IPGRE_DEMUX << 219 help << 220 Tunneling means encapsulating data o << 221 another protocol and sending it over << 222 encapsulating protocol. This particu << 223 GRE (Generic Routing Encapsulation) << 224 encapsulating of IPv4 or IPv6 over e << 225 This driver is useful if the other e << 226 likes GRE much better than the other << 227 tunneling" above). In addition, GRE << 228 through the tunnel. << 229 << 230 Saying M here will produce a module << 231 << 232 config IPV6_FOU << 233 tristate << 234 default NET_FOU && IPV6 << 235 << 236 config IPV6_FOU_TUNNEL << 237 tristate << 238 default NET_FOU_IP_TUNNELS && IPV6_FOU << 239 select IPV6_TUNNEL << 240 << 241 config IPV6_MULTIPLE_TABLES 185 config IPV6_MULTIPLE_TABLES 242 bool "IPv6: Multiple Routing Tables" 186 bool "IPv6: Multiple Routing Tables" >> 187 depends on EXPERIMENTAL 243 select FIB_RULES 188 select FIB_RULES 244 help !! 189 ---help--- 245 Support multiple routing tables. 190 Support multiple routing tables. 246 191 247 config IPV6_SUBTREES 192 config IPV6_SUBTREES 248 bool "IPv6: source address based routi 193 bool "IPv6: source address based routing" 249 depends on IPV6_MULTIPLE_TABLES 194 depends on IPV6_MULTIPLE_TABLES 250 help !! 195 ---help--- 251 Enable routing by source address or 196 Enable routing by source address or prefix. 252 197 253 The destination address is still the 198 The destination address is still the primary routing key, so mixing 254 normal and source prefix specific ro 199 normal and source prefix specific routes in the same routing table 255 may sometimes lead to unintended rou 200 may sometimes lead to unintended routing behavior. This can be 256 avoided by defining different routin 201 avoided by defining different routing tables for the normal and 257 source prefix specific routes. 202 source prefix specific routes. 258 203 259 If unsure, say N. 204 If unsure, say N. 260 205 261 config IPV6_MROUTE 206 config IPV6_MROUTE 262 bool "IPv6: multicast routing" !! 207 bool "IPv6: multicast routing (EXPERIMENTAL)" 263 depends on IPV6 !! 208 depends on IPV6 && EXPERIMENTAL 264 select IP_MROUTE_COMMON !! 209 ---help--- 265 help !! 210 Experimental support for IPv6 multicast forwarding. 266 Support for IPv6 multicast forwardin << 267 If unsure, say N. << 268 << 269 config IPV6_MROUTE_MULTIPLE_TABLES << 270 bool "IPv6: multicast policy routing" << 271 depends on IPV6_MROUTE << 272 select FIB_RULES << 273 help << 274 Normally, a multicast router runs a << 275 what to do with a multicast packet b << 276 destination addresses. If you say Y << 277 will also be able to take interfaces << 278 account and run multiple instances o << 279 simultaneously, each one handling a << 280 << 281 If unsure, say N. 211 If unsure, say N. 282 212 283 config IPV6_PIMSM_V2 213 config IPV6_PIMSM_V2 284 bool "IPv6: PIM-SM version 2 support" !! 214 bool "IPv6: PIM-SM version 2 support (EXPERIMENTAL)" 285 depends on IPV6_MROUTE 215 depends on IPV6_MROUTE 286 help !! 216 ---help--- 287 Support for IPv6 PIM multicast routi 217 Support for IPv6 PIM multicast routing protocol PIM-SMv2. 288 If unsure, say N. << 289 << 290 config IPV6_SEG6_LWTUNNEL << 291 bool "IPv6: Segment Routing Header enc << 292 depends on IPV6 << 293 select LWTUNNEL << 294 select DST_CACHE << 295 select IPV6_MULTIPLE_TABLES << 296 help << 297 Support for encapsulation of packets << 298 header and a Segment Routing Header << 299 tunnels mechanism. Also enable suppo << 300 processing of SRv6 packets based on << 301 << 302 If unsure, say N. << 303 << 304 config IPV6_SEG6_HMAC << 305 bool "IPv6: Segment Routing HMAC suppo << 306 depends on IPV6 << 307 select CRYPTO << 308 select CRYPTO_HMAC << 309 select CRYPTO_SHA1 << 310 select CRYPTO_SHA256 << 311 help << 312 Support for HMAC signature generatio << 313 of SR-enabled packets. << 314 << 315 If unsure, say N. << 316 << 317 config IPV6_SEG6_BPF << 318 def_bool y << 319 depends on IPV6_SEG6_LWTUNNEL << 320 depends on IPV6 = y << 321 << 322 config IPV6_RPL_LWTUNNEL << 323 bool "IPv6: RPL Source Routing Header << 324 depends on IPV6 << 325 select LWTUNNEL << 326 select DST_CACHE << 327 help << 328 Support for RFC6554 RPL Source Routi << 329 tunnels mechanism. << 330 << 331 If unsure, say N. << 332 << 333 config IPV6_IOAM6_LWTUNNEL << 334 bool "IPv6: IOAM Pre-allocated Trace i << 335 depends on IPV6 << 336 select LWTUNNEL << 337 select DST_CACHE << 338 help << 339 Support for the insertion of IOAM Pr << 340 Header using the lightweight tunnels << 341 << 342 If unsure, say N. 218 If unsure, say N. 343 219 344 endif # IPV6 220 endif # IPV6
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.