xref: /linux-6.15/net/bridge/netfilter/Kconfig (revision 6c959fd5)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
21da177e4SLinus Torvalds#
31da177e4SLinus Torvalds# Bridge netfilter configuration
41da177e4SLinus Torvalds#
596518518SPatrick McHardy#
6f5efc696STomasz Bursztykamenuconfig NF_TABLES_BRIDGE
71708803eSPablo Neira	depends on BRIDGE && NETFILTER && NF_TABLES
82a95183aSFlorian Westphal	select NETFILTER_FAMILY_BRIDGE
9dfee0e99SArnd Bergmann	tristate "Ethernet Bridge nf_tables support"
101da177e4SLinus Torvalds
11f5efc696STomasz Bursztykaif NF_TABLES_BRIDGE
1230e103feSwenxu
1330e103feSwenxuconfig NFT_BRIDGE_META
1430e103feSwenxu	tristate "Netfilter nf_table bridge meta support"
1530e103feSwenxu	help
1630e103feSwenxu	  Add support for bridge dedicated meta key.
1730e103feSwenxu
1885f5b308SPablo Neira Ayusoconfig NFT_BRIDGE_REJECT
1985f5b308SPablo Neira Ayuso	tristate "Netfilter nf_tables bridge reject support"
20fa538f7cSJose M. Guisado Gomez	depends on NFT_REJECT
21fd2d6bc4SRandy Dunlap	depends on NF_REJECT_IPV4
22fd2d6bc4SRandy Dunlap	depends on NF_REJECT_IPV6
2385f5b308SPablo Neira Ayuso	help
2485f5b308SPablo Neira Ayuso	  Add support to reject packets.
2585f5b308SPablo Neira Ayuso
26fc2f14f8SPablo Neira Ayusoendif # NF_TABLES_BRIDGE
27fc2f14f8SPablo Neira Ayuso
283c171f49SPablo Neira Ayusoconfig NF_CONNTRACK_BRIDGE
293c171f49SPablo Neira Ayuso	tristate "IPv4/IPV6 bridge connection tracking support"
303c171f49SPablo Neira Ayuso	depends on NF_CONNTRACK
313c171f49SPablo Neira Ayuso	default n
323c171f49SPablo Neira Ayuso	help
333c171f49SPablo Neira Ayuso	  Connection tracking keeps a record of what packets have passed
343c171f49SPablo Neira Ayuso	  through your machine, in order to figure out how they are related
353c171f49SPablo Neira Ayuso	  into connections. This is used to enhance packet filtering via
363c171f49SPablo Neira Ayuso	  stateful policies. Enable this if you want native tracking from
373c171f49SPablo Neira Ayuso	  the bridge. This provides a replacement for the `br_netfilter'
383c171f49SPablo Neira Ayuso	  infrastructure.
393c171f49SPablo Neira Ayuso
403c171f49SPablo Neira Ayuso	  To compile it as a module, choose M here.  If unsure, say N.
413c171f49SPablo Neira Ayuso
427ad26978SFlorian Westphal# old sockopt interface and eval loop
437ad26978SFlorian Westphalconfig BRIDGE_NF_EBTABLES_LEGACY
44*6c959fd5SBreno Leitao	tristate "Legacy EBTABLES support"
45*6c959fd5SBreno Leitao	depends on BRIDGE && NETFILTER_XTABLES
46*6c959fd5SBreno Leitao	default n
47*6c959fd5SBreno Leitao	help
48*6c959fd5SBreno Leitao	 Legacy ebtables packet/frame classifier.
49*6c959fd5SBreno Leitao	 This is not needed if you are using ebtables over nftables
50*6c959fd5SBreno Leitao	 (iptables-nft).
517ad26978SFlorian Westphal
5220f3c56fSJan Engelhardtmenuconfig BRIDGE_NF_EBTABLES
531da177e4SLinus Torvalds	tristate "Ethernet Bridge tables (ebtables) support"
541708803eSPablo Neira	depends on BRIDGE && NETFILTER && NETFILTER_XTABLES
552a95183aSFlorian Westphal	select NETFILTER_FAMILY_BRIDGE
561da177e4SLinus Torvalds	help
571da177e4SLinus Torvalds	  ebtables is a general, extensible frame/packet identification
581da177e4SLinus Torvalds	  framework. Say 'Y' or 'M' here if you want to do Ethernet
591da177e4SLinus Torvalds	  filtering/NAT/brouting on the Ethernet bridge.
6020f3c56fSJan Engelhardt
6120f3c56fSJan Engelhardtif BRIDGE_NF_EBTABLES
6220f3c56fSJan Engelhardt
631da177e4SLinus Torvalds#
641da177e4SLinus Torvalds# tables
651da177e4SLinus Torvalds#
661da177e4SLinus Torvaldsconfig BRIDGE_EBT_BROUTE
671da177e4SLinus Torvalds	tristate "ebt: broute table support"
687ad26978SFlorian Westphal	select BRIDGE_NF_EBTABLES_LEGACY
691da177e4SLinus Torvalds	help
701da177e4SLinus Torvalds	  The ebtables broute table is used to define rules that decide between
711da177e4SLinus Torvalds	  bridging and routing frames, giving Linux the functionality of a
721da177e4SLinus Torvalds	  brouter. See the man page for ebtables(8) and examples on the ebtables
731da177e4SLinus Torvalds	  website.
741da177e4SLinus Torvalds
751da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
761da177e4SLinus Torvalds
771da177e4SLinus Torvaldsconfig BRIDGE_EBT_T_FILTER
781da177e4SLinus Torvalds	tristate "ebt: filter table support"
797ad26978SFlorian Westphal	select BRIDGE_NF_EBTABLES_LEGACY
801da177e4SLinus Torvalds	help
811da177e4SLinus Torvalds	  The ebtables filter table is used to define frame filtering rules at
821da177e4SLinus Torvalds	  local input, forwarding and local output. See the man page for
831da177e4SLinus Torvalds	  ebtables(8).
841da177e4SLinus Torvalds
851da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
861da177e4SLinus Torvalds
871da177e4SLinus Torvaldsconfig BRIDGE_EBT_T_NAT
881da177e4SLinus Torvalds	tristate "ebt: nat table support"
897ad26978SFlorian Westphal	select BRIDGE_NF_EBTABLES_LEGACY
901da177e4SLinus Torvalds	help
911da177e4SLinus Torvalds	  The ebtables nat table is used to define rules that alter the MAC
921da177e4SLinus Torvalds	  source address (MAC SNAT) or the MAC destination address (MAC DNAT).
931da177e4SLinus Torvalds	  See the man page for ebtables(8).
941da177e4SLinus Torvalds
951da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
961da177e4SLinus Torvalds#
971da177e4SLinus Torvalds# matches
981da177e4SLinus Torvalds#
991da177e4SLinus Torvaldsconfig BRIDGE_EBT_802_3
1001da177e4SLinus Torvalds	tristate "ebt: 802.3 filter support"
1011da177e4SLinus Torvalds	help
1021da177e4SLinus Torvalds	  This option adds matching support for 802.3 Ethernet frames.
1031da177e4SLinus Torvalds
1041da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvaldsconfig BRIDGE_EBT_AMONG
1071da177e4SLinus Torvalds	tristate "ebt: among filter support"
1081da177e4SLinus Torvalds	help
1091da177e4SLinus Torvalds	  This option adds the among match, which allows matching the MAC source
1101da177e4SLinus Torvalds	  and/or destination address on a list of addresses. Optionally,
1111da177e4SLinus Torvalds	  MAC/IP address pairs can be matched, f.e. for anti-spoofing rules.
1121da177e4SLinus Torvalds
1131da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1141da177e4SLinus Torvalds
1151da177e4SLinus Torvaldsconfig BRIDGE_EBT_ARP
1161da177e4SLinus Torvalds	tristate "ebt: ARP filter support"
1171da177e4SLinus Torvalds	help
1181da177e4SLinus Torvalds	  This option adds the ARP match, which allows ARP and RARP header field
1191da177e4SLinus Torvalds	  filtering.
1201da177e4SLinus Torvalds
1211da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1221da177e4SLinus Torvalds
1231da177e4SLinus Torvaldsconfig BRIDGE_EBT_IP
1241da177e4SLinus Torvalds	tristate "ebt: IP filter support"
1251da177e4SLinus Torvalds	help
1261da177e4SLinus Torvalds	  This option adds the IP match, which allows basic IP header field
1271da177e4SLinus Torvalds	  filtering.
1281da177e4SLinus Torvalds
1291da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1301da177e4SLinus Torvalds
13193f65158SKuo-lang Tsengconfig BRIDGE_EBT_IP6
13293f65158SKuo-lang Tseng	tristate "ebt: IP6 filter support"
133f586287eSRandy Dunlap	depends on BRIDGE_NF_EBTABLES && IPV6
13493f65158SKuo-lang Tseng	help
13593f65158SKuo-lang Tseng	  This option adds the IP6 match, which allows basic IPV6 header field
13693f65158SKuo-lang Tseng	  filtering.
13793f65158SKuo-lang Tseng
13893f65158SKuo-lang Tseng	  To compile it as a module, choose M here.  If unsure, say N.
13993f65158SKuo-lang Tseng
1401da177e4SLinus Torvaldsconfig BRIDGE_EBT_LIMIT
1411da177e4SLinus Torvalds	tristate "ebt: limit match support"
1421da177e4SLinus Torvalds	help
1431da177e4SLinus Torvalds	  This option adds the limit match, which allows you to control
1441da177e4SLinus Torvalds	  the rate at which a rule can be matched. This match is the
1451da177e4SLinus Torvalds	  equivalent of the iptables limit match.
1461da177e4SLinus Torvalds
1471da177e4SLinus Torvalds	  If you want to compile it as a module, say M here and read
148cd238effSMauro Carvalho Chehab	  <file:Documentation/kbuild/modules.rst>.  If unsure, say `N'.
1491da177e4SLinus Torvalds
1501da177e4SLinus Torvaldsconfig BRIDGE_EBT_MARK
1511da177e4SLinus Torvalds	tristate "ebt: mark filter support"
1521da177e4SLinus Torvalds	help
1531da177e4SLinus Torvalds	  This option adds the mark match, which allows matching frames based on
1541da177e4SLinus Torvalds	  the 'nfmark' value in the frame. This can be set by the mark target.
1551da177e4SLinus Torvalds	  This value is the same as the one used in the iptables mark match and
1561da177e4SLinus Torvalds	  target.
1571da177e4SLinus Torvalds
1581da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1591da177e4SLinus Torvalds
1601da177e4SLinus Torvaldsconfig BRIDGE_EBT_PKTTYPE
1611da177e4SLinus Torvalds	tristate "ebt: packet type filter support"
1621da177e4SLinus Torvalds	help
1631da177e4SLinus Torvalds	  This option adds the packet type match, which allows matching on the
1641da177e4SLinus Torvalds	  type of packet based on its Ethernet "class" (as determined by
1651da177e4SLinus Torvalds	  the generic networking code): broadcast, multicast,
1661da177e4SLinus Torvalds	  for this host alone or for another host.
1671da177e4SLinus Torvalds
1681da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1691da177e4SLinus Torvalds
1701da177e4SLinus Torvaldsconfig BRIDGE_EBT_STP
1711da177e4SLinus Torvalds	tristate "ebt: STP filter support"
1721da177e4SLinus Torvalds	help
1731da177e4SLinus Torvalds	  This option adds the Spanning Tree Protocol match, which
1741da177e4SLinus Torvalds	  allows STP header field filtering.
1751da177e4SLinus Torvalds
1761da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1771da177e4SLinus Torvalds
1781da177e4SLinus Torvaldsconfig BRIDGE_EBT_VLAN
1791da177e4SLinus Torvalds	tristate "ebt: 802.1Q VLAN filter support"
1801da177e4SLinus Torvalds	help
1811da177e4SLinus Torvalds	  This option adds the 802.1Q vlan match, which allows the filtering of
1821da177e4SLinus Torvalds	  802.1Q vlan fields.
1831da177e4SLinus Torvalds
1841da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1851da177e4SLinus Torvalds#
1861da177e4SLinus Torvalds# targets
1871da177e4SLinus Torvalds#
1881da177e4SLinus Torvaldsconfig BRIDGE_EBT_ARPREPLY
1891da177e4SLinus Torvalds	tristate "ebt: arp reply target support"
190eb3f8f5eSAdrian Bunk	depends on BRIDGE_NF_EBTABLES && INET
1911da177e4SLinus Torvalds	help
1921da177e4SLinus Torvalds	  This option adds the arp reply target, which allows
1931da177e4SLinus Torvalds	  automatically sending arp replies to arp requests.
1941da177e4SLinus Torvalds
1951da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
1961da177e4SLinus Torvalds
1971da177e4SLinus Torvaldsconfig BRIDGE_EBT_DNAT
1981da177e4SLinus Torvalds	tristate "ebt: dnat target support"
1991da177e4SLinus Torvalds	help
2001da177e4SLinus Torvalds	  This option adds the MAC DNAT target, which allows altering the MAC
2011da177e4SLinus Torvalds	  destination address of frames.
2021da177e4SLinus Torvalds
2031da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
2041da177e4SLinus Torvalds
2051da177e4SLinus Torvaldsconfig BRIDGE_EBT_MARK_T
2061da177e4SLinus Torvalds	tristate "ebt: mark target support"
2071da177e4SLinus Torvalds	help
2081da177e4SLinus Torvalds	  This option adds the mark target, which allows marking frames by
2091da177e4SLinus Torvalds	  setting the 'nfmark' value in the frame.
2101da177e4SLinus Torvalds	  This value is the same as the one used in the iptables mark match and
2111da177e4SLinus Torvalds	  target.
2121da177e4SLinus Torvalds
2131da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
2141da177e4SLinus Torvalds
2151da177e4SLinus Torvaldsconfig BRIDGE_EBT_REDIRECT
2161da177e4SLinus Torvalds	tristate "ebt: redirect target support"
2171da177e4SLinus Torvalds	help
2181da177e4SLinus Torvalds	  This option adds the MAC redirect target, which allows altering the MAC
2191da177e4SLinus Torvalds	  destination address of a frame to that of the device it arrived on.
2201da177e4SLinus Torvalds
2211da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
2221da177e4SLinus Torvalds
2231da177e4SLinus Torvaldsconfig BRIDGE_EBT_SNAT
2241da177e4SLinus Torvalds	tristate "ebt: snat target support"
2251da177e4SLinus Torvalds	help
2261da177e4SLinus Torvalds	  This option adds the MAC SNAT target, which allows altering the MAC
2271da177e4SLinus Torvalds	  source address of frames.
2281da177e4SLinus Torvalds
2291da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
2301da177e4SLinus Torvalds#
2311da177e4SLinus Torvalds# watchers
2321da177e4SLinus Torvalds#
2331da177e4SLinus Torvaldsconfig BRIDGE_EBT_LOG
2341da177e4SLinus Torvalds	tristate "ebt: log support"
2351da177e4SLinus Torvalds	help
2361da177e4SLinus Torvalds	  This option adds the log watcher, that you can use in any rule
2371da177e4SLinus Torvalds	  in any ebtables table. It records info about the frame header
2381da177e4SLinus Torvalds	  to the syslog.
2391da177e4SLinus Torvalds
2401da177e4SLinus Torvalds	  To compile it as a module, choose M here.  If unsure, say N.
2411da177e4SLinus Torvalds
242e7bfd0a1SPeter Warasinconfig BRIDGE_EBT_NFLOG
243e7bfd0a1SPeter Warasin	tristate "ebt: nflog support"
244e7bfd0a1SPeter Warasin	help
245e7bfd0a1SPeter Warasin	  This option enables the nflog watcher, which allows to LOG
246e7bfd0a1SPeter Warasin	  messages through the netfilter logging API, which can use
247e7bfd0a1SPeter Warasin	  either the old LOG target, the old ULOG target or nfnetlink_log
248e7bfd0a1SPeter Warasin	  as backend.
249e7bfd0a1SPeter Warasin
25058de7862SPatrick McHardy	  This option adds the nflog watcher, that you can use in any rule
251e7bfd0a1SPeter Warasin	  in any ebtables table.
252e7bfd0a1SPeter Warasin
253e7bfd0a1SPeter Warasin	  To compile it as a module, choose M here.  If unsure, say N.
254e7bfd0a1SPeter Warasin
25520f3c56fSJan Engelhardtendif # BRIDGE_NF_EBTABLES
256