blob: 585590f16f8cace98a4c8afa7cd07f03c99af06f [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# IP netfilter configuration
3#
4
Patrick McHardy8ce22fc2008-01-14 23:31:36 -08005menu "IPv6: Netfilter Configuration"
6 depends on INET && IPV6 && NETFILTER
Linus Torvalds1da177e2005-04-16 15:20:36 -07007
KOVACS Krisztianf6318e52010-10-24 23:38:32 +00008config NF_DEFRAG_IPV6
9 tristate
10 default n
11
Yasuyuki Kozakai9bdf87d2005-11-14 15:26:58 -080012config NF_CONNTRACK_IPV6
Patrick McHardy8ce22fc2008-01-14 23:31:36 -080013 tristate "IPv6 connection tracking support"
14 depends on INET && IPV6 && NF_CONNTRACK
Patrick McHardy33b8e772007-12-17 22:47:05 -080015 default m if NETFILTER_ADVANCED=n
KOVACS Krisztianf6318e52010-10-24 23:38:32 +000016 select NF_DEFRAG_IPV6
Yasuyuki Kozakai9bdf87d2005-11-14 15:26:58 -080017 ---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 IPv6 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
Patrick McHardy58a317f2012-08-26 19:14:12 +020028config NF_NAT_IPV6
29 tristate "IPv6 NAT"
30 depends on NF_CONNTRACK_IPV6
31 depends on NETFILTER_ADVANCED
32 select NF_NAT
33 help
34 The IPv6 NAT option allows masquerading, port forwarding and other
35 forms of full Network Address Port Translation. It is controlled by
36 the `nat' table in ip6tables, see the man page for ip6tables(8).
37
38 To compile it as a module, choose M here. If unsure, say N.
39
Linus Torvalds1da177e2005-04-16 15:20:36 -070040config IP6_NF_IPTABLES
Patrick McHardy844dc7c2006-10-30 15:12:16 -080041 tristate "IP6 tables support (required for filtering)"
Patrick McHardy8ce22fc2008-01-14 23:31:36 -080042 depends on INET && IPV6
Patrick McHardya3c941b2007-02-12 11:15:02 -080043 select NETFILTER_XTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080044 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -070045 help
46 ip6tables is a general, extensible packet identification framework.
47 Currently only the packet filtering and packet mangling subsystem
48 for IPv6 use this, but connection tracking is going to follow.
49 Say 'Y' or 'M' here if you want to use either of those.
50
51 To compile it as a module, choose M here. If unsure, say N.
52
Jan Engelhardtc2df73d2008-10-08 11:35:18 +020053if IP6_NF_IPTABLES
54
Linus Torvalds1da177e2005-04-16 15:20:36 -070055# The simple matches.
Jan Engelhardtaba0d342008-10-08 11:35:17 +020056config IP6_NF_MATCH_AH
57 tristate '"ah" match support'
Patrick McHardy33b8e772007-12-17 22:47:05 -080058 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070059 help
Jan Engelhardtaba0d342008-10-08 11:35:17 +020060 This module allows one to match AH packets.
61
62 To compile it as a module, choose M here. If unsure, say N.
63
64config IP6_NF_MATCH_EUI64
65 tristate '"eui64" address check'
Jan Engelhardtaba0d342008-10-08 11:35:17 +020066 depends on NETFILTER_ADVANCED
67 help
68 This module performs checking on the IPv6 source address
69 Compares the last 64 bits with the EUI64 (delivered
70 from the MAC address) address
71
72 To compile it as a module, choose M here. If unsure, say N.
73
74config IP6_NF_MATCH_FRAG
75 tristate '"frag" Fragmentation header match support'
Jan Engelhardtaba0d342008-10-08 11:35:17 +020076 depends on NETFILTER_ADVANCED
77 help
78 frag matching allows you to match packets based on the fragmentation
Linus Torvalds1da177e2005-04-16 15:20:36 -070079 header of the packet.
80
81 To compile it as a module, choose M here. If unsure, say N.
82
83config IP6_NF_MATCH_OPTS
Jan Engelhardt77d73582008-10-08 11:35:17 +020084 tristate '"hbh" hop-by-hop and "dst" opts header match support'
Patrick McHardy33b8e772007-12-17 22:47:05 -080085 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070086 help
87 This allows one to match packets based on the hop-by-hop
88 and destination options headers of a packet.
89
90 To compile it as a module, choose M here. If unsure, say N.
91
Jan Engelhardt43233622009-02-19 11:16:03 +010092config IP6_NF_MATCH_HL
93 tristate '"hl" hoplimit match support'
94 depends on NETFILTER_ADVANCED
95 select NETFILTER_XT_MATCH_HL
96 ---help---
97 This is a backwards-compat option for the user's convenience
98 (e.g. when running oldconfig). It selects
Jan Engelhardt8dd1d042009-03-24 13:35:27 -070099 CONFIG_NETFILTER_XT_MATCH_HL.
Jan Engelhardt43233622009-02-19 11:16:03 +0100100
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101config IP6_NF_MATCH_IPV6HEADER
Jan Engelhardt4c377992007-12-04 23:31:59 -0800102 tristate '"ipv6header" IPv6 Extension Headers Match'
Linus Torvalds44c45eb2008-01-31 00:26:10 +1100103 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700104 help
105 This module allows one to match packets based upon
106 the ipv6 extension headers.
107
108 To compile it as a module, choose M here. If unsure, say N.
109
Masahide NAKAMURAa0ca2152007-02-07 15:12:57 -0800110config IP6_NF_MATCH_MH
Jan Engelhardt4c377992007-12-04 23:31:59 -0800111 tristate '"mh" match support'
Patrick McHardy33b8e772007-12-17 22:47:05 -0800112 depends on NETFILTER_ADVANCED
Masahide NAKAMURAa0ca2152007-02-07 15:12:57 -0800113 help
114 This module allows one to match MH packets.
115
116 To compile it as a module, choose M here. If unsure, say N.
117
Florian Westphale26f9a42011-08-19 13:52:40 +0200118config IP6_NF_MATCH_RPFILTER
119 tristate '"rpfilter" reverse path filter match support'
120 depends on NETFILTER_ADVANCED
121 ---help---
122 This option allows you to match packets whose replies would
123 go out via the interface the packet came in.
124
125 To compile it as a module, choose M here. If unsure, say N.
126 The module will be called ip6t_rpfilter.
127
Jan Engelhardtaba0d342008-10-08 11:35:17 +0200128config IP6_NF_MATCH_RT
129 tristate '"rt" Routing header match support'
Patrick McHardy33b8e772007-12-17 22:47:05 -0800130 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131 help
Jan Engelhardtaba0d342008-10-08 11:35:17 +0200132 rt matching allows you to match packets based on the routing
133 header of the packet.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700134
135 To compile it as a module, choose M here. If unsure, say N.
136
Linus Torvalds1da177e2005-04-16 15:20:36 -0700137# The targets
Jan Engelhardt43233622009-02-19 11:16:03 +0100138config IP6_NF_TARGET_HL
139 tristate '"HL" hoplimit target support'
Randy Dunlap76b67172010-10-18 11:13:30 +0200140 depends on NETFILTER_ADVANCED && IP6_NF_MANGLE
Jan Engelhardt43233622009-02-19 11:16:03 +0100141 select NETFILTER_XT_TARGET_HL
142 ---help---
Randy Dunlap76b67172010-10-18 11:13:30 +0200143 This is a backwards-compatible option for the user's convenience
Jan Engelhardt43233622009-02-19 11:16:03 +0100144 (e.g. when running oldconfig). It selects
Jan Engelhardt8dd1d042009-03-24 13:35:27 -0700145 CONFIG_NETFILTER_XT_TARGET_HL.
Jan Engelhardt43233622009-02-19 11:16:03 +0100146
Patrick McHardyb3f644f2012-08-26 19:14:14 +0200147config IP6_NF_TARGET_MASQUERADE
148 tristate "MASQUERADE target support"
149 depends on NF_NAT_IPV6
150 help
151 Masquerading is a special case of NAT: all outgoing connections are
152 changed to seem to come from a particular interface's address, and
153 if the interface goes down, those connections are lost. This is
154 only useful for dialup accounts with dynamic IP address (ie. your IP
155 address will be different on next dialup).
156
157 To compile it as a module, choose M here. If unsure, say N.
158
Patrick McHardy115e23a2012-08-26 19:14:16 +0200159config IP6_NF_TARGET_REDIRECT
160 tristate "REDIRECT target support"
161 depends on NF_NAT_IPV6
162 help
163 REDIRECT is a special case of NAT: all incoming connections are
164 mapped onto the incoming interface's address, causing the packets to
165 come to the local machine instead of passing through. This is
166 useful for transparent proxies.
167
168 To compile it as a module, choose M here. If unsure, say N.
169
Linus Torvalds1da177e2005-04-16 15:20:36 -0700170config IP6_NF_FILTER
171 tristate "Packet filtering"
Patrick McHardy33b8e772007-12-17 22:47:05 -0800172 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173 help
174 Packet filtering defines a table `filter', which has a series of
175 rules for simple packet filtering at local input, forwarding and
176 local output. See the man page for iptables(8).
177
178 To compile it as a module, choose M here. If unsure, say N.
179
Patrick McHardy764d8a92005-08-21 23:31:06 -0700180config IP6_NF_TARGET_REJECT
181 tristate "REJECT target support"
182 depends on IP6_NF_FILTER
Patrick McHardy33b8e772007-12-17 22:47:05 -0800183 default m if NETFILTER_ADVANCED=n
Patrick McHardy764d8a92005-08-21 23:31:06 -0700184 help
185 The REJECT target allows a filtering rule to specify that an ICMPv6
186 error should be issued in response to an incoming packet, rather
187 than silently being dropped.
188
189 To compile it as a module, choose M here. If unsure, say N.
190
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191config IP6_NF_MANGLE
192 tristate "Packet mangling"
Patrick McHardy33b8e772007-12-17 22:47:05 -0800193 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700194 help
195 This option adds a `mangle' table to iptables: see the man page for
196 iptables(8). This table is used for various packet alterations
197 which can effect how the packet is routed.
198
199 To compile it as a module, choose M here. If unsure, say N.
200
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201config IP6_NF_RAW
202 tristate 'raw table support (required for TRACE)'
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203 help
204 This option adds a `raw' table to ip6tables. This table is the very
205 first in the netfilter framework and hooks in at the PREROUTING
206 and OUTPUT chains.
Patrick McHardy33b8e772007-12-17 22:47:05 -0800207
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208 If you want to compile it as a module, say M here and read
Alexander E. Patrakov39f5fb32007-03-16 18:28:43 +0500209 <file:Documentation/kbuild/modules.txt>. If unsure, say `N'.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210
James Morris17e6e592008-06-09 15:58:05 -0700211# security table for MAC policy
212config IP6_NF_SECURITY
213 tristate "Security table"
James Morris17e6e592008-06-09 15:58:05 -0700214 depends on SECURITY
Patrick McHardy70eed752008-07-23 16:42:42 -0700215 depends on NETFILTER_ADVANCED
James Morris17e6e592008-06-09 15:58:05 -0700216 help
217 This option adds a `security' table to iptables, for use
218 with Mandatory Access Control (MAC) policy.
219
220 If unsure, say N.
221
Jan Engelhardtc2df73d2008-10-08 11:35:18 +0200222endif # IP6_NF_IPTABLES
223
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224endmenu
225