Страница 1 из 1

pf + reply-to + для udp не работает ?

Добавлено: 2011-03-21 23:59:08
suspender
Есть кусок pf.conf :

Код: Выделить всё

#icmp
pass in on $ifVtk reply-to ($ifVtk $gwVtk) inet proto icmp from any to $ifVtk keep state
pass in on $ifFl reply-to ($ifFl $gwFl) inet proto icmp from any to $ifFl keep state

#openvpn
pass in quick on $ifVtk reply-to ($ifVtk $gwVtk) inet proto udp from any to $ifVtk port 1194 keep state
pass in quick on $ifFl reply-to ($ifFl $gwFl) inet proto udp from any to $ifFl port 1194 keep state

#nginx
pass in quick on $ifVtk reply-to ($ifVtk $gwVtk) inet proto tcp from any to $ifVtk port {80,8081,8011,443} keep state
pass in quick on $ifFl reply-to ($ifFl $gwFl) inet proto tcp from any to $ifFl port {80,8081,8011,443} keep state
На пинги отвечает по обоим ip. nginx нормально работает по двум ip. А вот openvpn, падла, шлёт ответы через default-route.

Вот как ругается виндовый openvpn клиент:

Код: Выделить всё

Mon Mar 21 23:56:10 2011 TCP/UDP: Incoming packet rejected from <ip1>:1194[2], expected peer address: <ip2>:1194 (allow this incoming source address/port by removing --remote or adding --float)
Как победить ?

Re: pf + reply-to + для udp не работает ?

Добавлено: 2011-03-23 9:54:06
vadim64
x3, почитайте http://forum.lissyara.su/viewtopic.php?f=4&t=24966 и походите по ссылкам что там мелькают

Re: pf + reply-to + для udp не работает ?

Добавлено: 2011-03-24 8:27:42
suspender
PF победить не удалось.
Сменил в openvpn протокол на tcp - reply-to нормально заработало.

Re: pf + reply-to + для udp не работает ?

Добавлено: 2011-03-24 21:54:58
Гость
suspender писал(а):На пинги отвечает по обоим ip. nginx нормально работает по двум ip. А вот openvpn, падла, шлёт ответы через default-route.

Как победить ?
Не думал, что когда-нибудь буду давать такие советы, но... Но, смотреть в сторону люникса и iproute2.

Re: pf + reply-to + для udp не работает ?

Добавлено: 2012-10-17 9:39:13
rustamxp
на будущее, для тех кто столкнется с этой проблемой...

в конфиге сервера openvpn необходимо добавить строку:

Код: Выделить всё

local			127.0.0.1
в конфиге pf добавить такую конструкцию:

Код: Выделить всё

rdr on $ext_if1 inet proto udp from any to $ext_if port 5000 -> 127.0.0.1 port 5000
rdr on $ext_if2 inet proto udp from any to $ext_if2 port 5000 -> 127.0.0.1 port 5000
pass in on $ext_if1 inet proto udp from any to 127.0.0.1 port 5000 keep state
pass in on $ext_if2 reply-to ($ext_if2 $gate2) inet proto udp from any to 127.0.0.1 port 5000 keep state
defaultrouter находится на $ext_if1