633 lines · 20.3 KB · Text
RawDownload
# SPDX-License-Identifier: GPL-2.0-only## Network device configuration# menuconfig NETDEVICES	default y if UML	depends on NET	bool "Network device support"	help	  You can say N here if you don't intend to connect your Linux box to	  any other computer at all. 	  You'll have to say Y if your computer contains a network card that	  you want to use under Linux. If you are going to run SLIP or PPP over	  telephone line or null modem cable you need say Y here. Connecting	  two machines with parallel ports using PLIP needs this, as well as	  AX.25/KISS for sending Internet traffic over amateur radio links. 	  See also "The Linux Network Administrator's Guide" by Olaf Kirch and	  Terry Dawson. Available at <http://www.tldp.org/guides.html>. 	  If unsure, say Y. # All the following symbols are dependent on NETDEVICES - do not repeat# that for each of the symbols.if NETDEVICES config MII	tristate config NET_CORE	default y	bool "Network core driver support"	help	  You can say N here if you do not intend to use any of the	  networking core drivers (i.e. VLAN, bridging, bonding, etc.) if NET_CORE config BONDING	tristate "Bonding driver support"	depends on INET	depends on TLS || TLS_DEVICE=n	help	  Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet	  Channels together. This is called 'Etherchannel' by Cisco,	  'Trunking' by Sun, 802.3ad by the IEEE, and 'Bonding' in Linux. 	  The driver supports multiple bonding modes to allow for both high	  performance and high availability operation. 	  Refer to <file:Documentation/networking/bonding.rst> for more	  information. 	  To compile this driver as a module, choose M here: the module	  will be called bonding. config DUMMY	tristate "Dummy net driver support"	help	  This is essentially a bit-bucket device (i.e. traffic you send to	  this device is consigned into oblivion) with a configurable IP	  address. It is most commonly used in order to make your currently	  inactive SLIP address seem like a real address for local programs.	  If you use SLIP or PPP, you might want to say Y here. It won't	  enlarge your kernel. What a deal. Read about it in the Network	  Administrator's Guide, available from	  <http://www.tldp.org/docs.html#guide>. 	  To compile this driver as a module, choose M here: the module	  will be called dummy. config WIREGUARD	tristate "WireGuard secure network tunnel"	depends on NET && INET	select NET_UDP_TUNNEL	select DST_CACHE	select CRYPTO_LIB_CURVE25519	select CRYPTO_LIB_CHACHA20POLY1305	select CRYPTO_LIB_UTILS	help	  WireGuard is a secure, fast, and easy to use replacement for IPSec	  that uses modern cryptography and clever networking tricks. It's	  designed to be fairly general purpose and abstract enough to fit most	  use cases, while at the same time remaining extremely simple to	  configure. See www.wireguard.com for more info. 	  It's safe to say Y or M here, as the driver is very lightweight and	  is only in use when an administrator chooses to add an interface. config WIREGUARD_DEBUG	bool "Debugging checks and verbose messages"	depends on WIREGUARD	help	  This will write log messages for handshake and other events	  that occur for a WireGuard interface. It will also perform some	  extra validation checks and unit tests at various points. This is	  only useful for debugging. 	  Say N here unless you know what you're doing. config OVPN	tristate "OpenVPN data channel offload"	depends on NET && INET	select DST_CACHE	select NET_UDP_TUNNEL	select CRYPTO	select CRYPTO_AES	select CRYPTO_GCM	select CRYPTO_CHACHA20POLY1305	select STREAM_PARSER	help	  This module enhances the performance of the OpenVPN userspace software	  by offloading the data channel processing to kernelspace. config EQUALIZER	tristate "EQL (serial line load balancing) support"	help	  If you have two serial connections to some other computer (this	  usually requires two modems and two telephone lines) and you use	  SLIP (the protocol for sending Internet traffic over telephone	  lines) or PPP (a better SLIP) on them, you can make them behave like	  one double speed connection using this driver.  Naturally, this has	  to be supported at the other end as well, either with a similar EQL	  Linux driver or with a Livingston Portmaster 2e. 	  Say Y if you want this and read	  <file:Documentation/networking/eql.rst>.  You may also want to read	  section 6.2 of the NET-3-HOWTO, available from	  <http://www.tldp.org/docs.html#howto>. 	  To compile this driver as a module, choose M here: the module	  will be called eql.  If unsure, say N. config NET_FC	bool "Fibre Channel driver support"	depends on SCSI && PCI	help	  Fibre Channel is a high speed serial protocol mainly used to connect	  large storage devices to the computer; it is compatible with and	  intended to replace SCSI. 	  If you intend to use Fibre Channel, you need to have a Fibre channel	  adaptor card in your computer; say Y here and to the driver for your	  adaptor below. You also should have said Y to "SCSI support" and	  "SCSI generic support". config IFB	tristate "Intermediate Functional Block support"	depends on NET_ACT_MIRRED || NFT_FWD_NETDEV	select NET_REDIRECT	help	  This is an intermediate driver that allows sharing of	  resources.	  To compile this driver as a module, choose M here: the module	  will be called ifb.  If you want to use more than one ifb	  device at a time, you need to compile this driver as a module.	  Instead of 'ifb', the devices will then be called 'ifb0',	  'ifb1' etc.	  Look at the iproute2 documentation directory for usage etc source "drivers/net/team/Kconfig" config MACVLAN	tristate "MAC-VLAN support"	help	  This allows one to create virtual interfaces that map packets to	  or from specific MAC addresses to a particular interface. 	  Macvlan devices can be added using the "ip" command from the	  iproute2 package starting with the iproute2-2.6.23 release: 	  "ip link add link <real dev> [ address MAC ] [ NAME ] type macvlan" 	  To compile this driver as a module, choose M here: the module	  will be called macvlan. config MACVTAP	tristate "MAC-VLAN based tap driver"	depends on MACVLAN	depends on INET	select TAP	help	  This adds a specialized tap character device driver that is based	  on the MAC-VLAN network interface, called macvtap. A macvtap device	  can be added in the same way as a macvlan device, using 'type	  macvtap', and then be accessed through the tap user space interface. 	  To compile this driver as a module, choose M here: the module	  will be called macvtap. config IPVLAN_L3S	depends on NETFILTER	depends on IPVLAN	def_bool y	select NET_L3_MASTER_DEV config IPVLAN	tristate "IP-VLAN support"	depends on INET	help	  This allows one to create virtual devices off of a main interface	  and packets will be delivered based on the dest L3 (IPv6/IPv4 addr)	  on packets. All interfaces (including the main interface) share L2	  making it transparent to the connected L2 switch. 	  Ipvlan devices can be added using the "ip" command from the	  iproute2 package starting with the iproute2-3.19 release: 	  "ip link add link <main-dev> [ NAME ] type ipvlan" 	  To compile this driver as a module, choose M here: the module	  will be called ipvlan. config IPVTAP	tristate "IP-VLAN based tap driver"	depends on IPVLAN	depends on INET	select TAP	help	  This adds a specialized tap character device driver that is based	  on the IP-VLAN network interface, called ipvtap. An ipvtap device	  can be added in the same way as a ipvlan device, using 'type	  ipvtap', and then be accessed through the tap user space interface. 	  To compile this driver as a module, choose M here: the module	  will be called ipvtap. config VXLAN	tristate "Virtual eXtensible Local Area Network (VXLAN)"	depends on INET	select NET_UDP_TUNNEL	select GRO_CELLS	help	  This allows one to create vxlan virtual interfaces that provide	  Layer 2 Networks over Layer 3 Networks. VXLAN is often used	  to tunnel virtual network infrastructure in virtualized environments.	  For more information see:	    http://tools.ietf.org/html/draft-mahalingam-dutt-dcops-vxlan-02 	  To compile this driver as a module, choose M here: the module	  will be called vxlan. config GENEVE	tristate "Generic Network Virtualization Encapsulation"	depends on INET	select NET_UDP_TUNNEL	select GRO_CELLS	help	  This allows one to create geneve virtual interfaces that provide	  Layer 2 Networks over Layer 3 Networks. GENEVE is often used	  to tunnel virtual network infrastructure in virtualized environments.	  For more information see:	    http://tools.ietf.org/html/draft-gross-geneve-02 	  To compile this driver as a module, choose M here: the module	  will be called geneve. config BAREUDP	tristate "Bare UDP Encapsulation"	depends on INET	select NET_UDP_TUNNEL	select GRO_CELLS	help	  This adds a bare UDP tunnel module for tunnelling different	  kinds of traffic like MPLS, IP, etc. inside a UDP tunnel. 	  To compile this driver as a module, choose M here: the module	  will be called bareudp. config GTP	tristate "GPRS Tunneling Protocol datapath (GTP-U)"	depends on INET	select NET_UDP_TUNNEL	help	  This allows one to create gtp virtual interfaces that provide	  the GPRS Tunneling Protocol datapath (GTP-U). This tunneling protocol	  is used to prevent subscribers from accessing mobile carrier core	  network infrastructure. This driver requires a userspace software that	  implements the signaling protocol (GTP-C) to update its PDP context	  base, such as OpenGGSN <http://git.osmocom.org/openggsn/). This	  tunneling protocol is implemented according to the GSM TS 09.60 and	  3GPP TS 29.060 standards. 	  To compile this drivers as a module, choose M here: the module	  will be called gtp. config PFCP	tristate "Packet Forwarding Control Protocol (PFCP)"	depends on INET	select NET_UDP_TUNNEL	help	  This allows one to create PFCP virtual interfaces that allows to	  set up software and hardware offload of PFCP packets.	  Note that this module does not support PFCP protocol in the kernel space.	  There is no support for parsing any PFCP messages. 	  To compile this drivers as a module, choose M here: the module	  will be called pfcp. config AMT	tristate "Automatic Multicast Tunneling (AMT)"	depends on INET && IP_MULTICAST	select NET_UDP_TUNNEL	help	  This allows one to create AMT(Automatic Multicast Tunneling)	  virtual interfaces that provide multicast tunneling.	  There are two roles, Gateway, and Relay.	  Gateway Encapsulates IGMP/MLD traffic from listeners to the Relay.	  Gateway Decapsulates multicast traffic from the Relay to Listeners.	  Relay Encapsulates multicast traffic from Sources to Gateway.	  Relay Decapsulates IGMP/MLD traffic from Gateway. 	  To compile this drivers as a module, choose M here: the module	  will be called amt. config MACSEC	tristate "IEEE 802.1AE MAC-level encryption (MACsec)"	select CRYPTO	select CRYPTO_AES	select CRYPTO_GCM	select GRO_CELLS	help	   MACsec is an encryption standard for Ethernet. config NETCONSOLE	tristate "Network console logging support"	depends on PRINTK	help	  If you want to log kernel messages over the network, enable this.	  See <file:Documentation/networking/netconsole.rst> for details. config NETCONSOLE_DYNAMIC	bool "Dynamic reconfiguration of logging targets"	depends on NETCONSOLE && SYSFS && CONFIGFS_FS && \			!(NETCONSOLE=y && CONFIGFS_FS=m)	select PRINTK_EXECUTION_CTX	help	  This option enables the ability to dynamically reconfigure target	  parameters (interface, IP addresses, port numbers, MAC addresses)	  at runtime through a userspace interface exported using configfs.	  See <file:Documentation/networking/netconsole.rst> for details. config NETCONSOLE_EXTENDED_LOG	bool "Set kernel extended message by default"	depends on NETCONSOLE	default n	help	  Set extended log support for netconsole message. If this option is	  set, log messages are transmitted with extended metadata header in a	  format similar to /dev/kmsg.  See	  <file:Documentation/networking/netconsole.rst> for details. config NETCONSOLE_PREPEND_RELEASE	bool "Prepend kernel release version in the message by default"	depends on NETCONSOLE_EXTENDED_LOG	default n	help	  Set kernel release to be prepended to each netconsole message by	  default. If this option is set, the kernel release is prepended into	  the first field of every netconsole message, so, the netconsole	  server/peer can easily identify what kernel release is logging each	  message.  See <file:Documentation/networking/netconsole.rst> for	  details. config NETPOLL	def_bool NETCONSOLE config NET_POLL_CONTROLLER	def_bool NETPOLL config NTB_NETDEV	tristate "Virtual Ethernet over NTB Transport"	depends on NTB_TRANSPORT config RIONET	tristate "RapidIO Ethernet over messaging driver support"	depends on RAPIDIO config RIONET_TX_SIZE	int "Number of outbound queue entries"	depends on RIONET	default "128" config RIONET_RX_SIZE	int "Number of inbound queue entries"	depends on RIONET	default "128" config TUN	tristate "Universal TUN/TAP device driver support"	depends on INET	select CRC32	help	  TUN/TAP provides packet reception and transmission for user space	  programs.  It can be viewed as a simple Point-to-Point or Ethernet	  device, which instead of receiving packets from a physical media,	  receives them from user space program and instead of sending packets	  via physical media writes them to the user space program. 	  When a program opens /dev/net/tun, driver creates and registers	  corresponding net device tunX or tapX.  After a program closed above	  devices, driver will automatically delete tunXX or tapXX device and	  all routes corresponding to it. 	  Please read <file:Documentation/networking/tuntap.rst> for more	  information. 	  To compile this driver as a module, choose M here: the module	  will be called tun. 	  If you don't know what to use this for, you don't need it. config TAP	tristate	help	  This option is selected by any driver implementing tap user space	  interface for a virtual interface to re-use core tap functionality. config TUN_VNET_CROSS_LE	bool "Support for cross-endian vnet headers on little-endian kernels"	default n	help	  This option allows TUN/TAP and MACVTAP device drivers in a	  little-endian kernel to parse vnet headers that come from a	  big-endian legacy virtio device. 	  Userspace programs can control the feature using the TUNSETVNETBE	  and TUNGETVNETBE ioctls. 	  Unless you have a little-endian system hosting a big-endian virtual	  machine with a legacy virtio NIC, you should say N. config VETH	tristate "Virtual ethernet pair device"	select PAGE_POOL	help	  This device is a local ethernet tunnel. Devices are created in pairs.	  When one end receives the packet it appears on its pair and vice	  versa. config VIRTIO_NET	tristate "Virtio network driver"	depends on VIRTIO	select NET_FAILOVER	select DIMLIB	select PAGE_POOL	help	  This is the virtual network driver for virtio.  It can be used with	  QEMU based VMMs (like KVM or Xen).  Say Y or M. config NLMON	tristate "Virtual netlink monitoring device"	help	  This option enables a monitoring net device for netlink skbs. The	  purpose of this is to analyze netlink messages with packet sockets.	  Thus applications like tcpdump will be able to see local netlink	  messages if they tap into the netlink device, record pcaps for further	  diagnostics, etc. This is mostly intended for developers or support	  to debug netlink issues. If unsure, say N. config NETKIT	bool "BPF-programmable network device"	depends on BPF_SYSCALL	help	  The netkit device is a virtual networking device where BPF programs	  can be attached to the device(s) transmission routine in order to	  implement the driver's internal logic. The device can be configured	  to operate in L3 or L2 mode. If unsure, say N. config NET_VRF	tristate "Virtual Routing and Forwarding (Lite)"	depends on IP_MULTIPLE_TABLES	depends on NET_L3_MASTER_DEV	depends on IPV6_MULTIPLE_TABLES || IPV6=n	help	  This option enables the support for mapping interfaces into VRF's. The	  support enables VRF devices. config VSOCKMON	tristate "Virtual vsock monitoring device"	depends on VHOST_VSOCK	help	  This option enables a monitoring net device for vsock sockets. It is	  mostly intended for developers or support to debug vsock issues. If	  unsure, say N. config MHI_NET	tristate "MHI network driver"	depends on MHI_BUS	help	  This is the network driver for MHI bus.  It can be used with	  QCOM based WWAN modems for IP or QMAP/rmnet protocol (like SDX55).	  Say Y or M. endif # NET_CORE config SUNGEM_PHY	tristate

Lines 1–500 of 633.