Linux Audio

Check our new training course

Linux debugging, profiling, tracing and performance analysis training

Apr 14-17, 2025
Register
Loading...
v6.13.7
  1# SPDX-License-Identifier: GPL-2.0-only
  2#
  3# IP netfilter configuration
  4#
  5
  6menu "IP: Netfilter Configuration"
  7	depends on INET && NETFILTER
  8
  9config NF_DEFRAG_IPV4
 10	tristate
 11	default n
 12
 13# old sockopt interface and eval loop
 14config IP_NF_IPTABLES_LEGACY
 15	tristate "Legacy IP tables support"
 16	default	n
 17	select NETFILTER_XTABLES
 18	help
 19	  iptables is a legacy packet classifier.
 20	  This is not needed if you are using iptables over nftables
 21	  (iptables-nft).
 
 
 
 
 
 
 22
 23config NF_SOCKET_IPV4
 24	tristate "IPv4 socket lookup support"
 25	help
 26	  This option enables the IPv4 socket lookup infrastructure. This is
 27	  is required by the {ip,nf}tables socket match.
 28
 29config NF_TPROXY_IPV4
 30	tristate "IPv4 tproxy support"
 31
 32if NF_TABLES
 33
 34config NF_TABLES_IPV4
 35	bool "IPv4 nf_tables support"
 36	help
 37	  This option enables the IPv4 support for nf_tables.
 38
 39if NF_TABLES_IPV4
 40
 
 
 
 
 
 
 
 
 41config NFT_REJECT_IPV4
 42	select NF_REJECT_IPV4
 43	default NFT_REJECT
 44	tristate
 45
 46config NFT_DUP_IPV4
 47	tristate "IPv4 nf_tables packet duplication support"
 48	depends on !NF_CONNTRACK || NF_CONNTRACK
 49	select NF_DUP_IPV4
 50	help
 51	  This module enables IPv4 packet duplication support for nf_tables.
 52
 53config NFT_FIB_IPV4
 54	select NFT_FIB
 55	tristate "nf_tables fib / ip route lookup support"
 56	help
 57	  This module enables IPv4 FIB lookups, e.g. for reverse path filtering.
 58	  It also allows query of the FIB for the route type, e.g. local, unicast,
 59	  multicast or blackhole.
 60
 61endif # NF_TABLES_IPV4
 62
 63config NF_TABLES_ARP
 64	bool "ARP nf_tables support"
 65	select NETFILTER_FAMILY_ARP
 66	help
 67	  This option enables the ARP support for nf_tables.
 68
 69endif # NF_TABLES
 70
 71config NF_DUP_IPV4
 72	tristate "Netfilter IPv4 packet duplication to alternate destination"
 73	depends on !NF_CONNTRACK || NF_CONNTRACK
 74	help
 75	  This option enables the nf_dup_ipv4 core, which duplicates an IPv4
 76	  packet to be rerouted to another destination.
 77
 78config NF_LOG_ARP
 79	tristate "ARP packet logging"
 80	default m if NETFILTER_ADVANCED=n
 81	select NF_LOG_SYSLOG
 82	help
 83	This is a backwards-compat option for the user's convenience
 84	(e.g. when running oldconfig). It selects CONFIG_NF_LOG_SYSLOG.
 85
 86config NF_LOG_IPV4
 87	tristate "IPv4 packet logging"
 88	default m if NETFILTER_ADVANCED=n
 89	select NF_LOG_SYSLOG
 90	help
 91	This is a backwards-compat option for the user's convenience
 92	(e.g. when running oldconfig). It selects CONFIG_NF_LOG_SYSLOG.
 93
 94config NF_REJECT_IPV4
 95	tristate "IPv4 packet rejection"
 96	default m if NETFILTER_ADVANCED=n
 97
 98if NF_NAT
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 99config NF_NAT_SNMP_BASIC
100	tristate "Basic SNMP-ALG support"
101	depends on NF_CONNTRACK_SNMP
102	depends on NETFILTER_ADVANCED
103	default NF_NAT && NF_CONNTRACK_SNMP
104	select ASN1
105	help
106
107	  This module implements an Application Layer Gateway (ALG) for
108	  SNMP payloads.  In conjunction with NAT, it allows a network
109	  management system to access multiple private networks with
110	  conflicting addresses.  It works by modifying IP addresses
111	  inside SNMP payloads to match IP-layer NAT mapping.
112
113	  This is the "basic" form of SNMP-ALG, as described in RFC 2962
114
115	  To compile it as a module, choose M here.  If unsure, say N.
116
 
 
 
 
117config NF_NAT_PPTP
118	tristate
119	depends on NF_CONNTRACK
120	default NF_CONNTRACK_PPTP
 
