07.05.2020 13:16, Eugene Grosbein пишет:

>> Получается, что ipfw fwd нельзя использовать для исходящего трафика, а 
>> только для входящего?
> 
> Можно, нужно лишь отключить one_pass. Но транслировать трафик на tap0 нет 
> никакой необходимости.
> Транслировать имеет смысл только на T, чтобы запросы, приходящие из туннеля, 
> уходили на S с подмененным адресом источника.
> Ответные пакеты после обратной трансляции будут уходить в туннель просто по 
> роутингу.

Хотя, в этом случае скорее всего будет проблема с правильным выбором source IP 
для исходящих запросов
и NAT, действительно, мог бы решить эту проблему. Правила нужны такие:

ipfw nat 1 config if tap0
ipfw add 60    nat 1 ip from any to any in recv tap0
ipfw add 50000 nat 1 tcp from any to $serverip $serverport out
ipfw add 50010 fwd $tap0gw ip from $tap0ip to any out xmit $realif

Тут $realif - имя физического (реального) интерфейса, в который показывает 
default route,
так как до срабатывания ipfw fwd исходящие пакеты назначены в этот интерфейс и 
никакие правила,
кроме fwd, этого не меняют, поэтому матчить их нужно именно так.

$serverip и $serverport тут соответственно IP-адрес и порт назначения, трафик 
до которых
нужно форвардить в туннель.

$tap0ip это собственный IP-адрес ноутбука на туннеле, а $tap0gw это адрес 
сервера T, удалённой стороны туннеля.

Не забыть включить gateway_enable="YES" на ноутбуке и отключить one_pass.



_______________________________________________
freebsd mailing list
[email protected]
http://mailman.uafug.org.ua/mailman/listinfo/freebsd

Ответить