1 # SPDX-License-Identifier: GPL-2.0-only << 2 # 1 # 3 # Network configuration 2 # Network configuration 4 # 3 # 5 4 6 menuconfig NET !! 5 menu "Networking support" >> 6 >> 7 config NET 7 bool "Networking support" 8 bool "Networking support" 8 select NLATTR !! 9 ---help--- 9 select GENERIC_NET_UTILS << 10 select BPF << 11 help << 12 Unless you really know what you are 10 Unless you really know what you are doing, you should say Y here. 13 The reason is that some programs nee 11 The reason is that some programs need kernel networking support even 14 when running on a stand-alone machin 12 when running on a stand-alone machine that isn't connected to any 15 other computer. !! 13 other computer. If you are upgrading from an older kernel, you 16 << 17 If you are upgrading from an older k << 18 should consider updating your networ 14 should consider updating your networking tools too because changes 19 in the kernel and the tools often go 15 in the kernel and the tools often go hand in hand. The tools are 20 contained in the package net-tools, 16 contained in the package net-tools, the location and version number 21 of which are given in <file:Document 17 of which are given in <file:Documentation/Changes>. 22 18 23 For a general introduction to Linux 19 For a general introduction to Linux networking, it is highly 24 recommended to read the NET-HOWTO, a 20 recommended to read the NET-HOWTO, available from 25 <http://www.tldp.org/docs.html#howto 21 <http://www.tldp.org/docs.html#howto>. 26 22 27 if NET !! 23 menu "Networking options" 28 !! 24 depends on NET 29 config WANT_COMPAT_NETLINK_MESSAGES << 30 bool << 31 help << 32 This option can be selected by other << 33 netlink messages. << 34 << 35 config COMPAT_NETLINK_MESSAGES << 36 def_bool y << 37 depends on COMPAT << 38 depends on WEXT_CORE || WANT_COMPAT_NE << 39 help << 40 This option makes it possible to sen << 41 to tasks depending on whether the ta << 42 achieve this, you need to set skb_sh << 43 compat skb before sending the skb, t << 44 which message to actually pass to th << 45 << 46 Newly written code should NEVER need << 47 compat-independent messages instead! << 48 << 49 config NET_INGRESS << 50 bool << 51 << 52 config NET_EGRESS << 53 bool << 54 << 55 config NET_XGRESS << 56 select NET_INGRESS << 57 select NET_EGRESS << 58 bool << 59 << 60 config NET_REDIRECT << 61 bool << 62 << 63 config SKB_DECRYPTED << 64 bool << 65 25 66 config SKB_EXTENSIONS !! 26 config PACKET 67 bool !! 27 tristate "Packet socket" >> 28 ---help--- >> 29 The Packet protocol is used by applications which communicate >> 30 directly with network devices without an intermediate network >> 31 protocol implemented in the kernel, e.g. tcpdump. If you want them >> 32 to work, choose Y. >> 33 >> 34 To compile this driver as a module, choose M here: the module will >> 35 be called af_packet. If you use modprobe or kmod, you may also >> 36 want to add "alias net-pf-17 af_packet" to /etc/modules.conf. 68 37 69 config NET_DEVMEM !! 38 If unsure, say Y. 70 def_bool y << 71 depends on DMA_SHARED_BUFFER << 72 depends on GENERIC_ALLOCATOR << 73 depends on PAGE_POOL << 74 39 75 menu "Networking options" !! 40 config PACKET_MMAP >> 41 bool "Packet socket: mmapped IO" >> 42 depends on PACKET >> 43 help >> 44 If you say Y here, the Packet protocol driver will use an IO >> 45 mechanism that results in faster communication. 76 46 77 source "net/packet/Kconfig" !! 47 If unsure, say N. 78 source "net/unix/Kconfig" << 79 source "net/tls/Kconfig" << 80 source "net/xfrm/Kconfig" << 81 source "net/iucv/Kconfig" << 82 source "net/smc/Kconfig" << 83 source "net/xdp/Kconfig" << 84 << 85 config NET_HANDSHAKE << 86 bool << 87 depends on SUNRPC || NVME_TARGET_TCP | << 88 default y << 89 48 90 config NET_HANDSHAKE_KUNIT_TEST !! 49 config NETLINK_DEV 91 tristate "KUnit tests for the handshak !! 50 tristate "Netlink device emulation" 92 default KUNIT_ALL_TESTS !! 51 help 93 depends on KUNIT !! 52 This option will be removed soon. Any programs that want to use 94 help !! 53 character special nodes like /dev/tap0 or /dev/route (all with major 95 This builds the KUnit tests for the !! 54 number 36) need this option, and need to be rewritten soon to use 96 !! 55 the real netlink socket. 97 KUnit tests run during boot and outp !! 56 This is a backward compatibility option, choose Y for now. 98 log in TAP format (https://testanyth !! 57 99 kernel devs running KUnit test harne !! 58 config UNIX 100 into a production build. !! 59 tristate "Unix domain sockets" >> 60 ---help--- >> 61 If you say Y here, you will include support for Unix domain sockets; >> 62 sockets are the standard Unix mechanism for establishing and >> 63 accessing network connections. Many commonly used programs such as >> 64 the X Window system and syslog use these sockets even if your >> 65 machine is not connected to any network. Unless you are working on >> 66 an embedded system or something similar, you therefore definitely >> 67 want to say Y here. >> 68 >> 69 To compile this driver as a module, choose M here: the module will be >> 70 called unix. If you try building this as a module and you have >> 71 said Y to "Kernel module loader support" above, be sure to add >> 72 'alias net-pf-1 unix' to your /etc/modules.conf file. Note that >> 73 several important services won't work correctly if you say M here >> 74 and then neglect to load the module. >> 75 >> 76 Say Y unless you know what you are doing. >> 77 >> 78 config NET_KEY >> 79 tristate "PF_KEY sockets" >> 80 select XFRM >> 81 ---help--- >> 82 PF_KEYv2 socket family, compatible to KAME ones. >> 83 They are required if you are going to use IPsec tools ported >> 84 from KAME. 101 85 102 For more information on KUnit and un !! 86 Say Y unless you know what you are doing. 103 to the KUnit documentation in Docume << 104 87 105 config INET 88 config INET 106 bool "TCP/IP networking" 89 bool "TCP/IP networking" 107 help !! 90 ---help--- 108 These are the protocols used on the 91 These are the protocols used on the Internet and on most local 109 Ethernets. It is highly recommended 92 Ethernets. It is highly recommended to say Y here (this will enlarge 110 your kernel by about 400 KB), since !! 93 your kernel by about 144 KB), since some programs (e.g. the X window 111 system) use TCP/IP even if your mach 94 system) use TCP/IP even if your machine is not connected to any 112 other computer. You will get the so- 95 other computer. You will get the so-called loopback device which 113 allows you to ping yourself (great f 96 allows you to ping yourself (great fun, that!). 114 97 115 For an excellent introduction to Lin 98 For an excellent introduction to Linux networking, please read the 116 Linux Networking HOWTO, available fr 99 Linux Networking HOWTO, available from 117 <http://www.tldp.org/docs.html#howto 100 <http://www.tldp.org/docs.html#howto>. 118 101 119 If you say Y here and also to "/proc 102 If you say Y here and also to "/proc file system support" and 120 "Sysctl support" below, you can chan 103 "Sysctl support" below, you can change various aspects of the 121 behavior of the TCP/IP code by writi 104 behavior of the TCP/IP code by writing to the (virtual) files in 122 /proc/sys/net/ipv4/*; the options ar 105 /proc/sys/net/ipv4/*; the options are explained in the file 123 <file:Documentation/networking/ip-sy !! 106 <file:Documentation/networking/ip-sysctl.txt>. 124 107 125 Short answer: say Y. 108 Short answer: say Y. 126 109 127 if INET << 128 source "net/ipv4/Kconfig" 110 source "net/ipv4/Kconfig" 129 source "net/ipv6/Kconfig" << 130 source "net/netlabel/Kconfig" << 131 source "net/mptcp/Kconfig" << 132 111 133 endif # if INET !! 112 # IPv6 as module will cause a CRASH if you try to unload it >> 113 config IPV6 >> 114 tristate "The IPv6 protocol (EXPERIMENTAL)" >> 115 depends on INET && EXPERIMENTAL >> 116 ---help--- >> 117 This is experimental support for the IP version 6 (formerly called >> 118 IPng "IP next generation"). You will still be able to do >> 119 regular IPv4 networking as well. >> 120 >> 121 Features of this new protocol include: expanded address space, >> 122 authentication and privacy, and seamless interoperability with the >> 123 current version of IP (IP version 4). For general information about >> 124 IPv6, see <http://playground.sun.com/pub/ipng/html/ipng-main.html>; >> 125 for specific information about IPv6 under Linux read the HOWTO at >> 126 <http://www.bieringer.de/linux/IPv6/> and the file net/ipv6/README >> 127 in the kernel source. >> 128 >> 129 To compile this protocol support as a module, choose M here: the >> 130 module will be called ipv6. If you try building this as a module >> 131 and you have said Y to "Kernel module loader support" above, >> 132 be sure to add 'alias net-pf-10 ipv6' to your /etc/modules.conf file. 134 133 135 config NETWORK_SECMARK !! 134 It is safe to say N here for now. 136 bool "Security Marking" << 137 help << 138 This enables security marking of net << 139 to nfmark, but designated for securi << 140 If you are unsure how to answer this << 141 135 142 config NET_PTP_CLASSIFY !! 136 source "net/ipv6/Kconfig" 143 def_bool n << 144 137 145 config NETWORK_PHY_TIMESTAMPING !! 138 config DECNET 146 bool "Timestamping in PHY devices" !! 139 tristate "DECnet Support" 147 select NET_PTP_CLASSIFY !! 140 ---help--- 148 help !! 141 The DECnet networking protocol was used in many products made by 149 This allows timestamping of network !! 142 Digital (now Compaq). It provides reliable stream and sequenced 150 other MII bus snooping devices) with !! 143 packet communications over which run a variety of services similar 151 capabilities. This option adds some !! 144 to those which run over TCP/IP. 152 and receive paths. !! 145 >> 146 To find some tools to use with the kernel layer support, please >> 147 look at Patrick Caulfield's web site: >> 148 <http://linux.dreamtime.org/decnet/>. >> 149 >> 150 More detailed documentation is available in >> 151 <file:Documentation/networking/decnet.txt>. >> 152 >> 153 Be sure to say Y to "/proc file system support" and "Sysctl support" >> 154 below when using DECnet, since you will need sysctl support to aid >> 155 in configuration at run time. >> 156 >> 157 The DECnet code is also available as a module ( = code which can be >> 158 inserted in and removed from the running kernel whenever you want). >> 159 The module is called decnet. >> 160 >> 161 source "net/decnet/Kconfig" >> 162 >> 163 config BRIDGE >> 164 tristate "802.1d Ethernet Bridging" >> 165 ---help--- >> 166 If you say Y here, then your Linux box will be able to act as an >> 167 Ethernet bridge, which means that the different Ethernet segments it >> 168 is connected to will appear as one Ethernet to the participants. >> 169 Several such bridges can work together to create even larger >> 170 networks of Ethernets using the IEEE 802.1 spanning tree algorithm. >> 171 As this is a standard, Linux bridges will cooperate properly with >> 172 other third party bridge products. >> 173 >> 174 In order to use the Ethernet bridge, you'll need the bridge >> 175 configuration tools; see <file:Documentation/networking/bridge.txt> >> 176 for location. Please read the Bridge mini-HOWTO for more >> 177 information. >> 178 >> 179 If you enable iptables support along with the bridge support then you >> 180 turn your bridge into a bridging IP firewall. >> 181 iptables will then see the IP packets being bridged, so you need to >> 182 take this into account when setting up your firewall rules. >> 183 Enabling arptables support when bridging will let arptables see >> 184 bridged ARP traffic in the arptables FORWARD chain. 153 185 154 If you are unsure how to answer this !! 186 To compile this code as a module, choose M here: the module >> 187 will be called bridge. >> 188 >> 189 If unsure, say N. 155 190 156 menuconfig NETFILTER 191 menuconfig NETFILTER 157 bool "Network packet filtering framewo !! 192 bool "Network packet filtering (replaces ipchains)" 158 help !! 193 ---help--- 159 Netfilter is a framework for filteri 194 Netfilter is a framework for filtering and mangling network packets 160 that pass through your Linux box. 195 that pass through your Linux box. 161 196 162 The most common use of packet filter 197 The most common use of packet filtering is to run your Linux box as 163 a firewall protecting a local networ 198 a firewall protecting a local network from the Internet. The type of 164 firewall provided by this kernel sup 199 firewall provided by this kernel support is called a "packet 165 filter", which means that it can rej 200 filter", which means that it can reject individual network packets 166 based on type, source, destination e 201 based on type, source, destination etc. The other kind of firewall, 167 a "proxy-based" one, is more secure 202 a "proxy-based" one, is more secure but more intrusive and more 168 bothersome to set up; it inspects th 203 bothersome to set up; it inspects the network traffic much more 169 closely, modifies it and has knowled 204 closely, modifies it and has knowledge about the higher level 170 protocols, which a packet filter lac 205 protocols, which a packet filter lacks. Moreover, proxy-based 171 firewalls often require changes to t 206 firewalls often require changes to the programs running on the local 172 clients. Proxy-based firewalls don't 207 clients. Proxy-based firewalls don't need support by the kernel, but 173 they are often combined with a packe 208 they are often combined with a packet filter, which only works if 174 you say Y here. 209 you say Y here. 175 210 176 You should also say Y here if you in 211 You should also say Y here if you intend to use your Linux box as 177 the gateway to the Internet for a lo 212 the gateway to the Internet for a local network of machines without 178 globally valid IP addresses. This is 213 globally valid IP addresses. This is called "masquerading": if one 179 of the computers on your local netwo 214 of the computers on your local network wants to send something to 180 the outside, your box can "masquerad 215 the outside, your box can "masquerade" as that computer, i.e. it 181 forwards the traffic to the intended 216 forwards the traffic to the intended outside destination, but 182 modifies the packets to make it look 217 modifies the packets to make it look like they came from the 183 firewall box itself. It works both w 218 firewall box itself. It works both ways: if the outside host 184 replies, the Linux box will silently 219 replies, the Linux box will silently forward the traffic to the 185 correct local computer. This way, th 220 correct local computer. This way, the computers on your local net 186 are completely invisible to the outs 221 are completely invisible to the outside world, even though they can 187 reach the outside and can receive re 222 reach the outside and can receive replies. It is even possible to 188 run globally visible servers from wi 223 run globally visible servers from within a masqueraded local network 189 using a mechanism called portforward 224 using a mechanism called portforwarding. Masquerading is also often 190 called NAT (Network Address Translat 225 called NAT (Network Address Translation). 191 226 192 Another use of Netfilter is in trans 227 Another use of Netfilter is in transparent proxying: if a machine on 193 the local network tries to connect t 228 the local network tries to connect to an outside host, your Linux 194 box can transparently forward the tr 229 box can transparently forward the traffic to a local server, 195 typically a caching proxy server. 230 typically a caching proxy server. 196 231 197 Yet another use of Netfilter is buil 232 Yet another use of Netfilter is building a bridging firewall. Using 198 a bridge with Network packet filteri 233 a bridge with Network packet filtering enabled makes iptables "see" 199 the bridged traffic. For filtering o 234 the bridged traffic. For filtering on the lower network and Ethernet 200 protocols over the bridge, use ebtab 235 protocols over the bridge, use ebtables (under bridge netfilter 201 configuration). 236 configuration). 202 237 203 Various modules exist for netfilter 238 Various modules exist for netfilter which replace the previous 204 masquerading (ipmasqadm), packet fil 239 masquerading (ipmasqadm), packet filtering (ipchains), transparent 205 proxying, and portforwarding mechani 240 proxying, and portforwarding mechanisms. Please see 206 <file:Documentation/Changes> under " 241 <file:Documentation/Changes> under "iptables" for the location of 207 these packages. 242 these packages. 208 243 >> 244 Make sure to say N to "Fast switching" below if you intend to say Y >> 245 here, as Fast switching currently bypasses netfilter. >> 246 >> 247 Chances are that you should say Y here if you compile a kernel which >> 248 will run as a router and N for regular hosts. If unsure, say N. >> 249 209 if NETFILTER 250 if NETFILTER 210 251 211 config NETFILTER_ADVANCED !! 252 config NETFILTER_DEBUG 212 bool "Advanced netfilter configuration !! 253 bool "Network packet filtering debugging" 213 depends on NETFILTER 254 depends on NETFILTER 214 default y << 215 help 255 help 216 If you say Y here you can select bet !! 256 You can say Y here if you want to get additional messages useful in 217 If you say N the more unusual ones w !! 257 debugging the netfilter code. 218 basic ones needed by most people wil << 219 << 220 If unsure, say Y. << 221 258 222 config BRIDGE_NETFILTER 259 config BRIDGE_NETFILTER 223 tristate "Bridged IP/ARP packets filte !! 260 bool "Bridged IP/ARP packets filtering" 224 depends on BRIDGE !! 261 depends on BRIDGE && NETFILTER && INET 225 depends on NETFILTER && INET !! 262 default y 226 depends on NETFILTER_ADVANCED !! 263 ---help--- 227 select NETFILTER_FAMILY_BRIDGE << 228 select SKB_EXTENSIONS << 229 help << 230 Enabling this option will let arptab 264 Enabling this option will let arptables resp. iptables see bridged 231 ARP resp. IP traffic. If you want a 265 ARP resp. IP traffic. If you want a bridging firewall, you probably 232 want this option enabled. 266 want this option enabled. 233 Enabling or disabling this option do 267 Enabling or disabling this option doesn't enable or disable 234 ebtables. 268 ebtables. 235 269 236 If unsure, say N. 270 If unsure, say N. 237 271 238 source "net/netfilter/Kconfig" << 239 source "net/ipv4/netfilter/Kconfig" 272 source "net/ipv4/netfilter/Kconfig" 240 source "net/ipv6/netfilter/Kconfig" 273 source "net/ipv6/netfilter/Kconfig" >> 274 source "net/decnet/netfilter/Kconfig" 241 source "net/bridge/netfilter/Kconfig" 275 source "net/bridge/netfilter/Kconfig" 242 276 243 endif 277 endif 244 278 245 source "net/dccp/Kconfig" !! 279 source "net/xfrm/Kconfig" >> 280 246 source "net/sctp/Kconfig" 281 source "net/sctp/Kconfig" 247 source "net/rds/Kconfig" !! 282 248 source "net/tipc/Kconfig" !! 283 config ATM 249 source "net/atm/Kconfig" !! 284 tristate "Asynchronous Transfer Mode (ATM) (EXPERIMENTAL)" 250 source "net/l2tp/Kconfig" !! 285 depends on EXPERIMENTAL 251 source "net/802/Kconfig" !! 286 ---help--- 252 source "net/bridge/Kconfig" !! 287 ATM is a high-speed networking technology for Local Area Networks 253 source "net/dsa/Kconfig" !! 288 and Wide Area Networks. It uses a fixed packet size and is 254 source "net/8021q/Kconfig" !! 289 connection oriented, allowing for the negotiation of minimum >> 290 bandwidth requirements. >> 291 >> 292 In order to participate in an ATM network, your Linux box needs an >> 293 ATM networking card. If you have that, say Y here and to the driver >> 294 of your ATM card below. >> 295 >> 296 Note that you need a set of user-space programs to actually make use >> 297 of ATM. See the file <file:Documentation/networking/atm.txt> for >> 298 further details. >> 299 >> 300 config ATM_CLIP >> 301 tristate "Classical IP over ATM (EXPERIMENTAL)" >> 302 depends on ATM && INET >> 303 help >> 304 Classical IP over ATM for PVCs and SVCs, supporting InARP and >> 305 ATMARP. If you want to communication with other IP hosts on your ATM >> 306 network, you will typically either say Y here or to "LAN Emulation >> 307 (LANE)" below. >> 308 >> 309 config ATM_CLIP_NO_ICMP >> 310 bool "Do NOT send ICMP if no neighbour (EXPERIMENTAL)" >> 311 depends on ATM_CLIP >> 312 help >> 313 Normally, an "ICMP host unreachable" message is sent if a neighbour >> 314 cannot be reached because there is no VC to it in the kernel's >> 315 ATMARP table. This may cause problems when ATMARP table entries are >> 316 briefly removed during revalidation. If you say Y here, packets to >> 317 such neighbours are silently discarded instead. >> 318 >> 319 config ATM_LANE >> 320 tristate "LAN Emulation (LANE) support (EXPERIMENTAL)" >> 321 depends on ATM >> 322 help >> 323 LAN Emulation emulates services of existing LANs across an ATM >> 324 network. Besides operating as a normal ATM end station client, Linux >> 325 LANE client can also act as an proxy client bridging packets between >> 326 ELAN and Ethernet segments. You need LANE if you want to try MPOA. >> 327 >> 328 config ATM_MPOA >> 329 tristate "Multi-Protocol Over ATM (MPOA) support (EXPERIMENTAL)" >> 330 depends on ATM && INET && ATM_LANE!=n >> 331 help >> 332 Multi-Protocol Over ATM allows ATM edge devices such as routers, >> 333 bridges and ATM attached hosts establish direct ATM VCs across >> 334 subnetwork boundaries. These shortcut connections bypass routers >> 335 enhancing overall network performance. >> 336 >> 337 config ATM_BR2684 >> 338 tristate "RFC1483/2684 Bridged protocols" >> 339 depends on ATM && INET >> 340 help >> 341 ATM PVCs can carry ethernet PDUs according to rfc2684 (formerly 1483) >> 342 This device will act like an ethernet from the kernels point of view, >> 343 with the traffic being carried by ATM PVCs (currently 1 PVC/device). >> 344 This is sometimes used over DSL lines. If in doubt, say N. >> 345 >> 346 config ATM_BR2684_IPFILTER >> 347 bool "Per-VC IP filter kludge" >> 348 depends on ATM_BR2684 >> 349 help >> 350 This is an experimental mechanism for users who need to terminating a >> 351 large number of IP-only vcc's. Do not enable this unless you are sure >> 352 you know what you are doing. >> 353 >> 354 config VLAN_8021Q >> 355 tristate "802.1Q VLAN Support" >> 356 255 source "net/llc/Kconfig" 357 source "net/llc/Kconfig" 256 source "net/appletalk/Kconfig" << 257 source "net/x25/Kconfig" << 258 source "net/lapb/Kconfig" << 259 source "net/phonet/Kconfig" << 260 source "net/6lowpan/Kconfig" << 261 source "net/ieee802154/Kconfig" << 262 source "net/mac802154/Kconfig" << 263 source "net/sched/Kconfig" << 264 source "net/dcb/Kconfig" << 265 source "net/dns_resolver/Kconfig" << 266 source "net/batman-adv/Kconfig" << 267 source "net/openvswitch/Kconfig" << 268 source "net/vmw_vsock/Kconfig" << 269 source "net/netlink/Kconfig" << 270 source "net/mpls/Kconfig" << 271 source "net/nsh/Kconfig" << 272 source "net/hsr/Kconfig" << 273 source "net/switchdev/Kconfig" << 274 source "net/l3mdev/Kconfig" << 275 source "net/qrtr/Kconfig" << 276 source "net/ncsi/Kconfig" << 277 << 278 config PCPU_DEV_REFCNT << 279 bool "Use percpu variables to maintain << 280 depends on SMP << 281 default y << 282 help << 283 network device refcount are using pe << 284 This can be forced to N to detect un << 285 358 286 config MAX_SKB_FRAGS !! 359 config IPX 287 int "Maximum number of fragments per s !! 360 tristate "The IPX protocol" 288 range 17 45 !! 361 select LLC 289 default 17 !! 362 ---help--- 290 help !! 363 This is support for the Novell networking protocol, IPX, commonly 291 Having more fragments per skb_shared !! 364 used for local networks of Windows machines. You need it if you 292 This helps BIG TCP workloads, but mi !! 365 want to access Novell NetWare file or print servers using the Linux 293 legacy drivers. !! 366 Novell client ncpfs (available from 294 This also increases memory overhead !! 367 <ftp://platan.vc.cvut.cz/pub/linux/ncpfs/>) or from 295 and in drivers using build_skb(). !! 368 within the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, 296 If unsure, say 17. !! 369 available from <http://www.tldp.org/docs.html#howto>). In order 297 !! 370 to do the former, you'll also have to say Y to "NCP file system 298 config RPS !! 371 support", below. 299 bool "Receive packet steering" !! 372 300 depends on SMP && SYSFS !! 373 IPX is similar in scope to IP, while SPX, which runs on top of IPX, 301 default y !! 374 is similar to TCP. There is also experimental support for SPX in 302 help !! 375 Linux (see "SPX networking", below). 303 Software receive side packet steerin !! 376 304 load of received packet processing a !! 377 To turn your Linux box into a fully featured NetWare file server and >> 378 IPX router, say Y here and fetch either lwared from >> 379 <ftp://ibiblio.org/pub/Linux/system/network/daemons/> or >> 380 mars_nwe from <ftp://www.compu-art.de/mars_nwe/>. For more >> 381 information, read the IPX-HOWTO available from >> 382 <http://www.tldp.org/docs.html#howto>. 305 383 306 config RFS_ACCEL !! 384 General information about how to connect Linux, Windows machines and 307 bool "Hardware acceleration of RFS" !! 385 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>. 308 depends on RPS << 309 select CPU_RMAP << 310 default y << 311 help << 312 Allowing drivers for multiqueue hard << 313 accelerate RFS. << 314 386 315 config SOCK_RX_QUEUE_MAPPING !! 387 The IPX driver would enlarge your kernel by about 16 KB. To compile 316 bool !! 388 this driver as a module, choose M here: the module will be called ipx. >> 389 Unless you want to integrate your Linux box with a local Novell >> 390 network, say N. >> 391 >> 392 source "net/ipx/Kconfig" >> 393 >> 394 config ATALK >> 395 tristate "Appletalk protocol support" >> 396 select LLC >> 397 ---help--- >> 398 AppleTalk is the protocol that Apple computers can use to communicate >> 399 on a network. If your Linux box is connected to such a network and you >> 400 wish to connect to it, say Y. You will need to use the netatalk package >> 401 so that your Linux box can act as a print and file server for Macs as >> 402 well as access AppleTalk printers. Check out >> 403 <http://www.zettabyte.net/netatalk/> on the WWW for details. >> 404 EtherTalk is the name used for AppleTalk over Ethernet and the >> 405 cheaper and slower LocalTalk is AppleTalk over a proprietary Apple >> 406 network using serial links. EtherTalk and LocalTalk are fully >> 407 supported by Linux. >> 408 >> 409 General information about how to connect Linux, Windows machines and >> 410 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>. The >> 411 NET-3-HOWTO, available from >> 412 <http://www.tldp.org/docs.html#howto>, contains valuable >> 413 information as well. >> 414 >> 415 To compile this driver as a module, choose M here: the module will be >> 416 called appletalk. You almost certainly want to compile it as a >> 417 module so you can restart your AppleTalk stack without rebooting >> 418 your machine. I hear that the GNU boycott of Apple is over, so >> 419 even politically correct people are allowed to say Y here. >> 420 >> 421 source "drivers/net/appletalk/Kconfig" >> 422 >> 423 config X25 >> 424 tristate "CCITT X.25 Packet Layer (EXPERIMENTAL)" >> 425 depends on EXPERIMENTAL >> 426 ---help--- >> 427 X.25 is a set of standardized network protocols, similar in scope to >> 428 frame relay; the one physical line from your box to the X.25 network >> 429 entry point can carry several logical point-to-point connections >> 430 (called "virtual circuits") to other computers connected to the X.25 >> 431 network. Governments, banks, and other organizations tend to use it >> 432 to connect to each other or to form Wide Area Networks (WANs). Many >> 433 countries have public X.25 networks. X.25 consists of two >> 434 protocols: the higher level Packet Layer Protocol (PLP) (say Y here >> 435 if you want that) and the lower level data link layer protocol LAPB >> 436 (say Y to "LAPB Data Link Driver" below if you want that). >> 437 >> 438 You can read more about X.25 at <http://www.sangoma.com/x25.htm> and >> 439 <http://www.cisco.com/univercd/data/doc/software/11_0/rpcg/cx25.htm>. >> 440 Information about X.25 for Linux is contained in the files >> 441 <file:Documentation/networking/x25.txt> and >> 442 <file:Documentation/networking/x25-iface.txt>. >> 443 >> 444 One connects to an X.25 network either with a dedicated network card >> 445 using the X.21 protocol (not yet supported by Linux) or one can do >> 446 X.25 over a standard telephone line using an ordinary modem (say Y >> 447 to "X.25 async driver" below) or over Ethernet using an ordinary >> 448 Ethernet card and the LAPB over Ethernet (say Y to "LAPB Data Link >> 449 Driver" and "LAPB over Ethernet driver" below). >> 450 >> 451 To compile this driver as a module, choose M here: the module >> 452 will be called x25. If unsure, say N. >> 453 >> 454 config LAPB >> 455 tristate "LAPB Data Link Driver (EXPERIMENTAL)" >> 456 depends on EXPERIMENTAL >> 457 ---help--- >> 458 Link Access Procedure, Balanced (LAPB) is the data link layer (i.e. >> 459 the lower) part of the X.25 protocol. It offers a reliable >> 460 connection service to exchange data frames with one other host, and >> 461 it is used to transport higher level protocols (mostly X.25 Packet >> 462 Layer, the higher part of X.25, but others are possible as well). >> 463 Usually, LAPB is used with specialized X.21 network cards, but Linux >> 464 currently supports LAPB only over Ethernet connections. If you want >> 465 to use LAPB connections over Ethernet, say Y here and to "LAPB over >> 466 Ethernet driver" below. Read >> 467 <file:Documentation/networking/lapb-module.txt> for technical >> 468 details. >> 469 >> 470 To compile this driver as a module, choose M here: the >> 471 module will be called lapb. If unsure, say N. >> 472 >> 473 config NET_DIVERT >> 474 bool "Frame Diverter (EXPERIMENTAL)" >> 475 depends on EXPERIMENTAL >> 476 ---help--- >> 477 The Frame Diverter allows you to divert packets from the >> 478 network, that are not aimed at the interface receiving it (in >> 479 promisc. mode). Typically, a Linux box setup as an Ethernet bridge >> 480 with the Frames Diverter on, can do some *really* transparent www >> 481 caching using a Squid proxy for example. >> 482 >> 483 This is very useful when you don't want to change your router's >> 484 config (or if you simply don't have access to it). >> 485 >> 486 The other possible usages of diverting Ethernet Frames are >> 487 numberous: >> 488 - reroute smtp traffic to another interface >> 489 - traffic-shape certain network streams >> 490 - transparently proxy smtp connections >> 491 - etc... >> 492 >> 493 For more informations, please refer to: >> 494 <http://diverter.sourceforge.net/> >> 495 <http://perso.wanadoo.fr/magpie/EtherDivert.html> 317 496 318 config XPS !! 497 If unsure, say N. 319 bool << 320 depends on SMP << 321 select SOCK_RX_QUEUE_MAPPING << 322 default y << 323 498 324 config HWBM !! 499 config ECONET 325 bool !! 500 tristate "Acorn Econet/AUN protocols (EXPERIMENTAL)" >> 501 depends on EXPERIMENTAL && INET >> 502 ---help--- >> 503 Econet is a fairly old and slow networking protocol mainly used by >> 504 Acorn computers to access file and print servers. It uses native >> 505 Econet network cards. AUN is an implementation of the higher level >> 506 parts of Econet that runs over ordinary Ethernet connections, on >> 507 top of the UDP packet protocol, which in turn runs on top of the >> 508 Internet protocol IP. >> 509 >> 510 If you say Y here, you can choose with the next two options whether >> 511 to send Econet/AUN traffic over a UDP Ethernet connection or over >> 512 a native Econet network card. >> 513 >> 514 To compile this driver as a module, choose M here: the module >> 515 will be called econet. >> 516 >> 517 config ECONET_AUNUDP >> 518 bool "AUN over UDP" >> 519 depends on ECONET >> 520 help >> 521 Say Y here if you want to send Econet/AUN traffic over a UDP >> 522 connection (UDP is a packet based protocol that runs on top of the >> 523 Internet protocol IP) using an ordinary Ethernet network card. >> 524 >> 525 config ECONET_NATIVE >> 526 bool "Native Econet" >> 527 depends on ECONET >> 528 help >> 529 Say Y here if you have a native Econet network card installed in >> 530 your computer. >> 531 >> 532 config WAN_ROUTER >> 533 tristate "WAN router" >> 534 depends on EXPERIMENTAL >> 535 ---help--- >> 536 Wide Area Networks (WANs), such as X.25, frame relay and leased >> 537 lines, are used to interconnect Local Area Networks (LANs) over vast >> 538 distances with data transfer rates significantly higher than those >> 539 achievable with commonly used asynchronous modem connections. >> 540 Usually, a quite expensive external device called a `WAN router' is >> 541 needed to connect to a WAN. >> 542 >> 543 As an alternative, WAN routing can be built into the Linux kernel. >> 544 With relatively inexpensive WAN interface cards available on the >> 545 market, a perfectly usable router can be built for less than half >> 546 the price of an external router. If you have one of those cards and >> 547 wish to use your Linux box as a WAN router, say Y here and also to >> 548 the WAN driver for your card, below. You will then need the >> 549 wan-tools package which is available from <ftp://ftp.sangoma.com/>. >> 550 Read <file:Documentation/networking/wan-router.txt> for more >> 551 information. 326 552 327 config CGROUP_NET_PRIO !! 553 To compile WAN routing support as a module, choose M here: the 328 bool "Network priority cgroup" !! 554 module will be called wanrouter. 329 depends on CGROUPS << 330 select SOCK_CGROUP_DATA << 331 help << 332 Cgroup subsystem for use in assignin << 333 a per-interface basis. << 334 << 335 config CGROUP_NET_CLASSID << 336 bool "Network classid cgroup" << 337 depends on CGROUPS << 338 select SOCK_CGROUP_DATA << 339 help << 340 Cgroup subsystem for use as general << 341 being used in cls_cgroup and for net << 342 << 343 config NET_RX_BUSY_POLL << 344 bool << 345 default y if !PREEMPT_RT || (PREEMPT_R << 346 << 347 config BQL << 348 bool << 349 prompt "Enable Byte Queue Limits" << 350 depends on SYSFS << 351 select DQL << 352 default y << 353 555 354 config BPF_STREAM_PARSER !! 556 If unsure, say N. 355 bool "enable BPF STREAM_PARSER" !! 557 356 depends on INET !! 558 config NET_FASTROUTE 357 depends on BPF_SYSCALL !! 559 bool "Fast switching (read help!)" 358 depends on CGROUP_BPF !! 560 depends on EXPERIMENTAL 359 select STREAM_PARSER !! 561 ---help--- 360 select NET_SOCK_MSG !! 562 Saying Y here enables direct NIC-to-NIC (NIC = Network Interface 361 help !! 563 Card) data transfers on the local network, which is fast. 362 Enabling this allows a TCP stream pa !! 564 363 BPF_MAP_TYPE_SOCKMAP. !! 565 IMPORTANT NOTE: This option is NOT COMPATIBLE with "Network packet 364 !! 566 filtering" (CONFIG_NETFILTER). Say N here if you say Y there. 365 config NET_FLOW_LIMIT !! 567 366 bool "Net flow limit" !! 568 However, it will work with all options in the "Advanced router" 367 depends on RPS !! 569 section (except for "Use TOS value as routing key" and 368 default y !! 570 "Use FWMARK value as routing key"). 369 help !! 571 370 The network stack has to drop packet !! 572 At the moment, few devices support fast switching (tulip is one of 371 backlog reaches netdev_max_backlog. !! 573 them, a modified 8390 driver can be found at 372 generate the vast majority of load, !! 574 <ftp://ftp.inr.ac.ru/ip-routing/fastroute/fastroute-8390.tar.gz>). 373 maintain capacity for the other flow !! 575 374 with many clients some protection ag !! 576 If unsure, say N. 375 flow that greatly exceeds average wo !! 577 >> 578 config NET_HW_FLOWCONTROL >> 579 bool "Forwarding between high speed interfaces" >> 580 depends on EXPERIMENTAL >> 581 ---help--- >> 582 This option enables NIC (Network Interface Card) hardware throttling >> 583 during periods of extreme congestion. At the moment only a couple >> 584 of device drivers support it (really only one -- tulip, a modified >> 585 8390 driver can be found at >> 586 <ftp://ftp.inr.ac.ru/ip-routing/fastroute/fastroute-8390.tar.gz>). >> 587 >> 588 Really, this option is applicable to any machine attached to a fast >> 589 enough network, and even a 10 Mb NIC is able to kill a not very slow >> 590 box, such as a 120MHz Pentium. >> 591 >> 592 However, do not say Y here if you did not experience any serious >> 593 problems. >> 594 >> 595 >> 596 menu "QoS and/or fair queueing" >> 597 >> 598 config NET_SCHED >> 599 bool "QoS and/or fair queueing" >> 600 ---help--- >> 601 When the kernel has several packets to send out over a network >> 602 device, it has to decide which ones to send first, which ones to >> 603 delay, and which ones to drop. This is the job of the packet >> 604 scheduler, and several different algorithms for how to do this >> 605 "fairly" have been proposed. >> 606 >> 607 If you say N here, you will get the standard packet scheduler, which >> 608 is a FIFO (first come, first served). If you say Y here, you will be >> 609 able to choose from among several alternative algorithms which can >> 610 then be attached to different network devices. This is useful for >> 611 example if some of your network devices are real time devices that >> 612 need a certain minimum data flow rate, or if you need to limit the >> 613 maximum data flow rate for traffic which matches specified criteria. >> 614 This code is considered to be experimental. >> 615 >> 616 To administer these schedulers, you'll need the user-level utilities >> 617 from the package iproute2+tc at <ftp://ftp.inr.ac.ru/ip-routing/>. >> 618 That package also contains some documentation; for more, check out >> 619 <http://snafu.freedom.org/linux2.2/iproute-notes.html>. >> 620 >> 621 This Quality of Service (QoS) support will enable you to use >> 622 Differentiated Services (diffserv) and Resource Reservation Protocol >> 623 (RSVP) on your Linux router if you also say Y to "QoS support", >> 624 "Packet classifier API" and to some classifiers below. Documentation >> 625 and software is at <http://diffserv.sourceforge.net/>. >> 626 >> 627 If you say Y here and to "/proc file system" below, you will be able >> 628 to read status information about packet schedulers from the file >> 629 /proc/net/psched. >> 630 >> 631 The available schedulers are listed in the following questions; you >> 632 can say Y to as many as you like. If unsure, say N now. >> 633 >> 634 source "net/sched/Kconfig" >> 635 >> 636 endmenu 376 637 377 menu "Network testing" 638 menu "Network testing" 378 639 379 config NET_PKTGEN 640 config NET_PKTGEN 380 tristate "Packet Generator (USE WITH C 641 tristate "Packet Generator (USE WITH CAUTION)" 381 depends on INET && PROC_FS !! 642 depends on PROC_FS 382 help !! 643 ---help--- 383 This module will inject preconfigure 644 This module will inject preconfigured packets, at a configurable 384 rate, out of a given interface. It 645 rate, out of a given interface. It is used for network interface 385 stress testing and performance analy 646 stress testing and performance analysis. If you don't understand 386 what was just said, you don't need i 647 what was just said, you don't need it: say N. 387 648 388 Documentation on how to use the pack !! 649 Documentation on how to use the packet generaor can be found 389 at <file:Documentation/networking/pk !! 650 at <file:Documentation/networking/pktgen.txt>. 390 651 391 To compile this code as a module, ch 652 To compile this code as a module, choose M here: the 392 module will be called pktgen. 653 module will be called pktgen. 393 654 394 config NET_DROP_MONITOR << 395 tristate "Network packet drop alerting << 396 depends on INET && TRACEPOINTS << 397 help << 398 This feature provides an alerting se << 399 event that packets are discarded in << 400 are broadcast via netlink socket to << 401 process. If you don't need network << 402 just checking the various proc files << 403 drop statistics, say N here. << 404 << 405 endmenu 655 endmenu 406 656 407 endmenu 657 endmenu 408 658 409 source "net/ax25/Kconfig" !! 659 source "drivers/net/Kconfig" 410 source "net/can/Kconfig" << 411 source "net/bluetooth/Kconfig" << 412 source "net/rxrpc/Kconfig" << 413 source "net/kcm/Kconfig" << 414 source "net/strparser/Kconfig" << 415 source "net/mctp/Kconfig" << 416 << 417 config FIB_RULES << 418 bool << 419 << 420 menuconfig WIRELESS << 421 bool "Wireless" << 422 depends on !S390 << 423 default y << 424 << 425 if WIRELESS << 426 << 427 source "net/wireless/Kconfig" << 428 source "net/mac80211/Kconfig" << 429 << 430 endif # WIRELESS << 431 660 432 source "net/rfkill/Kconfig" !! 661 source "net/ax25/Kconfig" 433 source "net/9p/Kconfig" << 434 source "net/caif/Kconfig" << 435 source "net/ceph/Kconfig" << 436 source "net/nfc/Kconfig" << 437 source "net/psample/Kconfig" << 438 source "net/ife/Kconfig" << 439 << 440 config LWTUNNEL << 441 bool "Network light weight tunnels" << 442 help << 443 This feature provides an infrastruct << 444 tunnels like mpls. There is no netde << 445 weight tunnel endpoint. Tunnel encap << 446 with light weight tunnel state assoc << 447 << 448 config LWTUNNEL_BPF << 449 bool "Execute BPF program as route nex << 450 depends on LWTUNNEL && INET << 451 default y if LWTUNNEL=y << 452 help << 453 Allows to run BPF programs as a next << 454 lookup for incoming and outgoing pac << 455 << 456 config DST_CACHE << 457 bool << 458 default n << 459 << 460 config GRO_CELLS << 461 bool << 462 default n << 463 << 464 config SOCK_VALIDATE_XMIT << 465 bool << 466 << 467 config NET_IEEE8021Q_HELPERS << 468 bool << 469 << 470 config NET_SELFTESTS << 471 def_tristate PHYLIB << 472 depends on PHYLIB && INET << 473 << 474 config NET_SOCK_MSG << 475 bool << 476 default n << 477 help << 478 The NET_SOCK_MSG provides a framewor << 479 ULPs (upper layer modules, e.g. TLS) << 480 with the help of BPF programs. << 481 << 482 config NET_DEVLINK << 483 bool << 484 default n << 485 << 486 config PAGE_POOL << 487 bool << 488 << 489 config PAGE_POOL_STATS << 490 default n << 491 bool "Page pool stats" << 492 depends on PAGE_POOL << 493 help << 494 Enable page pool statistics to track << 495 in page pools. This option incurs ad << 496 and recycle paths and additional mem << 497 These statistics are only available << 498 the driver using the page pool suppo << 499 << 500 If unsure, say N. << 501 662 502 config FAILOVER !! 663 source "net/irda/Kconfig" 503 tristate "Generic failover module" << 504 help << 505 The failover module provides a gener << 506 drivers to register a netdev and a s << 507 instance. The ops are used as event << 508 handle netdev register/unregister/li << 509 on slave pci ethernet devices with t << 510 failover netdev. This enables paravi << 511 VF as an accelerated low latency dat << 512 migration of VMs with direct attache << 513 paravirtual datapath when the VF is << 514 << 515 config ETHTOOL_NETLINK << 516 bool "Netlink interface for ethtool" << 517 select DIMLIB << 518 default y << 519 help << 520 An alternative userspace interface f << 521 netlink. It provides better extensib << 522 e.g. notification messages. << 523 << 524 config NETDEV_ADDR_LIST_TEST << 525 tristate "Unit tests for device addres << 526 default KUNIT_ALL_TESTS << 527 depends on KUNIT << 528 << 529 config NET_TEST << 530 tristate "KUnit tests for networking" << 531 depends on KUNIT << 532 default KUNIT_ALL_TESTS << 533 help << 534 KUnit tests covering core networking << 535 664 536 If unsure, say N. !! 665 source "net/bluetooth/Kconfig" 537 666 538 endif # if NET !! 667 endmenu
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.