121
122config NF_NAT_H323
123	tristate
124	depends on NF_CONNTRACK
125	default NF_CONNTRACK_H323
126
127endif # NF_NAT
128
129config IP_NF_IPTABLES
130	tristate "IP tables support (required for filtering/masq/NAT)"
131	default m if NETFILTER_ADVANCED=n
132	select NETFILTER_XTABLES
133	help
134	  iptables is a general, extensible packet identification framework.
135	  The packet filtering and full NAT (masquerading, port forwarding,
136	  etc) subsystems now use this: say `Y' or `M' here if you want to use
137	  either of those.
138
139	  To compile it as a module, choose M here.  If unsure, say N.
140
141if IP_NF_IPTABLES
142
143# The matches.
144config IP_NF_MATCH_AH
145	tristate '"ah" match support'
146	depends on NETFILTER_ADVANCED
147	help
148	  This match extension allows you to match a range of SPIs
149	  inside AH header of IPSec packets.
150
151	  To compile it as a module, choose M here.  If unsure, say N.
152
153config IP_NF_MATCH_ECN
154	tristate '"ecn" match support'
155	depends on NETFILTER_ADVANCED
156	select NETFILTER_XT_MATCH_ECN
157	help
158	This is a backwards-compat option for the user's convenience
159	(e.g. when running oldconfig). It selects
160	CONFIG_NETFILTER_XT_MATCH_ECN.
161
162config IP_NF_MATCH_RPFILTER
163	tristate '"rpfilter" reverse path filter match support'
164	depends on NETFILTER_ADVANCED
165	depends on IP_NF_MANGLE || IP_NF_RAW || NFT_COMPAT
166	help
167	  This option allows you to match packets whose replies would
168	  go out via the interface the packet came in.
169
170	  To compile it as a module, choose M here.  If unsure, say N.
171	  The module will be called ipt_rpfilter.
172
173config IP_NF_MATCH_TTL
174	tristate '"ttl" match support'
175	depends on NETFILTER_ADVANCED
176	select NETFILTER_XT_MATCH_HL
177	help
178	This is a backwards-compat option for the user's convenience
179	(e.g. when running oldconfig). It selects
180	CONFIG_NETFILTER_XT_MATCH_HL.
181
182# `filter', generic and specific targets
183config IP_NF_FILTER
184	tristate "Packet filtering"
185	default m if NETFILTER_ADVANCED=n
186	select IP_NF_IPTABLES_LEGACY
187	help
188	  Packet filtering defines a table `filter', which has a series of
189	  rules for simple packet filtering at local input, forwarding and
190	  local output.  See the man page for iptables(8).
191
192	  To compile it as a module, choose M here.  If unsure, say N.
193
194config IP_NF_TARGET_REJECT
195	tristate "REJECT target support"
196	depends on IP_NF_FILTER || NFT_COMPAT
197	select NF_REJECT_IPV4
198	default m if NETFILTER_ADVANCED=n
199	help
200	  The REJECT target allows a filtering rule to specify that an ICMP
201	  error should be issued in response to an incoming packet, rather
202	  than silently being dropped.
203
204	  To compile it as a module, choose M here.  If unsure, say N.
205
206config IP_NF_TARGET_SYNPROXY
207	tristate "SYNPROXY target support"
208	depends on NF_CONNTRACK && NETFILTER_ADVANCED
209	select NETFILTER_SYNPROXY
210	select SYN_COOKIES
211	help
212	  The SYNPROXY target allows you to intercept TCP connections and
213	  establish them using syncookies before they are passed on to the
214	  server. This allows to avoid conntrack and server resource usage
215	  during SYN-flood attacks.
216
217	  To compile it as a module, choose M here. If unsure, say N.
218
219# NAT + specific targets: nf_conntrack
220config IP_NF_NAT
221	tristate "iptables NAT support"
222	depends on NF_CONNTRACK
223	default m if NETFILTER_ADVANCED=n
224	select NF_NAT
 
225	select NETFILTER_XT_NAT
226	select IP_NF_IPTABLES_LEGACY
227	help
228	  This enables the `nat' table in iptables. This allows masquerading,
229	  port forwarding and other forms of full Network Address Port
230	  Translation.
231
232	  To compile it as a module, choose M here.  If unsure, say N.
233
234if IP_NF_NAT
235
236config IP_NF_TARGET_MASQUERADE
237	tristate "MASQUERADE target support"
238	select NETFILTER_XT_TARGET_MASQUERADE
 
