Извиняюсь за идиотское название топика, пришлось сократить) Постараюсь развернуто описать трабл.
Итак есть машинка-шлюз с 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.254.2 недоходят.
ладно продолжаем тесты. теперь по pptp подключается главный роутер как клиент к домашнему, форвардинг заработал домашний инет стал доступен)) возвращаю все как было (домашний цепляется к главному), трабла возвращается. Ладно думаю погляжу nchdump-ом появляются ли пакеты вообще на ng0 главного роутера. Запускаю и о чудо пошли пакеты в инет через домашний шлюз (правда с немного завышенными пингами и изредка с потерей пакетов). Вырубаю tcpdump хождение пакетов прекратилось)))) я был в ступоре)) Дальнейшая мысль что дело в promisc-mode в который переводит интерфейс tcpdump, запустил тспдамп с ключем "-p" (без перевода в промиск-моде) пакеты опять пошли. Теперь я вообще ничего не понимаю(((
Ребят кто сталкивался с подобным? Кто заинтересовался попробуйте у себя так поэкспериментировать. Очень хочется понять причину такого странного поведения. Давайте пообсуждаем, покумеркаем)) Конфиги фаервола и прочего рабочие юзаю это уже неск лет, только всегда шлюз сам цеплялся к провайдерам, а теперь требуется сделать обратное, чтобы "провайдер" сам цеплялся к шлюзу))
Аааа забыл еще сказать, что если жестко добавить маршрут route add дефолтный или на какой-нить хост в интете (rambler.ru например) на шлюз 192.168.254.2, то пакеты нормально ходят в инет через домашний рутер.
Т.е. трабл где-то в ipw fwd