Есть сервер (asp9.2) одной стороной он смотрит в интерент (реальный ip) а второй в сеть (172.16.1.0/24) (он раздает инет и выполняет еще кое-каие функиции). В локальной сети есть компьютер, на котором висит NetSupport client (виндовая программа, которая позволяет приконекчиваться другим виндовым машинам и удаленно управлять ими, висит на стандартном tcp порту 5405).
Вообщем задача. Нужно перебросить tcp порт 5405 с этой машины на реальный ip (то есть на сервер). Чтобы человек, подключенный к интернету мог выбрать ip адрес сервера и подключиться к машине находящейся во внутренней сети.
Интернет раздается вот так:
*******************************************************************
#!/bin/sh
IPTABLES=/sbin/iptables
INTIF="eth1"
EXTIF="eth0"
echo " External Interface: $EXTIF"
echo " Internal Interface: $INTIF"
echo " enabling forwarding.."
echo "1" > /proc/sys/net/ipv4/ip_forward
echo " enabling DynamicAddr.."
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
echo " clearing any existing rules and setting default policy.."
$IPTABLES -P INPUT ACCEPT
$IPTABLES -F INPUT
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -F OUTPUT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -F FORWARD
$IPTABLES -t nat -F
echo " FWD: Allow all connections OUT and only existing and related ones IN"
$IPTABLES -A FORWARD -i $EXTIF -o $INTIF -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INTIF -o $EXTIF -j ACCEPT
echo " Enabling SNAT (MASQUERADE) functionality on $EXTIF"
$IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE
echo -e "\nDone.\n"
*******************************************************************
переброску портов я пытаюсь делать вот таким скриптом:
*******************************************************************
#!/bin/sh
IPTABLES=/sbin/iptables
INT_IF="eth1" #Внутрений интерфейс
EXT_IF="eth0" #Внешний интерфейс
INT_IP="172.16.1.100" #ip машины на которую перебрасываем порт
EXT_IP="A.B.C.D" #ip сервера (реальный ip)
PORT="5405" #порт, который открывается на серве и на
#который перебрасывается соединение на внутренем компьютере
$IPTABLES -t nat -A PREROUTING -d $EXT_IP -i $EXT_IF -p tcp -m tcp --dport $PORT -j DNAT --to-destination $INT_IP:$PORT
$IPTABLES -t nat -A POSTROUTING -d $INT_IP -o $EXT_IF -p tcp -m tcp --dport $PORT -j SNAT --to-source $EXT_IP
$IPTABLES -A FORWARD -d $INT_IP -p tcp -m tcp --dport $PORT -m state --state NEW -j ACCEPT
*******************************************************************
Вообщем запуская я первый скрпит - инет прекрасно раздается (этот сприпт уже больше года раздает инет), запускаю второй - фиг. На сервере порт не открывается и приконектиться к нему, соответственно нельзя... =(
Скажите, пожалуйста, где я ошибся, и как можно эту ошибку поправить.
Заранее большое спасибо!