239	help
240	  This is a backwards-compat option for the user's convenience
241	  (e.g. when running oldconfig). It selects NETFILTER_XT_TARGET_MASQUERADE.
 
 
 
 
 
242
243config IP_NF_TARGET_NETMAP
244	tristate "NETMAP target support"
245	depends on NETFILTER_ADVANCED
246	select NETFILTER_XT_TARGET_NETMAP
247	help
248	This is a backwards-compat option for the user's convenience
249	(e.g. when running oldconfig). It selects
250	CONFIG_NETFILTER_XT_TARGET_NETMAP.
251
252config IP_NF_TARGET_REDIRECT
253	tristate "REDIRECT target support"
254	depends on NETFILTER_ADVANCED
255	select NETFILTER_XT_TARGET_REDIRECT
256	help
257	This is a backwards-compat option for the user's convenience
258	(e.g. when running oldconfig). It selects
259	CONFIG_NETFILTER_XT_TARGET_REDIRECT.
260
261endif # IP_NF_NAT
262
263# mangle + specific targets
264config IP_NF_MANGLE
265	tristate "Packet mangling"
266	default m if NETFILTER_ADVANCED=n
267	select IP_NF_IPTABLES_LEGACY
268	help
269	  This option adds a `mangle' table to iptables: see the man page for
270	  iptables(8).  This table is used for various packet alterations
271	  which can effect how the packet is routed.
272
273	  To compile it as a module, choose M here.  If unsure, say N.
274
 
 
 
 
 
 
 
 
 
 
 
 
 
275config IP_NF_TARGET_ECN
276	tristate "ECN target support"
277	depends on IP_NF_MANGLE || NFT_COMPAT
278	depends on NETFILTER_ADVANCED
279	help
280	  This option adds a `ECN' target, which can be used in the iptables mangle
281	  table.
282
283	  You can use this target to remove the ECN bits from the IPv4 header of
284	  an IP packet.  This is particularly useful, if you need to work around
285	  existing ECN blackholes on the internet, but don't want to disable
286	  ECN support in general.
287
288	  To compile it as a module, choose M here.  If unsure, say N.
289
290config IP_NF_TARGET_TTL
291	tristate '"TTL" target support'
292	depends on NETFILTER_ADVANCED && IP_NF_MANGLE
293	select NETFILTER_XT_TARGET_HL
294	help
295	This is a backwards-compatible option for the user's convenience
296	(e.g. when running oldconfig). It selects
297	CONFIG_NETFILTER_XT_TARGET_HL.
298
299# raw + specific targets
300config IP_NF_RAW
301	tristate  'raw table support (required for NOTRACK/TRACE)'
302	select IP_NF_IPTABLES_LEGACY
303	help
304	  This option adds a `raw' table to iptables. This table is the very
305	  first in the netfilter framework and hooks in at the PREROUTING
306	  and OUTPUT chains.
307
308	  If you want to compile it as a module, say M here and read
309	  <file:Documentation/kbuild/modules.rst>.  If unsure, say `N'.
310
311# security table for MAC policy
312config IP_NF_SECURITY
313	tristate "Security table"
314	depends on SECURITY
315	depends on NETFILTER_ADVANCED
316	select IP_NF_IPTABLES_LEGACY
317	help
318	  This option adds a `security' table to iptables, for use
319	  with Mandatory Access Control (MAC) policy.
320
321	  If unsure, say N.
322
323endif # IP_NF_IPTABLES
324
325# ARP tables
326config IP_NF_ARPTABLES
327	tristate "Legacy ARPTABLES support"
328	depends on NETFILTER_XTABLES
329	default n
330	help
331	  arptables is a legacy packet classifier.
332	  This is not needed if you are using arptables over nftables
333	  (iptables-nft).
334
335config NFT_COMPAT_ARP
336	tristate
337	depends on NF_TABLES_ARP && NFT_COMPAT
338	default m if NFT_COMPAT=m
339	default y if NFT_COMPAT=y
340
341config IP_NF_ARPFILTER
342	tristate "arptables-legacy packet filtering support"
343	select IP_NF_ARPTABLES
344	select NETFILTER_FAMILY_ARP
345	depends on NETFILTER_XTABLES
346	help
347	  ARP packet filtering defines a table `filter', which has a series of
348	  rules for simple ARP packet filtering at local input and
349	  local output.  This is only needed for arptables-legacy(8).
350	  Neither arptables-nft nor nftables need this to work.
351
352	  To compile it as a module, choose M here.  If unsure, say N.
353
354config IP_NF_ARP_MANGLE
355	tristate "ARP payload mangling"
356	depends on IP_NF_ARPTABLES || NFT_COMPAT_ARP
357	help
358	  Allows altering the ARP packet payload: source and destination
359	  hardware and network addresses.
360
361	  This option is needed by both arptables-legacy and arptables-nft.
362	  It is not used by nftables.
363
364endmenu
365
v4.10.11
 
  1#
  2# IP netfilter configuration
  3#
  4
  5menu "IP: Netfilter Configuration"
  6	depends on INET && NETFILTER
  7
  8config NF_DEFRAG_IPV4
  9	tristate
 10	default n
 11
 12config NF_CONNTRACK_IPV4
 13	tristate "IPv4 connection tracking support (required for NAT)"
 14	depends on NF_CONNTRACK
 15	default m if NETFILTER_ADVANCED=n
 16	select NF_DEFRAG_IPV4
 17	---help---
 18	  Connection tracking keeps a record of what packets have passed
 19	  through your machine, in order to figure out how they are related
 20	  into connections.
 21
 22	  This is IPv4 support on Layer 3 independent connection tracking.
 23	  Layer 3 independent connection tracking is experimental scheme
 24	  which generalize ip_conntrack to support other layer 3 protocols.
 25
 26	  To compile it as a module, choose M here.  If unsure, say N.
 27
 28config NF_SOCKET_IPV4
 29	tristate "IPv4 socket lookup support"
 30	help
 31	  This option enables the IPv4 socket lookup infrastructure. This is
 32	  is required by the iptables socket match.
 
 
 
 33
 34if NF_TABLES
 35
 36config NF_TABLES_IPV4
 37	tristate "IPv4 nf_tables support"
 38	help
 39	  This option enables the IPv4 support for nf_tables.
 40
 41if NF_TABLES_IPV4
 42
 43config NFT_CHAIN_ROUTE_IPV4
 44	tristate "IPv4 nf_tables route chain support"
 45	help
 46	  This option enables the "route" chain for IPv4 in nf_tables. This
 47	  chain type is used to force packet re-routing after mangling header
 48	  fields such as the source, destination, type of service and
 49	  the packet mark.
 50
 51config NFT_REJECT_IPV4
 52	select NF_REJECT_IPV4
 53	default NFT_REJECT
 54	tristate
 55
 56config NFT_DUP_IPV4
 57	tristate "IPv4 nf_tables packet duplication support"
 58	depends on !NF_CONNTRACK || NF_CONNTRACK
 59	select NF_DUP_IPV4
 60	help
 61	  This module enables IPv4 packet duplication support for nf_tables.
 62
 63config NFT_FIB_IPV4
 64	select NFT_FIB
 65	tristate "nf_tables fib / ip route lookup support"
 66	help
 67	  This module enables IPv4 FIB lookups, e.g. for reverse path filtering.
 68	  It also allows query of the FIB for the route type, e.g. local, unicast,
 69	  multicast or blackhole.
 70
 71endif # NF_TABLES_IPV4
 72
 73config NF_TABLES_ARP
 74	tristate "ARP nf_tables support"
 
 75	help
 76	  This option enables the ARP support for nf_tables.
 77
 78endif # NF_TABLES
 79
 80config NF_DUP_IPV4
 81	tristate "Netfilter IPv4 packet duplication to alternate destination"
 82	depends on !NF_CONNTRACK || NF_CONNTRACK
 83	help
 84	  This option enables the nf_dup_ipv4 core, which duplicates an IPv4
 85	  packet to be rerouted to another destination.
 86
 87config NF_LOG_ARP
 88	tristate "ARP packet logging"
 89	default m if NETFILTER_ADVANCED=n
 90	select NF_LOG_COMMON
 
 
 
 91
 92config NF_LOG_IPV4
 93	tristate "IPv4 packet logging"
 94	default m if NETFILTER_ADVANCED=n
 95	select NF_LOG_COMMON
 
 
 
 96
 97config NF_REJECT_IPV4
 98	tristate "IPv4 packet rejection"
 99	default m if NETFILTER_ADVANCED=n
