Inserting source postrouting rules
This commit is contained in:
@@ -76,7 +76,9 @@ prerouting() {
|
||||
}
|
||||
|
||||
postrouting() {
|
||||
LINES=$($IPTABLES -L --line-number -n | grep $COMMENT | grep $TARGET_IP | grep $TARGET_PORT | awk '{print $1}'| tac)
|
||||
|
||||
if [ -n "$SOURCE_IP" ] ; then
|
||||
LINES=$($IPTABLES -L --line-number -n | grep $COMMENT | grep $SOURCE_IP | grep $SOURCE_PORT | awk '{print $1}'| tac)
|
||||
debug "Previous postrouting lines: "$LINES
|
||||
|
||||
# DELETE UNECESSARY LINES FROM PREVIOUS RULES
|
||||
@@ -88,7 +90,22 @@ postrouting() {
|
||||
done
|
||||
fi
|
||||
|
||||
debug "$IPTABLES -I POSTROUTING -d $TARGET_IP -p $PROTOCOL --dport $TARGET_PORT -m comment --comment "$COMMENT" -j MASQUERADE"
|
||||
debug "$IPTABLES -I POSTROUTING -s $SOURCE_IP -p $PROTOCOL --dport $SOURCE_PORT -m comment --comment "$COMMENT" -j MASQUERADE"
|
||||
$IPTABLES -I POSTROUTING -d $SOURCE_IP -p $PROTOCOL --dport $SOURCE_PORT -m comment --comment "$COMMENT" -j MASQUERADE
|
||||
|
||||
if [ -n "$TARGET_IP" ] ; then
|
||||
LINES=$($IPTABLES -L --line-number -n | grep $COMMENT | grep $TARGET_IP | grep $TARGET_PORT | awk '{print $1}'| tac)
|
||||
debug "Previous postrouting lines: "$LINES
|
||||
|
||||
# DELETE UNECESSARY LINES FROM PREVIOUS RULES
|
||||
if [ -n "$LINES" ] ; then
|
||||
for i in $LINES; do
|
||||
debug "$IPTABLES -D POSTROUTING $i"
|
||||
$IPTABLES -D POSTROUTING $i
|
||||
sleep 0.1
|
||||
done
|
||||
fi
|
||||
debug "$IPTABLES -I POSTROUTING -s $TARGET_IP -p $PROTOCOL --dport $TARGET_PORT -m comment --comment "$COMMENT" -j MASQUERADE"
|
||||
$IPTABLES -I POSTROUTING -d $TARGET_IP -p $PROTOCOL --dport $TARGET_PORT -m comment --comment "$COMMENT" -j MASQUERADE
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user