Подробное руководство по ipfw nat
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Первый пример заработал.
Хотя есть не очень приятная(привычная) особенность(по сравнению с natd ) на счет того, что если на компе-роутере поднят веб-сервер, фтп и прочее, приходится в нате редиректить порты или уводить пакеты на эти порты до ната (чтобы из мира достучаться до вебсервера\фтп и т.д.).
Так и должно быть?
Хотя есть не очень приятная(привычная) особенность(по сравнению с natd ) на счет того, что если на компе-роутере поднят веб-сервер, фтп и прочее, приходится в нате редиректить порты или уводить пакеты на эти порты до ната (чтобы из мира достучаться до вебсервера\фтп и т.д.).
Так и должно быть?
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2009-06-17 14:02:58
Re: Подробное руководство по ipfw nat
Ну как-бы если использовать natd и политику deny all from any to any, порты нужно открывать в любом случае
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Открывать порты в фаере - само-собой.
Речь идет именно о натовом редиректе портов для внешних служб роутера.
Речь идет именно о натовом редиректе портов для внешних служб роутера.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
там все крутится вокруг директивы deny_in - уберете ее и все входяшие соединения будут проходить через нат.kpp писал(а):Открывать порты в фаере - само-собой.
Речь идет именно о натовом редиректе портов для внешних служб роутера.
моя параноя не позволяет мне так настраевать наты - имхо спокойнее сначала все зарезать, а потом только то что надо разрешать...
как это все было при natd я особо не в курсах - я его почти не пользовал за ненадобностью.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Кто разъяснит где описана такая нотация - вызова скрипта setfib
В мане не нахожу.
И пока непонятно откуда берется вообзе скрипт /usr/local/etc/rc.d/setfib1
Код: Выделить всё
add 1040 setfib 0 ip from any to any in recv fxp1
И пока непонятно откуда берется вообзе скрипт /usr/local/etc/rc.d/setfib1
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
На счет директивы deny_in вопрос изучил - убирал, one_pass enable, однако все равно пока явно порты не перебросишь - извне портов не видно.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Если делаю так:
порт 80 виден из мира.
Если делаю
или
не видно 80-го.
Код: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports redirect_port tcp ${ip_net1}:80 80
${fw} add nat 1 ip from any to any via ${if_net1}
порт 80 виден из мира.
Если делаю
Код: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports deny_in
${fw} add nat 1 ip from any to any via ${if_net1}
или
Код: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports
${fw} add nat 1 ip from any to any via ${if_net1}
не видно 80-го.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Ага, setfib - это команда управления таблицами маршрутизации, курю ман
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
из моей заметки он берется.kpp писал(а): И пока непонятно откуда берется вообзе скрипт /usr/local/etc/rc.d/setfib1
в системе пока нет стандартных способов установки маршрутов в дополнительных таблицах маршрутизации.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
а какие правила прописаны после вызова ната? не deny all from any to any случайно?kpp писал(а): илиКод: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports ${fw} add nat 1 ip from any to any via ${if_net1}
не видно 80-го.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Для теста сделал так:
нет 80-го
Код: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports
${fw} add nat 1 ip from any to any via ${if_net1}
${fw} add allow tcp from any to me 80 in via ${if_net1}
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2009-06-17 14:02:58
Re: Подробное руководство по ipfw nat
Я так понимаю, при использовании setfib для разных групп пользователей, висящих на одном интерфейсе мы получим следующее:
Код: Выделить всё
add 1040 setfib 0 ip from table(1) to any in recv fxp0 keep-state
add 1060 setfib 1 ip from table(2) to any in recv fxp0 keep-state
add 1070 allow ip from any to any via fxp0
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
если написать так:
или так:
Все замечательно, не пойму где собака порылась...
Код: Выделить всё
${fw} add allow tcp from any to me 80 in via ${if_net1}
${fw} nat 1 config log if ${if_net1} reset same_ports
${fw} add nat 1 ip from any to any via ${if_net1}
Код: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports redirect_port tcp ${ip_net1}:80 80
${fw} add nat 1 ip from any to any via ${if_net1}
${fw} add allow tcp from any to me 80 in via ${if_net1}
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
kpp писал(а):Для теста сделал так:нет 80-гоКод: Выделить всё
${fw} nat 1 config log if ${if_net1} reset same_ports ${fw} add nat 1 ip from any to any via ${if_net1} ${fw} add allow tcp from any to me 80 in via ${if_net1}
хз, частности какие-то... по идее бы должо работать, если нету deny_in и one_pass=0
перезапустите комп если есть интерес дальше вылавливать почему не пропускает - у меня такое иногда случалось, что при больших изменениях в настройках ната помогал рестарт машины...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
Вы полностью задачу поставитье, а нито получается какой-то монолог - вы мне про Фому, а я вам про Ерему...Snake писал(а):Я так понимаю, при использовании setfib для разных групп пользователей, висящих на одном интерфейсе мы получим следующее:
Код: Выделить всё
add 1040 setfib 0 ip from table(1) to any in recv fxp0 keep-state add 1060 setfib 1 ip from table(2) to any in recv fxp0 keep-state add 1070 allow ip from any to any via fxp0
Мне непонятно - вам необходимо динамическое распределение трафика локальной сети между двумя провайдерами, и только для некоторых пользователей из таблиц (1) и (2) надо жестко указать чтобы они ходили через своего?
Или вам просто надо жестко разделить - (1) через первого прова, а (2) через второго?
Если просто жесткое разделение то используйте пример 4 - его и модифицируете!!!
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2009-06-17 14:02:58
Re: Подробное руководство по ipfw nat
Задача - заворачивать пользователей из table 1 на первого прова, из table 2 на другого. Жестко. За основу да, таки надо брать пример 4, но интерфейс у нас один. Я потому и спрашиваю
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
тогда keep-state уберите - оно там никчему. а так у вас идея правильная.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Гм.. после ребута системы заработало.
Нужно будет провести ряд тестов...
Как вариант ipfw нужно перестартовывать /etc/rc.d/ipfw restart
Мда.. стОит внести какие-нить изменения в правила и перестартовать ipfw и все опять возвращается на круги своя...
Пока как вариант ребутать систему после любых изменений правил фаера..
Ладно, покопаю еще
Нужно будет провести ряд тестов...
Как вариант ipfw нужно перестартовывать /etc/rc.d/ipfw restart
Мда.. стОит внести какие-нить изменения в правила и перестартовать ipfw и все опять возвращается на круги своя...
Пока как вариант ребутать систему после любых изменений правил фаера..
Ладно, покопаю еще
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
По крайней мере если было deny_in его нужно убрать - полюбому перегруз нужен.
Я перегрузился - все работает - решил потестить - добавил deny_in - все, как и должно, было перестало работать, потом убрал deny_in - не работает...
Перегруз - работает...
Я перегрузился - все работает - решил потестить - добавил deny_in - все, как и должно, было перестало работать, потом убрал deny_in - не работает...
Перегруз - работает...
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Перехожу к 5-му примеру.
В этих строках точно сетевой интерфейс локальной сети(fxp0), а не интерфейсы провайдеров?
По идее где-то должно быть определение жив ли провайдер или нет, чтобы переключаться автоматически на рабочего прова.
Код: Выделить всё
add 1010 prob 0.5 skipto 1060 ip from any to any in recv fxp0
add 1040 setfib 0 ip from any to any in recv fxp0 keep-state
add 1050 allow ip from any to any via fxp0
add 1060 setfib 1 ip from any to any in recv fxp0 keep-state
add 1070 allow ip from any to any via fxp0
По идее где-то должно быть определение жив ли провайдер или нет, чтобы переключаться автоматически на рабочего прова.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
там все правильно.
лучше почитайте объяснение к примеру - я там по шагам расписал то, как пакетики будут ходить, и про выпадение одного из провайдеров тоже есть замечание.
лучше почитайте объяснение к примеру - я там по шагам расписал то, как пакетики будут ходить, и про выпадение одного из провайдеров тоже есть замечание.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- лейтенант
- Сообщения: 613
- Зарегистрирован: 2009-08-05 16:10:46
- Откуда: Украина Днепропетровск-Киев
- Контактная информация:
Re: Подробное руководство по ipfw nat
Дочитал замечания к примеру 5. Часть вопросов отпала.
Балансировка, конечно хорошая и нужная штука, но контроль и автоматичекое переключение между провайдерами в случае необходимости - все-таки
задача более первостепенная (инет должен быть всегда).
Моя задача сделать автоматическое переключение между провайдерами + по возможности максимальное использование всей суммарной пропускной способности каналов.
На мой взгляд, все описание с примерами можно было упростить вынеся Dummynet (статья все-таки называется "Подробное руководство по ipfw nat") в отдельную статью.
Балансировка, конечно хорошая и нужная штука, но контроль и автоматичекое переключение между провайдерами в случае необходимости - все-таки
задача более первостепенная (инет должен быть всегда).
Моя задача сделать автоматическое переключение между провайдерами + по возможности максимальное использование всей суммарной пропускной способности каналов.
На мой взгляд, все описание с примерами можно было упростить вынеся Dummynet (статья все-таки называется "Подробное руководство по ipfw nat") в отдельную статью.
Нет, ребята, я не гордый. Не загадывая вдаль, так скажу: зачем мне орден? Я согласен на медаль.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: Подробное руководство по ipfw nat
для меня примеры 4 и 5 неатуальны - я их выдумал с потолка. двух провайдеров у меня нет и обкатывать/экспериментировать с ними мне негде/незачем.
Придумайте и реализуйте схему мониторинга (пинг) и переключения на один рабочий канал, когда другой выпал (ipfw set swap) - сделаете, внесем в статью как пример.
Придумайте и реализуйте схему мониторинга (пинг) и переключения на один рабочий канал, когда другой выпал (ipfw set swap) - сделаете, внесем в статью как пример.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2009-06-17 14:02:58
Re: Подробное руководство по ipfw nat
При использовании mpd кстати скрипт для setfib необязятелен - можно повесить назначение шлюза для setfib на сам mpd, чтобы при установке соединения он выставлял нужный
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2009-06-17 14:02:58
Re: Подробное руководство по ipfw nat
Время от времени возникает такая проблема - закачки "затыкаются" на одном и том же месте. Тоже самое с видео с ютуба. Причем слабо зависит от загруженности канала. Что это может быть?