100
101config NF_NAT_IPV4
102	tristate "IPv4 NAT"
103	depends on NF_CONNTRACK_IPV4
104	default m if NETFILTER_ADVANCED=n
105	select NF_NAT
106	help
107	  The IPv4 NAT option allows masquerading, port forwarding and other
108	  forms of full Network Address Port Translation. This can be
109	  controlled by iptables or nft.
110
111if NF_NAT_IPV4
112
113config NFT_CHAIN_NAT_IPV4
114	depends on NF_TABLES_IPV4
115	tristate "IPv4 nf_tables nat chain support"
116	help
117	  This option enables the "nat" chain for IPv4 in nf_tables. This
118	  chain type is used to perform Network Address Translation (NAT)
119	  packet transformations such as the source, destination address and
120	  source and destination ports.
121
122config NF_NAT_MASQUERADE_IPV4
123	tristate "IPv4 masquerade support"
124	help
125	  This is the kernel functionality to provide NAT in the masquerade
126	  flavour (automatic source address selection).
127
128config NFT_MASQ_IPV4
129	tristate "IPv4 masquerading support for nf_tables"
130	depends on NF_TABLES_IPV4
131	depends on NFT_MASQ
132	select NF_NAT_MASQUERADE_IPV4
133	help
134	  This is the expression that provides IPv4 masquerading support for
135	  nf_tables.
136
137config NFT_REDIR_IPV4
138	tristate "IPv4 redirect support for nf_tables"
139	depends on NF_TABLES_IPV4
140	depends on NFT_REDIR
141	select NF_NAT_REDIRECT
142	help
143	  This is the expression that provides IPv4 redirect support for
144	  nf_tables.
145
146config NF_NAT_SNMP_BASIC
147	tristate "Basic SNMP-ALG support"
148	depends on NF_CONNTRACK_SNMP
149	depends on NETFILTER_ADVANCED
150	default NF_NAT && NF_CONNTRACK_SNMP
151	---help---
 
