Port forwarding

Handbook

ПРи перенаправлении исходный адрес сохраняется и не заменяется адресом NAT.

NAT может быть реализован разными способами:


 * Если используется user ppp, то посредством встроенного в него функции NAT


 * посредством natd и ipfw

Внешний интерфейс 10.81.76.56, внутренний 192.168.0.14. natd_flags="-redirect_port tcp 192.168.0.14:39701 10.81.76.56:39701"

Внутренний интерфейс 172.16.0.2 и порт на нем 39701, на внешнем интерфейсе, который тут не указан и определён в natd_interface="age0" будет перенаправление с порта 22. Как будет работаеть, если на age0 несколько IP-адресов поднято - не знаю. Внешний интерфейс в man для natd фигурирует под именем aliased interface

natd_flags="-redirect_port tcp 172.16.0.2:39701 22"

Перезапустить /etc/rc.d/natd restart

Минимальная нотация - локальный хост и порт и порт на внешнем интерфейсе, иначе будет ошибка выводится при запуске natd is missing port number natd_flags="-redirect_port tcp 172.16.0.2:3389 3389"

Проверка netcat

не играет роли ipfw add check-state allow tcp from any to 192.168.0.14 39701 setup keep-state

Когда правил несколько, то их лучше поместить в конфигурационный файл. Который надо создать перед этим. echo 'natd_flags="-f /etc/natd.conf"' >> /etc/rc.conf echo "redirect_port tcp 192.168.0.253:80 10.81.76.56:80" >> /etc/natd.conf

??? Не забываем в последней строке файла natd.conf поставить последним символом ENTER!


 * через ipnat и Ipfw


 * rinetd

Bittorrent
Клиент сообщает трекеру, т.е. он может быть произвольным. Постоянных плохo, потому что может быть зафильтрован.
 * 6881-6889 (битторрент) ??
 * если планируется DHT использовать, нужно открыть UDP-порт того же номера, что и TCP

На роутере активен UpnP и клиент отображает зеленый индикатор, что ок. Хотя снаружи IP, естественно, недоступен.

Когда средствами NAT разрешено перенаправление, к порту становится воможно подключиться telnet, но как проверить полноценно? Сервис http://www.utorrent.com/testport?port= просто проверяет, открыт ли порт, что на нем отвечает - не оценивается.

Посредством SSH
http://xgu.ru/wiki/SSH