blob: 0cfcce7b18d8105b46aab7d9f45f4fa9eb1c8364 [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
Yasuyuki Kozakai9bdf87d2005-11-14 15:26:58 -08008config NF_CONNTRACK_IPV6
Patrick McHardy8ce22fc2008-01-14 23:31:36 -08009 tristate "IPv6 connection tracking support"
10 depends on INET && IPV6 && NF_CONNTRACK
Patrick McHardy33b8e772007-12-17 22:47:05 -080011 default m if NETFILTER_ADVANCED=n
Yasuyuki Kozakai9bdf87d2005-11-14 15:26:58 -080012 ---help---
13 Connection tracking keeps a record of what packets have passed
14 through your machine, in order to figure out how they are related
15 into connections.
16
17 This is IPv6 support on Layer 3 independent connection tracking.
18 Layer 3 independent connection tracking is experimental scheme
19 which generalize ip_conntrack to support other layer 3 protocols.
20
21 To compile it as a module, choose M here. If unsure, say N.
22
Linus Torvalds1da177e2005-04-16 15:20:36 -070023config IP6_NF_QUEUE
Harald Welte7af4cc32005-08-09 19:44:15 -070024 tristate "IP6 Userspace queueing via NETLINK (OBSOLETE)"
Patrick McHardy8ce22fc2008-01-14 23:31:36 -080025 depends on INET && IPV6 && NETFILTER
Patrick McHardy33b8e772007-12-17 22:47:05 -080026 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070027 ---help---
28
29 This option adds a queue handler to the kernel for IPv6
Harald Welte7af4cc32005-08-09 19:44:15 -070030 packets which enables users to receive the filtered packets
31 with QUEUE target using libipq.
32
David Sterba3dde6ad2007-05-09 07:12:20 +020033 This option enables the old IPv6-only "ip6_queue" implementation
Harald Welte7af4cc32005-08-09 19:44:15 -070034 which has been obsoleted by the new "nfnetlink_queue" code (see
35 CONFIG_NETFILTER_NETLINK_QUEUE).
Linus Torvalds1da177e2005-04-16 15:20:36 -070036
37 (C) Fernando Anton 2001
38 IPv64 Project - Work based in IPv64 draft by Arturo Azcorra.
39 Universidad Carlos III de Madrid
40 Universidad Politecnica de Alcala de Henares
41 email: <fanton@it.uc3m.es>.
42
43 To compile it as a module, choose M here. If unsure, say N.
44
45config IP6_NF_IPTABLES
Patrick McHardy844dc7c2006-10-30 15:12:16 -080046 tristate "IP6 tables support (required for filtering)"
Patrick McHardy8ce22fc2008-01-14 23:31:36 -080047 depends on INET && IPV6
Patrick McHardya3c941b2007-02-12 11:15:02 -080048 select NETFILTER_XTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080049 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -070050 help
51 ip6tables is a general, extensible packet identification framework.
52 Currently only the packet filtering and packet mangling subsystem
53 for IPv6 use this, but connection tracking is going to follow.
54 Say 'Y' or 'M' here if you want to use either of those.
55
56 To compile it as a module, choose M here. If unsure, say N.
57
58# The simple matches.
Linus Torvalds1da177e2005-04-16 15:20:36 -070059config IP6_NF_MATCH_RT
Jan Engelhardt4c377992007-12-04 23:31:59 -080060 tristate '"rt" Routing header match support'
Linus Torvalds1da177e2005-04-16 15:20:36 -070061 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080062 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070063 help
64 rt matching allows you to match packets based on the routing
65 header of the packet.
66
67 To compile it as a module, choose M here. If unsure, say N.
68
69config IP6_NF_MATCH_OPTS
Jan Engelhardt4c377992007-12-04 23:31:59 -080070 tristate '"hopbyhop" and "dst" opts header match support'
Linus Torvalds1da177e2005-04-16 15:20:36 -070071 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080072 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070073 help
74 This allows one to match packets based on the hop-by-hop
75 and destination options headers of a packet.
76
77 To compile it as a module, choose M here. If unsure, say N.
78
79config IP6_NF_MATCH_FRAG
Jan Engelhardt4c377992007-12-04 23:31:59 -080080 tristate '"frag" Fragmentation header match support'
Linus Torvalds1da177e2005-04-16 15:20:36 -070081 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080082 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070083 help
84 frag matching allows you to match packets based on the fragmentation
85 header of the packet.
86
87 To compile it as a module, choose M here. If unsure, say N.
88
89config IP6_NF_MATCH_HL
Jan Engelhardt4c377992007-12-04 23:31:59 -080090 tristate '"hl" match support'
Linus Torvalds1da177e2005-04-16 15:20:36 -070091 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -080092 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -070093 help
94 HL matching allows you to match packets based on the hop
95 limit of the packet.
96
97 To compile it as a module, choose M here. If unsure, say N.
98
Linus Torvalds1da177e2005-04-16 15:20:36 -070099config IP6_NF_MATCH_IPV6HEADER
Jan Engelhardt4c377992007-12-04 23:31:59 -0800100 tristate '"ipv6header" IPv6 Extension Headers Match'
Linus Torvalds1da177e2005-04-16 15:20:36 -0700101 depends on IP6_NF_IPTABLES
Linus Torvalds44c45eb2008-01-31 00:26:10 +1100102 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700103 help
104 This module allows one to match packets based upon
105 the ipv6 extension headers.
106
107 To compile it as a module, choose M here. If unsure, say N.
108
Yasuyuki Kozakaidc5ab2f2006-04-01 02:22:30 -0800109config IP6_NF_MATCH_AH
Jan Engelhardt4c377992007-12-04 23:31:59 -0800110 tristate '"ah" match support'
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800112 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113 help
Yasuyuki Kozakaidc5ab2f2006-04-01 02:22:30 -0800114 This module allows one to match AH packets.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700115
116 To compile it as a module, choose M here. If unsure, say N.
117
Masahide NAKAMURAa0ca2152007-02-07 15:12:57 -0800118config IP6_NF_MATCH_MH
Jan Engelhardt4c377992007-12-04 23:31:59 -0800119 tristate '"mh" match support'
Masahide NAKAMURAa0ca2152007-02-07 15:12:57 -0800120 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800121 depends on NETFILTER_ADVANCED
Masahide NAKAMURAa0ca2152007-02-07 15:12:57 -0800122 help
123 This module allows one to match MH packets.
124
125 To compile it as a module, choose M here. If unsure, say N.
126
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127config IP6_NF_MATCH_EUI64
Jan Engelhardt4c377992007-12-04 23:31:59 -0800128 tristate '"eui64" address check'
Linus Torvalds1da177e2005-04-16 15:20:36 -0700129 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800130 depends on NETFILTER_ADVANCED
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131 help
132 This module performs checking on the IPv6 source address
133 Compares the last 64 bits with the EUI64 (delivered
134 from the MAC address) address
135
136 To compile it as a module, choose M here. If unsure, say N.
137
Linus Torvalds1da177e2005-04-16 15:20:36 -0700138# The targets
139config IP6_NF_FILTER
140 tristate "Packet filtering"
141 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800142 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700143 help
144 Packet filtering defines a table `filter', which has a series of
145 rules for simple packet filtering at local input, forwarding and
146 local output. See the man page for iptables(8).
147
148 To compile it as a module, choose M here. If unsure, say N.
149
150config IP6_NF_TARGET_LOG
151 tristate "LOG target support"
152 depends on IP6_NF_FILTER
Patrick McHardy33b8e772007-12-17 22:47:05 -0800153 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700154 help
155 This option adds a `LOG' target, which allows you to create rules in
156 any iptables table which records the packet header to the syslog.
157
158 To compile it as a module, choose M here. If unsure, say N.
159
Patrick McHardy764d8a92005-08-21 23:31:06 -0700160config IP6_NF_TARGET_REJECT
161 tristate "REJECT target support"
162 depends on IP6_NF_FILTER
Patrick McHardy33b8e772007-12-17 22:47:05 -0800163 default m if NETFILTER_ADVANCED=n
Patrick McHardy764d8a92005-08-21 23:31:06 -0700164 help
165 The REJECT target allows a filtering rule to specify that an ICMPv6
166 error should be issued in response to an incoming packet, rather
167 than silently being dropped.
168
169 To compile it as a module, choose M here. If unsure, say N.
170
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171config IP6_NF_MANGLE
172 tristate "Packet mangling"
173 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800174 default m if NETFILTER_ADVANCED=n
Linus Torvalds1da177e2005-04-16 15:20:36 -0700175 help
176 This option adds a `mangle' table to iptables: see the man page for
177 iptables(8). This table is used for various packet alterations
178 which can effect how the packet is routed.
179
180 To compile it as a module, choose M here. If unsure, say N.
181
Harald Welte0ac4f892005-08-27 22:37:30 -0700182config IP6_NF_TARGET_HL
183 tristate 'HL (hoplimit) target support'
184 depends on IP6_NF_MANGLE
Patrick McHardy33b8e772007-12-17 22:47:05 -0800185 depends on NETFILTER_ADVANCED
Harald Welte0ac4f892005-08-27 22:37:30 -0700186 help
187 This option adds a `HL' target, which enables the user to decrement
188 the hoplimit value of the IPv6 header or set it to a given (lower)
189 value.
Patrick McHardy33b8e772007-12-17 22:47:05 -0800190
Harald Welte0ac4f892005-08-27 22:37:30 -0700191 While it is safe to decrement the hoplimit value, this option also
192 enables functionality to increment and set the hoplimit value of the
193 IPv6 header to arbitrary values. This is EXTREMELY DANGEROUS since
194 you can easily create immortal packets that loop forever on the
Patrick McHardy33b8e772007-12-17 22:47:05 -0800195 network.
Harald Welte0ac4f892005-08-27 22:37:30 -0700196
197 To compile it as a module, choose M here. If unsure, say N.
198
Linus Torvalds1da177e2005-04-16 15:20:36 -0700199config IP6_NF_RAW
200 tristate 'raw table support (required for TRACE)'
201 depends on IP6_NF_IPTABLES
Patrick McHardy33b8e772007-12-17 22:47:05 -0800202 depends on NETFILTER_ADVANCED
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"
214 depends on IP6_NF_IPTABLES
215 depends on SECURITY
Patrick McHardy70eed752008-07-23 16:42:42 -0700216 depends on NETFILTER_ADVANCED
James Morris17e6e592008-06-09 15:58:05 -0700217 help
218 This option adds a `security' table to iptables, for use
219 with Mandatory Access Control (MAC) policy.
220
221 If unsure, say N.
222
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223endmenu
224