152
153	  This module implements an Application Layer Gateway (ALG) for
154	  SNMP payloads.  In conjunction with NAT, it allows a network
155	  management system to access multiple private networks with
156	  conflicting addresses.  It works by modifying IP addresses
157	  inside SNMP payloads to match IP-layer NAT mapping.
158
159	  This is the "basic" form of SNMP-ALG, as described in RFC 2962
160
161	  To compile it as a module, choose M here.  If unsure, say N.
162
163config NF_NAT_PROTO_GRE
164	tristate
165	depends on NF_CT_PROTO_GRE
166
167config NF_NAT_PPTP
168	tristate
169	depends on NF_CONNTRACK
170	default NF_CONNTRACK_PPTP
171	select NF_NAT_PROTO_GRE
172
173config NF_NAT_H323
174	tristate
175	depends on NF_CONNTRACK
176	default NF_CONNTRACK_H323
177
178endif # NF_NAT_IPV4
179
180config IP_NF_IPTABLES
181	tristate "IP tables support (required for filtering/masq/NAT)"
182	default m if NETFILTER_ADVANCED=n
183	select NETFILTER_XTABLES
184	help
185	  iptables is a general, extensible packet identification framework.
186	  The packet filtering and full NAT (masquerading, port forwarding,
187	  etc) subsystems now use this: say `Y' or `M' here if you want to use
188	  either of those.
189
190	  To compile it as a module, choose M here.  If unsure, say N.
191
192if IP_NF_IPTABLES
193
194# The matches.
195config IP_NF_MATCH_AH
196	tristate '"ah" match support'
197	depends on NETFILTER_ADVANCED
198	help
199	  This match extension allows you to match a range of SPIs
200	  inside AH header of IPSec packets.
201
202	  To compile it as a module, choose M here.  If unsure, say N.
203
204config IP_NF_MATCH_ECN
205	tristate '"ecn" match support'
206	depends on NETFILTER_ADVANCED
207	select NETFILTER_XT_MATCH_ECN
208	---help---
209	This is a backwards-compat option for the user's convenience
210	(e.g. when running oldconfig). It selects
211	CONFIG_NETFILTER_XT_MATCH_ECN.
212
213config IP_NF_MATCH_RPFILTER
214	tristate '"rpfilter" reverse path filter match support'
215	depends on NETFILTER_ADVANCED
216	depends on IP_NF_MANGLE || IP_NF_RAW
217	---help---
218	  This option allows you to match packets whose replies would
219	  go out via the interface the packet came in.
220
221	  To compile it as a module, choose M here.  If unsure, say N.
222	  The module will be called ipt_rpfilter.
223
224config IP_NF_MATCH_TTL
225	tristate '"ttl" match support'
226	depends on NETFILTER_ADVANCED
227	select NETFILTER_XT_MATCH_HL
228	---help---
229	This is a backwards-compat option for the user's convenience
230	(e.g. when running oldconfig). It selects
231	CONFIG_NETFILTER_XT_MATCH_HL.
232
233# `filter', generic and specific targets
234config IP_NF_FILTER
235	tristate "Packet filtering"
236	default m if NETFILTER_ADVANCED=n
 
