From: Michael Prokop Date: Tue, 11 Sep 2012 17:11:37 +0000 (+0200) Subject: NAT setup: do not fail if local route is present X-Git-Tag: v0.99.19~1 X-Git-Url: http://git.grml.org/?p=grml-terminalserver.git;a=commitdiff_plain;h=00ee2943bfe06b976cd72b0c4572d00ff9abdbd2 NAT setup: do not fail if local route is present If the system running grml-terminalserver uses the gateway IP address and it's a local route then the loopback device is the matching device. This doesn't make any sense for the NAT setup, therefore skip it. Without this change the iptables code gets executed with invalid arguments and is failing. --- diff --git a/grml-terminalserver-config b/grml-terminalserver-config index 25836e5..9b01239 100755 --- a/grml-terminalserver-config +++ b/grml-terminalserver-config @@ -194,8 +194,8 @@ for addresses from 192.168.0.101 to (and including) 192.168.0.200. NAMESERVERS_=`netGetNameservers warn` GW_=`netGetDefaultGateway warn` - GW_DEV_=`/sbin/ip route get "$GW_" | awk '{ print $3; exit; }'` - if [ "$GW_DEV_" != "$INTERFACE_" ] && [ "$GW_DEV_" != "" ]; then + GW_DEV_=`/sbin/ip route get "$GW_" | sed 's/^local //' | awk '{ print $3; exit; }'` + if [ "$GW_DEV_" != "$INTERFACE_" ] && [ "$GW_DEV_" != "" ] && [ "$GW_DEV_" != "lo" ]; then # GW_DEV_ of server is not the same device as the one serviced by dhcpd # so it doesn't make sense to provide the GW_ address to the clients local do_nat_="YES"