ipfw fwd на шлюз входящего подключения через mpd pptp

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Meloun
проходил мимо
Сообщения: 4
Зарегистрирован: 2008-11-17 14:06:51
Откуда: Калуга
Контактная информация:

ipfw fwd на шлюз входящего подключения через mpd pptp

Непрочитанное сообщение Meloun » 2009-07-21 23:15:54

Доброго времени суток.
Извиняюсь за идиотское название топика, пришлось сократить) Постараюсь развернуто описать трабл.

Итак есть машинка-шлюз с FreeBSD 7.0, одна из функций балансировка нескольких каналов в интернет посредством NATD+IPFW FWD используется механизм сессий (stateless) в общем все отлично работает. Сейчас потребовалось еще один канальчик в интернет впихнуть в балансировку (мой домашний), завернуть к шлюзу его решил через pptp mpd (5.3 версия), т.е. схема такая, домашний роутер тоже на FreeBSD поднимает линк до главного шлюза (где балансировка идет) через mpd по pptp как клиент, пакеты от балансировщика в этот канал шлются также как и в остальные через policy-routing в ipfw fwd. И тут словил трабл.

Пишу более детально.

Домашний роутер подключается к главному, на главном роутере появляется новый интерфейс ( допустим) ng0 подключение типа точка-точка 192.168.254.1 ---> 192.168.254.2, up-скриптом прописываются обратные маршруты к домашней локалке (для доступа с работы к домашнему зоопарку) ) трафик между локалками бегает отлично.
для использования домашнего интернета на главном роутере в фаерволе пишу конструкцию примерного вида для форвардинга на домашний шлюз

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

${ipfw} add ${num}510 fwd 192.168.254.2 ip from 192.168.1.234 to any out
где 192.168.1.234 мой рабочий IP

и тут наступает попец. счетчик правила с форвардингом тикает, пакетики на 192.168.254.2 недоходят.
ладно продолжаем тесты. теперь по pptp подключается главный роутер как клиент к домашнему, форвардинг заработал домашний инет стал доступен)) возвращаю все как было (домашний цепляется к главному), трабла возвращается. Ладно думаю погляжу nchdump-ом появляются ли пакеты вообще на ng0 главного роутера. Запускаю и о чудо пошли пакеты в инет через домашний шлюз (правда с немного завышенными пингами и изредка с потерей пакетов). Вырубаю tcpdump хождение пакетов прекратилось)))) я был в ступоре)) Дальнейшая мысль что дело в promisc-mode в который переводит интерфейс tcpdump, запустил тспдамп с ключем "-p" (без перевода в промиск-моде) пакеты опять пошли. Теперь я вообще ничего не понимаю(((

Ребят кто сталкивался с подобным? Кто заинтересовался попробуйте у себя так поэкспериментировать. Очень хочется понять причину такого странного поведения. Давайте пообсуждаем, покумеркаем)) Конфиги фаервола и прочего рабочие юзаю это уже неск лет, только всегда шлюз сам цеплялся к провайдерам, а теперь требуется сделать обратное, чтобы "провайдер" сам цеплялся к шлюзу))

Аааа забыл еще сказать, что если жестко добавить маршрут route add дефолтный или на какой-нить хост в интете (rambler.ru например) на шлюз 192.168.254.2, то пакеты нормально ходят в инет через домашний рутер.

Т.е. трабл где-то в ipw fwd
Программа выполняет то, что вы сказали ей делать, а не то, что вы хотели, чтобы она делала.

Хостинговая компания 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 fwd на шлюз входящего подключения через mpd pptp

Непрочитанное сообщение hizel » 2009-07-21 23:31:04

подозрительный этот ipfw fwd, может надежнее прыгнуть до 7.2 и FIB-ами воспользоваться?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: ipfw fwd на шлюз входящего подключения через mpd pptp

Непрочитанное сообщение paradox » 2009-07-21 23:31:50

fwd не работает если нет ротинга

Аватара пользователя
Meloun
проходил мимо
Сообщения: 4
Зарегистрирован: 2008-11-17 14:06:51
Откуда: Калуга
Контактная информация:

Re: ipfw fwd на шлюз входящего подключения через mpd pptp

Непрочитанное сообщение Meloun » 2009-07-21 23:57:25

ipfw fwd мне очень нравится, как и сам фаервол, исковырял его уже вдоль и поперек. fwd использую также для пропорциональной балансировки, на 7.2 такая же байда с fwd((

роут до 192.168.254.2 есть, добавляется автоматом при появлении соединения точка-точка.
это проверил в первую очередь. если я с роутера цепляюсь как клиент, создается точно такое же соединение точка-точка, маршрут также есть и fwd работает, а вот при входящем подключении не хотит. еще более крышу сносит, что когда тспдампом мониторишь ng-интерфейс пакеты начинают форвардиться. Я бы забил на это, но работа форвардинга при прослушке дампом очень заинтересовала, хочется разобраться с этим. Очень похоже что пинание интерфейса через bpf действует волшебным образом.
Программа выполняет то, что вы сказали ей делать, а не то, что вы хотели, чтобы она делала.