237	help
238	  Packet filtering defines a table `filter', which has a series of
239	  rules for simple packet filtering at local input, forwarding and
240	  local output.  See the man page for iptables(8).
241
242	  To compile it as a module, choose M here.  If unsure, say N.
243
244config IP_NF_TARGET_REJECT
245	tristate "REJECT target support"
246	depends on IP_NF_FILTER
247	select NF_REJECT_IPV4
248	default m if NETFILTER_ADVANCED=n
249	help
250	  The REJECT target allows a filtering rule to specify that an ICMP
251	  error should be issued in response to an incoming packet, rather
252	  than silently being dropped.
253
254	  To compile it as a module, choose M here.  If unsure, say N.
255
256config IP_NF_TARGET_SYNPROXY
257	tristate "SYNPROXY target support"
258	depends on NF_CONNTRACK && NETFILTER_ADVANCED
259	select NETFILTER_SYNPROXY
260	select SYN_COOKIES
261	help
262	  The SYNPROXY target allows you to intercept TCP connections and
263	  establish them using syncookies before they are passed on to the
264	  server. This allows to avoid conntrack and server resource usage
265	  during SYN-flood attacks.
266
267	  To compile it as a module, choose M here. If unsure, say N.
268
269# NAT + specific targets: nf_conntrack
270config IP_NF_NAT
271	tristate "iptables NAT support"
272	depends on NF_CONNTRACK_IPV4
273	default m if NETFILTER_ADVANCED=n
274	select NF_NAT
275	select NF_NAT_IPV4
276	select NETFILTER_XT_NAT
 
277	help
278	  This enables the `nat' table in iptables. This allows masquerading,
279	  port forwarding and other forms of full Network Address Port
280	  Translation.
281
282	  To compile it as a module, choose M here.  If unsure, say N.
283
284if IP_NF_NAT
285
286config IP_NF_TARGET_MASQUERADE
287	tristate "MASQUERADE target support"
288	select NF_NAT_MASQUERADE_IPV4
289	default m if NETFILTER_ADVANCED=n
290	help
291	  Masquerading is a special case of NAT: all outgoing connections are
292	  changed to seem to come from a particular interface's address, and
293	  if the interface goes down, those connections are lost.  This is
294	  only useful for dialup accounts with dynamic IP address (ie. your IP
295	  address will be different on next dialup).
296
297	  To compile it as a module, choose M here.  If unsure, say N.
298
299config IP_NF_TARGET_NETMAP
300	tristate "NETMAP target support"
301	depends on NETFILTER_ADVANCED
302	select NETFILTER_XT_TARGET_NETMAP
303	---help---
304	This is a backwards-compat option for the user's convenience
305	(e.g. when running oldconfig). It selects
306	CONFIG_NETFILTER_XT_TARGET_NETMAP.
307
308config IP_NF_TARGET_REDIRECT
309	tristate "REDIRECT target support"
310	depends on NETFILTER_ADVANCED
311	select NETFILTER_XT_TARGET_REDIRECT
312	---help---
313	This is a backwards-compat option for the user's convenience
314	(e.g. when running oldconfig). It selects
315	CONFIG_NETFILTER_XT_TARGET_REDIRECT.
316
317endif # IP_NF_NAT
318
319# mangle + specific targets
320config IP_NF_MANGLE
321	tristate "Packet mangling"
322	default m if NETFILTER_ADVANCED=n
 
