diff --git a/docs/images/Network2011b.dia b/docs/images/Network2011b.dia
new file mode 100644
index 000000000..86192e4ef
Binary files /dev/null and b/docs/images/Network2011b.dia differ
diff --git a/docs/images/Network2011b.png b/docs/images/Network2011b.png
new file mode 100644
index 000000000..d6c2deb02
Binary files /dev/null and b/docs/images/Network2011b.png differ
diff --git a/docs/netmap.xml b/docs/netmap.xml
index 7d92e7b0a..5e16510bb 100644
--- a/docs/netmap.xml
+++ b/docs/netmap.xml
@@ -22,6 +22,8 @@
2007
+ 2011
+
Thomas M. Eastep
@@ -113,8 +115,10 @@
NET1
- Must be expressed in CIDR format (e.g.,
- 192.168.1.0/24).
+ Must be expressed in CIDR format (e.g., 192.168.1.0/24).
+ Beginning with Shorewall 4.4.24, exclusion is
+ supported.
@@ -135,6 +139,71 @@
A second network expressed in CIDR format.
+
+
+ NET3 (Optional) -
+ network-address
+
+
+ Added in Shorewall 4.4.11. If specified, qualifies INTERFACE.
+ It specifies a SOURCE network for DNAT rules and a DESTINATON
+ network for SNAT rules.
+
+
+
+
+ PROTO (Optional - Added in Shorewall
+ 4.4.23.2) -
+ protocol-number-or-name
+
+
+ Only packets specifying this protocol will have their IP
+ header modified.
+
+
+
+
+ DEST PORT(S) (Optional - Added in
+ Shorewall 4.4.23.2) -
+ port-number-or-name-list
+
+
+ Destination Ports. A comma-separated list of Port names (from
+ services(5)), port numbers or port
+ ranges; if the protocol is icmp, this column is interpreted as the
+ destination icmp-type(s). ICMP types may be specified as a numeric
+ type, a numberic type and code separated by a slash (e.g., 3/4), or
+ a typename. See http://www.shorewall.net/configuration_file_basics.htm#ICMP.
+
+ If the protocol is ipp2p,
+ this column is interpreted as an ipp2p option without the leading
+ "--" (example bit for bit-torrent).
+ If no PORT is given, ipp2p is
+ assumed.
+
+ An entry in this field requires that the PROTO column specify
+ icmp (1), tcp (6), udp (17), sctp (132) or udplite (136). Use '-' if
+ any of the following field is supplied.
+
+
+
+
+ DEST PORT(S) (Optional - Added in
+ Shorewall 4.4.23.2) -
+ port-number-or-name-list
+
+
+ Source port(s). If omitted, any source port is acceptable.
+ Specified as a comma-separated list of port names, port numbers or
+ port ranges.
+
+ An entry in this field requires that the PROTO column specify
+ tcp (6), udp (17), sctp (132) or udplite (136). Use '-' if any of
+ the following fields is supplied.
+
+
Referring to the figure above, lets suppose that systems in the top
@@ -167,7 +236,7 @@
-
+
If you are running Shorewall 4.4.22 or Earlier
The entries in
@@ -318,6 +387,64 @@ DNAT:T 10.10.10.0/24 vpn 192.168.1.0/24
+
+ IPv6
+
+ Beginning with Shorewall6 4.4.24, IPv6 support for Netmap is
+ included. This provides a way to use site local IPv6 addresses internally
+ and still have access to the IPv6 internet.
+
+
+ IPv6 netmap is stateless which means that
+ there are no helpers for applications that need them. As a consequence,
+ applications that require a Netfilter helper (FTP, IRC, etc.) may
+ experience issues.
+
+
+ To use IPv6 Netmap, your kernel and iptables must include
+ Rawpost Table Support.
+
+ IPv6 Netmap has been verified at shorewall.net using the
+ configuration shown below.
+
+
+
+ IPv6 support is supplied from Hurricane Electric; the IPv6 address
+ block is 2001:470:b:227::/64.
+
+ Because of the limitations of IPv6 NETMAP, The servers in the DMZ
+ have public addresses in the block 2001:470:b:227::/112. The local LAN
+ uses the private network fec0:470:b:227::/64 with the hosts autoconfigured
+ using radvd.
+
+ The /etc/shorewall6/netmap file is as follows:
+
+ #TYPE NET1 INTERFACE NET2 NET3 PROTO DEST SOURCE
+# PORT(S) PORT(S)
+SNAT:T fec0:470:b:227::/64 HE_IF 2001:470:b:227::/64
+DNAT:P 2001:470:b:227::/64!2001:470:b:227::/112\
+ HE_IF fec0:470:b:227::/64
+
+
+ HE_IF is the logical name for interface sit1. On output, the private
+ address block is mapped to the public block. Because autoconfiguration is
+ used, none of the local addresses falls into the range
+ fec0:470:b:227::/112. That range can therefore be excluded from
+ DNAT.
+
+
+ While the site local network that was used is very similar to the
+ public network (only the first word is different), that isn't a
+ requirement. We could have just as well used
+ fec0:bad:dead:beef::/64
+
+
+
+ The MacBook Pro running OS X Lion refused to autoconfigure a
+ site-local address.
+
+
+
Author's Notes
diff --git a/manpages/shorewall-netmap.xml b/manpages/shorewall-netmap.xml
index 188ff8fb3..343a14c4a 100644
--- a/manpages/shorewall-netmap.xml
+++ b/manpages/shorewall-netmap.xml
@@ -77,7 +77,10 @@
network-address
- Network in CIDR format (e.g., 192.168.1.0/24).
+ Network in CIDR format (e.g., 192.168.1.0/24). Beginning with
+ Shorewall 4.4.24, exclusion is
+ supported.
diff --git a/manpages6/shorewall6-netmap.xml b/manpages6/shorewall6-netmap.xml
index 0872445a4..1d2a0126e 100644
--- a/manpages6/shorewall6-netmap.xml
+++ b/manpages6/shorewall6-netmap.xml
@@ -78,7 +78,10 @@
network-address
- Network in CIDR format (e.g., 2001:470:b:227/64).
+ Network in CIDR format (e.g., 2001:470:b:227/64). Beginning in
+ Shorewall6 4.4.24, exclusion is
+ supported.