Название: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 30 Августа 2009, 15:18:23 Нужен совет, уже замучался.
Фаервол (для теста): Код: #!/bin/sh - Есть 2 шлюза 10.46.16.1 и 172.16.12.12 3 интерфейса (2 внешних что выше, 1 локальный 192.168.13.1) nat pf: Код: nat pass on re0 from 192.168.13.0/24 to any -> re0 Билинг вообще выключен (ядро не запущено и т.д.). в rc.conf изменяю дефаулт роут на шлюз 1 провайдера - клиент работает через 1, на шлюз 2 - соответсвенно через 2. С настройками тут все хорошо. Тепер прописую правило (когда гейт по умолчанию 10.46.16.1): Код: ipfw add 150 fwd 10.46.16.1 ip from 192.168.13.12 to any Добавляю правило, только шлюз провайдера 2: Код: ipfw add 150 fwd 172.16.12.12 ip from 192.168.13.12 to any Если дефаулт роут на шлюз провайдера 2 - ситуация та же самая, при форвардинге на шлюз по умолчанию работает - дальше нет. В чам может быть прболема? Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 30 Августа 2009, 20:37:56 Так поможет кто нибудь?
Название: Re: 2 канала ipfw fwd Отправлено: elite от 30 Августа 2009, 20:42:08 Так поможет кто нибудь? лениво :PНазвание: Re: 2 канала ipfw fwd Отправлено: Efendy от 30 Августа 2009, 22:54:07 вроде бы детально расписал, но как-то непонятно. Во-первых юзай tcpdump чтоб понять куда идут пакеты, с какими ip и т.д. Во-вторых fwd надо делать после ната - помнится когад я тестировал несколько лет назад, fwd отсылал пакет в пунк назначения минуя все цепочки, через которые он должен был пройти
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 31 Августа 2009, 08:41:56 Постараюся обяснить подробнее. NoDeny настроен по документации, со всем разобрался, все работает и шейпится (скорость к основным и альтернативным направлениям задется без проблем). Фаервол 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 Настройки pf.conf: Код: nat pass on re0 from 192.168.13.0/24 to any -> re0 Настройки ip.firewall: Код: #!/bin/sh - С данными настройками все работает по маршруту заданому в 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 интернет полностю перестает работать, пакеты не идут. Подскажыте пожалуйста в чем может быть проблема? Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 31 Августа 2009, 11:51:34 Блин, да хоть направте что в таком случае исполльзовать. Неужели никто не стыкался с таким?
Название: Re: 2 канала ipfw fwd Отправлено: Efendy от 31 Августа 2009, 12:05:57 я ж объяснил - я сталкивался с ситуацией, когда fwd отправляло пакет в пункт назначения напрямую, минуя дальнейшую обработку пакета. Т.е вполне вероятно, что пакет в нат просто не попадает. Проверить это поможет tcpdump - смотришь на адреса исходящий пакетов, если не натятся - значит посылка верна, натятся - ищем проблему в другом месте, пакеты вообще не отправляются - другую и т.д. В Unix громадное количество средств понять что происходит, все можно отследить по цепочке.Просто нарисовать конфиги и любоваться почему не работает - этого не дсотаточно
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 08:04:12 Да, пакет отправляется не наченым дальше.
1 срабатывает фаер ipfw а уж потом pf. Подскажыте какими правилами можно заставить пакет уйти уже после pf nat. Название: Re: 2 канала ipfw fwd Отправлено: Efendy от 01 Сентября 2009, 09:07:09 Уточним некоторые моменты. У тебя используется маршрутизация по источнику, т.е в зависимости от того, от какого клиента пришел пакет, ты его направляешь в определенный канал? Если нет, то значит это не маршрутизация по источнику и тебе нужно просто прописать роуты.
Возможно, (ищи в гугле), во фре уже есть штатные средства обеспечить корректно маршрутизация по источнику, я не знаю. Что касается fwd - юзай нат, к которому можно иметь доступ в Ipfw (ядерный или natd) Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 10:33:36 Спасибо Efendy, сейчас заюзал natd - все работает со следующими правилами:
Код: natd -n vge0 -p 8668 Но, хотел бы использовать ядерный нат (kernel nat), пробую создать правила по аналогии к natd: Код: ${f} nat 1 config if 10.46.16.200 Ничего не работает, fwd правило пробывал по разному делать - не получается. Тоесть работает только через шлюз по умолчанию. Как зафорвардить пакеты на другой шлюз с ядерного ната? Название: Re: 2 канала ipfw fwd Отправлено: Efendy от 01 Сентября 2009, 10:42:28 не смотря на правила, one_pass должно быть равно 0. сделал?
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 11:08:54 Нет, в доке по билингу пишет ясно что предусматривается что one.pass должно быть 1.
firewall.html - Во всех примерах предусматривается, что переменная net.inet.ip.fw.one_pass=1. Если сделать 0, биллинг нормально будет формировать правила без переделки nofire.pl? Или ето только для firewall.conf? может у кого нить есть правила для опции 0. Название: Re: 2 канала ipfw fwd Отправлено: Efendy от 01 Сентября 2009, 11:59:08 в доке написано для pf nat, а мы говорим о ядерном nat. Зачем нужна переменная one_pass, для того чтобы всегда быть установленной в 1? Ессно, установка в 0 потребует доработки фаервола
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 12:28:10 Хм, только фаервола /etc/rc.firewall или также скрипта NoDeny - nofire.pl?
Если только фаервола то я справлюсь... Название: Re: 2 канала ipfw fwd Отправлено: Efendy от 01 Сентября 2009, 13:27:10 nofire.pl тоже. Поищи в форуме топик про прозрачную проксю. Там как раз используется one_pass=0
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 17:22:03 Может есть у кого фаервол переделаный под natd или nat? Имею ввиду чтоб ограничывал скорость и т.д., а не только давал доступ (как в мануале). Пробую сам создать но никак не выходит.
Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 22:12:47 Так сто насчет конфига с natd? Подскажыте куда правила на диверт на нат поставить...
Название: Re: 2 канала ipfw fwd Отправлено: Elisium от 01 Сентября 2009, 22:35:26 Мб тут есть чето полезное ? (ссылка - тыц) (http://groups.google.com.ua/group/nodeny/browse_thread/thread/733b0bd03a743ce4?hl=ru#)
Эээм .. посмотрел повнимательнее - тема то, вроде, на Вашу смахивает )) Название: Re: 2 канала ipfw fwd Отправлено: Александр (AleksHr) от 01 Сентября 2009, 22:59:35 Ето моя тема... но тогда только пробывал, а сейчас реально ставлю билинг.
В биллинг лишь можно добавить: ipfw add $num divert $natd_port ip from $user_ip to any переменные естественно свои. Куда в билинг? После какой строки и т.д.? Как правило сформировать правила фаервола если использовать natd? Я думаю многим интересна даная тема. Можете подсказать? Название: Re: 2 канала ipfw fwd Отправлено: Elisium от 01 Сентября 2009, 23:22:45 У меня есть другая тема - ВОТ (http://demo.nodeny.com.ua/forum/index.php?topic=86.0)
Задача та же, только по другому сделано .. не сильно ровно, но работает (( Хотя, хотелось бы, как у Вас )) |