323	help
324	  This option adds a `mangle' table to iptables: see the man page for
325	  iptables(8).  This table is used for various packet alterations
326	  which can effect how the packet is routed.
327
328	  To compile it as a module, choose M here.  If unsure, say N.
329
330config IP_NF_TARGET_CLUSTERIP
331	tristate "CLUSTERIP target support"
332	depends on IP_NF_MANGLE
333	depends on NF_CONNTRACK_IPV4
334	depends on NETFILTER_ADVANCED
335	select NF_CONNTRACK_MARK
336	help
337	  The CLUSTERIP target allows you to build load-balancing clusters of
338	  network servers without having a dedicated load-balancing
339	  router/server/switch.
340	
341	  To compile it as a module, choose M here.  If unsure, say N.
342
343config IP_NF_TARGET_ECN
344	tristate "ECN target support"
345	depends on IP_NF_MANGLE
346	depends on NETFILTER_ADVANCED
347	---help---
348	  This option adds a `ECN' target, which can be used in the iptables mangle
349	  table.  
350
351	  You can use this target to remove the ECN bits from the IPv4 header of
352	  an IP packet.  This is particularly useful, if you need to work around
353	  existing ECN blackholes on the internet, but don't want to disable
354	  ECN support in general.
355
356	  To compile it as a module, choose M here.  If unsure, say N.
357
358config IP_NF_TARGET_TTL
359	tristate '"TTL" target support'
360	depends on NETFILTER_ADVANCED && IP_NF_MANGLE
361	select NETFILTER_XT_TARGET_HL
362	---help---
363	This is a backwards-compatible option for the user's convenience
364	(e.g. when running oldconfig). It selects
365	CONFIG_NETFILTER_XT_TARGET_HL.
366
367# raw + specific targets
368config IP_NF_RAW
369	tristate  'raw table support (required for NOTRACK/TRACE)'
 
370	help
371	  This option adds a `raw' table to iptables. This table is the very
372	  first in the netfilter framework and hooks in at the PREROUTING
373	  and OUTPUT chains.
374	
375	  If you want to compile it as a module, say M here and read
376	  <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
377
378# security table for MAC policy
379config IP_NF_SECURITY
380	tristate "Security table"
381	depends on SECURITY
382	depends on NETFILTER_ADVANCED
 
383	help
384	  This option adds a `security' table to iptables, for use
385	  with Mandatory Access Control (MAC) policy.
386	 
387	  If unsure, say N.
388
389endif # IP_NF_IPTABLES
390
391# ARP tables
392config IP_NF_ARPTABLES
393	tristate "ARP tables support"
394	select NETFILTER_XTABLES
395	depends on NETFILTER_ADVANCED
396	help
397	  arptables is a general, extensible packet identification framework.
398	  The ARP packet filtering and mangling (manipulation)subsystems
399	  use this: say Y or M here if you want to use either of those.
400
401	  To compile it as a module, choose M here.  If unsure, say N.
402
403if IP_NF_ARPTABLES
 
 
404
405config IP_NF_ARPFILTER
406	tristate "ARP packet filtering"
 
 
 
407	help
408	  ARP packet filtering defines a table `filter', which has a series of
409	  rules for simple ARP packet filtering at local input and
410	  local output.  On a bridge, you can also specify filtering rules
411	  for forwarded ARP packets. See the man page for arptables(8).
412
413	  To compile it as a module, choose M here.  If unsure, say N.
414
415config IP_NF_ARP_MANGLE
416	tristate "ARP payload mangling"
 
417	help
418	  Allows altering the ARP packet payload: source and destination
419	  hardware and network addresses.
420
421endif # IP_NF_ARPTABLES
 
422
423endmenu
424