Fix NET3 bug (netmap)

This commit is contained in:
Tom Eastep 2010-07-04 15:58:37 -07:00
parent 7689831cd7
commit 312624cef5
10 changed files with 22 additions and 6 deletions

View File

@ -207,6 +207,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -207,6 +207,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -214,6 +214,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -155,6 +155,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
##############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -155,6 +155,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -155,6 +155,8 @@ LOAD_HELPERS_ONLY=Yes
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -461,15 +461,15 @@ sub setup_netmap() {
fatal_error "Unknown interface ($interface)" unless my $interfaceref = known_interface( $interface );
unless ( $interfaceref->{root} ) {
$rulein = match_source_dev( $interface ) . match_source_net ( $net3 );
$ruleout = match_dest_dev( $interface ) . match_dest_net ( $net3 );
$rulein = match_source_dev( $interface );
$ruleout = match_dest_dev( $interface );
$interface = $interfaceref->{name};
}
if ( $type eq 'DNAT' ) {
add_rule ensure_chain( 'nat' , input_chain $interface ) , $rulein . "-d $net1 -j NETMAP --to $net2";
add_rule ensure_chain( 'nat' , input_chain $interface ) , $rulein . match_source_net( $net3 ) . "-d $net1 -j NETMAP --to $net2";
} elsif ( $type eq 'SNAT' ) {
add_rule ensure_chain( 'nat' , output_chain $interface ) , $ruleout . "-s $net1 -j NETMAP --to $net2";
add_rule ensure_chain( 'nat' , output_chain $interface ) , $ruleout . match_dest_net( $net3 ) . "-s $net1 -j NETMAP --to $net2";
} else {
fatal_error "Invalid type ($type)";
}

View File

@ -196,6 +196,8 @@ LOAD_HELPERS_ONLY=No
REQUIRE_INTERFACE=No
FORWARD_CLEAR_MARK=Yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################

View File

@ -278,12 +278,12 @@ None.
See http://www.shorewall.net/Vserver.html for details.
2) A new CLEAR_FORWARD_MARK option has been added to shorewall.conf
2) A new FORWARD_CLEAR_MARK option has been added to shorewall.conf
and shorewall6.conf.
Traditionally, Shorewall has cleared the packet mark in the first
rule in the mangle FORWARD chain. This behavior is maintained with
the default setting (CLEAR_FORWARD_MARK=Yes). If the new option is
the default setting (FORWARD_CLEAR_MARK=Yes). If the new option is
set to No, packet marks set in the PREROUTING chain are retained in
the FORWARD chains.

View File

@ -151,6 +151,8 @@ DYNAMIC_BLACKLIST=Yes
LOAD_HELPERS_ONLY=No
FORWARD_CLEAR_MARK=yes
###############################################################################
# P A C K E T D I S P O S I T I O N
###############################################################################