Packet Filter
Как сделать rdr правило, позволяющее подключаться
к серверам, находящимся в той же сети, что и клиенты?
Правила rdr не позволяют переадресовать
соединения обратно в сеть, из которой производится подключение (так как при
этом ответные пакеты пойдут напрямую клиенту и не будут сопоставлены с
правилом rdr). Однако существует возможность
совместить rdr с трансляцией адресов для
получения нужного результата. Ниже приведен пример таких правил:
# Определение интерфейсов
#
ext_if="sk0"
int_if="sk1"
# Определение внутреннего сервера и портов
#
server="10.10.10.100"
ports="www https"
# Переадресовать внешние соединения на сервер
#
rdr pass on $ext_if inet proto tcp to ($ext_if) port { $ports } -> $server
# Переадресовать внутренние соединения на сервер с трансляцией адреса
#
rdr pass on $int_if inet proto tcp to ($ext_if) port { $ports } tag LANRDR \
-> $server
nat on $int_if tagged LANRDR -> ($int_if:0)
www@openbsd.ru
$RuOBSD: pf.html,v 1.7 2010/11/01 10:57:48 dinar Exp $