URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID15
Нить номер: 659
[ Назад ]

Исходное сообщение
"NAT"

Отправлено MGS , 16-Ноя-06 16:42 
Здравствуйте Господа!

Вообщем дело обстоит в следуещем контексте:
есть у меня роутер с двумя интерфейсами EXT_IP(внешняя сеть тоисть инет) и есть IN_IP(соответственно внутреняя). Задача состоит в том что-бы из инета можно было-бы видеть http сервис кокого-то компа внутреней сети ну скажем IN_IP_TO_INET.
Просто я по специфике специалист в другой области но вот пришлось.... а что делать даже не знаю.

Заранее благодарен.


Содержание

Сообщения в этом обсуждении
"NAT"
Отправлено orlic , 16-Ноя-06 16:49 
>Здравствуйте Господа!
>
>Вообщем дело обстоит в следуещем контексте:
>есть у меня роутер с двумя интерфейсами EXT_IP(внешняя сеть тоисть инет) и
>есть IN_IP(соответственно внутреняя). Задача состоит в том что-бы из инета можно
>было-бы видеть http сервис кокого-то компа внутреней сети ну скажем IN_IP_TO_INET.
>
>Просто я по специфике специалист в другой области но вот пришлось.... а
>что делать даже не знаю.
>


Какой файрвол стоит?

Нат советую поднимать на ipnat (компилируется в ядре, но можно запускать и модулем) man ipnat

правило для переброски трафика во внутрь:
$ cat /etc/ipnat.rules
# ~~~ Connections from Internet to your WEB-site ~~~
rdr EXT_IF EXTERNAL_IP/32 port 80   -> INTERNAL_IP port 80   tcp
rdr EXT_IF EXTERNAL_IP/32 port 443  -> INTERNAL_IP port 443  tcp


и соответственно правила файрвола, разрешающие HTTP\HTTPS трафик до вашего шлюза и до вашего web-сервера внутри сети

Все.

natd не полюбил сразу, да и работает он не в ядре, следовательно, медленнее. PF не пробовал, но там все это описывается 1 правилом, и все работает в ядре.



"NAT"
Отправлено MGS , 16-Ноя-06 16:55 
iptabes v1.3.3
Ну а как это сделать с помощью iptables?

"NAT"
Отправлено Serge , 16-Ноя-06 17:13 
>iptabes v1.3.3
>Ну а как это сделать с помощью iptables?

# SMTP server
INT_IP=192.168.0.4      # Internal IP of server.
INT_PORT=25             # internal port
EXT_IP=222.33.44.55
EXT_PORT=25         # external port
EXT_IF=eth0             # External interface - eth0, eth1, vlan100
#${IPTABLES} -A INPUT -i $EXT_IF -p tcp --dport $EXT_PORT -j ACCEPT
${IPTABLES} -A FORWARD -d $INT_IP -p tcp --dport $INT_PORT -m state --state NEW -j ACCEPT
${IPTABLES} -t nat -A PREROUTING -d $EXT_IP -i $EXT_IF -p tcp --dport $EXT_PORT -j DNAT --to-destination $INT_IP:$INT_PORT
${IPTABLES} -t nat -A POSTROUTING -d $INT_IP -o $EXT_IF -p tcp --dport $INT_PORT -j SNAT --to-source $EXT_IP

подразумеваю, что NAT внутренней сети наружу уже есть


"NAT"
Отправлено MGS , 16-Ноя-06 17:46 
Не работает(