IPFW + PF NAT, как сменить шлюз по умолчанию?

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
alekshr
проходил мимо
Сообщения: 4
Зарегистрирован: 2009-09-01 9:14:38

IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение alekshr » 2009-09-01 9:24:28

Здравствуйте, постараюся обяснить подробнее. Сейчас все работает и шейпится. Фаервол IPFW, нат - PF NAT. Но возникла необходимость пускать некоторых клиентов по второму провайдеру.

Внешние интерфейсы:
re0 (IP сервера 172.16.12.11/255.255.255.248) - шлюз провайдера 172.16.12.12
vge0 (IP сервера 10.46.16.200/255.255.252.0) - шлюз провайдера 10.46.16.1

Внутренний:
vge1 192.168.13.1/24

Настройки pf.conf:

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

nat pass on re0 from 192.168.13.0/24 to any -> re0
nat pass on vge0 from 192.168.13.0/24 to any -> vge0
Настройки /etc/rc.firewall:

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

#!/bin/sh -
f='/sbin/ipfw'

${f} add 130 allow tcp from any to me 22
${f} add 131 allow tcp from me 22 to any

${f} add 200 allow ip from any to any

С данными настройками все работает по маршруту заданому в rc.conf.
Меняю шлюз в rc.conf - все бегают соответсвенно по 2 провайдеру.

Теперь вопрос:
какое правило нужно вставить в rc.firewall чтоб IP 192.168.13.11 ушел по шлюзу второго провайдера?

Припустим что шлюз по умолчанию: 10.46.16.1 и все пакеты идут через него.

Пробую добавить:

ipfw add 150 fwd 172.16.12.12 ip from 192.168.13.11 to any

интернет полностю перестает работать, пакеты не идут.

Подскажыте как задать форвардинг пакетов на шлюз 2 провайдера?

P.S. Если я правильно понял tcpdump то пакеты отправляются не начеными, но с того интерфейса кторого нужно.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение hizel » 2009-09-01 14:25:37

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

ipfw add 150 fwd 172.16.12.12 ip from 192.168.13.11 to any out via vge0
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

alekshr
проходил мимо
Сообщения: 4
Зарегистрирован: 2009-09-01 9:14:38

Re: IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение alekshr » 2009-09-01 15:19:54

Не выходит, судя по tcpdump'y пакети теперь отправляются неначеными. Тоесть запрос идет от айпи 192.168.13.11, а не от 172.16.12.11 как нужно было бы... но на той шлюз, только толку...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение hizel » 2009-09-01 16:29:57

ну да, что такое помню, FORWARD выносит далеко мимо всех фаеров
используйте ядерный nat или natd ;]
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
Shuba
ст. сержант
Сообщения: 365
Зарегистрирован: 2008-03-25 10:58:21
Откуда: Минск
Контактная информация:

Re: IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение Shuba » 2009-09-02 11:24:13

alekshr писал(а):Настройки pf.conf:

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

nat pass on re0 from 192.168.13.0/24 to any -> re0
nat pass on vge0 from 192.168.13.0/24 to any -> vge0
Настройки /etc/rc.firewall:

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

#!/bin/sh -
f='/sbin/ipfw'

${f} add 130 allow tcp from any to me 22
${f} add 131 allow tcp from me 22 to any

${f} add 200 allow ip from any to any

С данными настройками все работает по маршруту заданому в rc.conf.
Меняю шлюз в rc.conf - все бегают соответсвенно по 2 провайдеру.

Теперь вопрос:
какое правило нужно вставить в rc.firewall чтоб IP 192.168.13.11 ушел по шлюзу второго провайдера?

Припустим что шлюз по умолчанию: 10.46.16.1 и все пакеты идут через него.

Пробую добавить:

ipfw add 150 fwd 172.16.12.12 ip from 192.168.13.11 to any

интернет полностю перестает работать, пакеты не идут.

Подскажыте как задать форвардинг пакетов на шлюз 2 провайдера?
а если так

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

nat on re0 from 192.168.13.0/24 to any -> re0
nat on vge0 from 192.168.13.13 to any -> vge0
и так

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

route add -net 172.16.12.0/24 172.16.12.12
Сила ночи, сила дня - одинакова фигня!

sch
сержант
Сообщения: 282
Зарегистрирован: 2009-05-28 14:36:50
Откуда: Кишинев

Re: IPFW + PF NAT, как сменить шлюз по умолчанию?

Непрочитанное сообщение sch » 2009-09-02 11:48:42

а лучше уже так:

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

ipfw disable one_pass
ipfw nat 1 config ip 172.16.12.11
ipfw add 140 nat 1 ip from 192.168.13.11 to any in vge1 out re0
ipfw add 141 fwd 172.16.12.12 ip from 172.16.12.11 to any out re0
ipfw add 142 nat 1 ip from any to 172.16.12.11 in via re0
и дефолтный шлюз на 10.46.16.1