два kernel nat
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
Днсов и пингов, это вы имеете ввиду прекращение траффика на втором канале когда я кладу первый?
Услуги хостинговой компании 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/
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
да вот это:
днс сервера на клиентах в первой и во второй сетях прописаны одни и те же (и поэтому достп к ним умирет когда отключаем igb0) или нет?
если из "второй" сети пинговать mail.ru по IP то тоже не работает?Заметил интересную особенность - делаю так ifconfig igb0 down
соотвественно на первом канале все умирает, по логике вторая локалка должна же продолжать работать через второй канал?
А оказывается, что это не так.. Во второй локалке через первый канал продолжают работать только те соединения которые были подняты до отключения первого канала.. при этом с маршрутами все ок, т.к например вот как продолжает ходить с нее пинг до мейлру
13:20:12.521033 IP cl54-142-12-195.cl.metrocom.ru > mail.ru: ICMP echo request, id 512, seq 7177, length 40
13:20:12.539760 IP mail.ru > cl54-142-12-195.cl.metrocom.ru: ICMP echo reply, id 512, seq 7177, length 40
но если попробовать открыть ту же страничку mail.ru - ничего не открвается
днс сервера на клиентах в первой и во второй сетях прописаны одни и те же (и поэтому достп к ним умирет когда отключаем igb0) или нет?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
стоит кеширующий днс, в нем прописано редиректить на днс первого прова, которого отключаем, сейчас прописал на клиенте днс второго прова вместто - днс шлюза - есть выход в инет, отсюда вывод необходимо донастроить днс сервер прописав туда в качестве форвардных днсов днсы и второго прова. Что сейчас и сделаю
ну в общем прописал в качестве форвардов еще и днсы второго прова в конфиг бинда, теперь если а клиентской тачке обратно вернуть в качестве днса наш шлюз при выключенном первом канале - ничего ен работает а в консоль сыпятся ошибки вида
в общем понял я косяк в чем, в том что при отсутсвии основного канала бинду не послать запросы, т.к через второй канал он не может ходить, чтоб через два канала работал он, я так понимаю надо писать скрипт который будет определять через какую таблицу работать ему
ну в общем прописал в качестве форвардов еще и днсы второго прова в конфиг бинда, теперь если а клиентской тачке обратно вернуть в качестве днса наш шлюз при выключенном первом канале - ничего ен работает а в консоль сыпятся ошибки вида
Код: Выделить всё
Jul 16 17:01:11 zlon named[1617]: internal_send: 195.177.123.1#53: Network is down
Jul 16 17:01:13 zlon named[1617]: socket.c:1689: unexpected error:
Jul 16 17:01:13 zlon named[1617]: internal_send: 195.1.128.137#53: Network is down
Jul 16 17:01:15 zlon named[1617]: socket.c:1689: unexpected error:
Jul 16 17:01:15 zlon named[1617]: internal_send: 84.10.107.107#53: Network is down
Jul 16 17:01:18 zlon named[1617]: socket.c:1689: unexpected error:
Jul 16 17:01:18 zlon named[1617]: internal_send: 195.1.128.130#53: Network is down
Код: Выделить всё
[Thu 17:05 root@zlon]/usr/home/west#named -v
BIND 9.6.1
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
С этим все понятно, а вот касательно последнего рисунка, там видно что два внешних интерфейса имеют ипы из одной подсети и с одним шлюзом, как в данном случае грамотно можно разрулить канал?
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
бинд он такой - со странностями, да. Не хотите от него отказаться и использовать вместо него unbound ( http://www.lissyara.su/?id=1705 )? unbound насколько я помню при форвардинге не валиться, когда пропадает коннект на сетевухе...
Спасибо что проверили - теперь понятно что косячек был не в ipfw nat.
Спасибо что проверили - теперь понятно что косячек был не в ipfw nat.

Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
да незачто, бинд кстате говоря, тоже не валится, просто сыпет еррорами, мне кажется тут уже не зависит от того какой днс сервер используется, зависит от того, можно ли для его работы указывать два канала сразу 

- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
настраевать fib тут не надо - все по-ходу станет намного проще:chillivilli писал(а):С этим все понятно, а вот касательно последнего рисунка, там видно что два внешних интерфейса имеют ипы из одной подсети и с одним шлюзом, как в данном случае грамотно можно разрулить канал?
Код: Выделить всё
ipfw nat 123 config if igb0 same_ports
ipfw nat 124 config if igb1 same_ports
ipfw add nat 123 ip from 192.168.1.0/24 to any out
ipfw add nat 123 ip from any to 84.52.60.241 in via igb0
ipfw add nat 124 ip from 192.168.55.0/24 to any out
ipfw add nat 124 ip from any to 84.52.60.41 in via igb1
ipfw add allow ip from any to any
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
спасибо, попробую завтра сделать таким образом, у меня еще вопрос вот на рисунке видно, что посередине его делит пополам ||, вот по умолчанию с такими правилами не будет никаких перекрестных подключений? ну естественно для локальных необюходимо добавить что-то вроде
add deny all from 192.168.1.0/24 to 192.168.88.0/24
add deny all from 192.168.88.0/24 to 192.168.1.0/24
для внешних сделать аналогично? просто идея в том чтобы вот эти две половинки, которые видны на рисунке не пересекались между собой вообще никаких образом, и траффик ходил бы по одной половинке и по другой полностью независимо.
add deny all from 192.168.1.0/24 to 192.168.88.0/24
add deny all from 192.168.88.0/24 to 192.168.1.0/24
для внешних сделать аналогично? просто идея в том чтобы вот эти две половинки, которые видны на рисунке не пересекались между собой вообще никаких образом, и траффик ходил бы по одной половинке и по другой полностью независимо.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
Ну тут уже полет фантазии 
Для внешних адресов тогда тоже добавть что-то типа
Вообще для просветления очень рекомендую почитать nuclight'а http://nuclight.livejournal.com/124348.html 

Для внешних адресов тогда тоже добавть что-то типа
Код: Выделить всё
add deny all from 84.52.60.241 to 84.52.60.41
add deny all from 84.52.60.41 to 84.52.60.241

Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
да спасибо, читал уже эту статью, но пока для меня сложновато все переварить, да и там к тому же divert а не kernel nat мне кажется, между этими реализациями наверняка есть какая-то разница в плане прохождения пакетов.
А по поводу опции sysctl ...ip.fw.one_pass каким образом она влияет на правила фаерволла, я так понял что при указании в 1 пакеты проходят фаер один раз до момента с дивертом, если указывать 0 то, после прохождения правил ната они возвращаются в фаерволл и идут дальше.
Соотвественно из этого можно сделать вывод, что при указании этой опции в 1 - все запрещающие , разрешающие директивы необходмио писать до правид ната, в случае если опция равна 0 - тогда можно казыать запрещеющие разрешающие правила как до так и после ната?
Немогли бы вы мне разъяснить этот момент?
А по поводу опции sysctl ...ip.fw.one_pass каким образом она влияет на правила фаерволла, я так понял что при указании в 1 пакеты проходят фаер один раз до момента с дивертом, если указывать 0 то, после прохождения правил ната они возвращаются в фаерволл и идут дальше.
Соотвественно из этого можно сделать вывод, что при указании этой опции в 1 - все запрещающие , разрешающие директивы необходмио писать до правид ната, в случае если опция равна 0 - тогда можно казыать запрещеющие разрешающие правила как до так и после ната?
Немогли бы вы мне разъяснить этот момент?
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
Про это как раз написано у nuclight

Подобное выведение пакета из обработки ipfw в другую подсистему - не уникально
для divert, это общая схема работы в стеке FreeBSD. Например, действия pipe и
queue в dummynet, передача пакета в netgraph (а также появившийся в 7.0
ipfw nat) действуют по тому же принципу. Отличие, однако, в том, что в этих
подсистемах пакет остается внутри ядра, никакому демону не передается.
Поэтому, во-первых, подсистемы вместо номера правила сохраняют на него полный
указатель, и пакет вернется непосредственно в следующее правило, даже если оно
имеет тот же номер. Во-вторых, для таких подсистем действует настройка one_pass
в соответствующем sysctl - если она включена, то при повторном входе пакета в
ipfw после возврата из подсистемы dummynet (netgraph), ipfw_chk() сразу
вернется без прохода по правилам, как если бы к пакету был применен allow.
Это поведение позволяет упростить правила файрвола, когда известно, что если
пакет попал в трубу, то он уже точно отправляется дальше, и не требуется после
каждого pipe вставлять allow (чтобы пакет не попал в следующие правила и
следующие pipe/queue). Если же конфигурация требует сначала ограничить трафик,
а потом уже разбираться по замысловатым требованиям, что из него разрешить, а
что запретить, то упрощению правил наоборот будет способствовать отключенный
one_pass - поскольку с ним вместо allow, расположенных до pipe, пришлось бы
делать skipto.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
все таки не могу никак разобратся с парвилами
на двиерте у меня был фаервол типа стейтфулл со скипами и кипстейтами
тут же например в этой структуре
я хочу добавить разрешающее правило для внешнего интерфейса
например добавляю перед нат правилами
останольной траффик хочу порезать весь, но в то же время чтобы из сетки 192.168.1.0/24 можно было ходить например по порту 22 на внешние серваки, не пойму каким образом расставить правила грамотно?
т.е. не понятно где мне написать deny all from any to any , если пишу до ната естественно в него ничего непопадает, если пишу после ната т то, что не нужно поподает в нат
на двиерте у меня был фаервол типа стейтфулл со скипами и кипстейтами
тут же например в этой структуре
Код: Выделить всё
ipfw nat 123 config if igb0 same_ports
ipfw nat 124 config if igb1 same_ports
ipfw add nat 123 ip from 192.168.1.0/24 to any out
ipfw add nat 123 ip from any to 84.52.60.241 in via igb0
ipfw add nat 124 ip from 192.168.55.0/24 to any out
ipfw add nat 124 ip from any to 84.52.60.41 in via igb1
ipfw add allow ip from any to any
я хочу добавить разрешающее правило для внешнего интерфейса
например добавляю перед нат правилами
Код: Выделить всё
ipfw add allow all from any to 84.52.60.241 22 in
ipfw add allow from 84.52.60.241 22 to any out
т.е. не понятно где мне написать deny all from any to any , если пишу до ната естественно в него ничего непопадает, если пишу после ната т то, что не нужно поподает в нат
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
one_pass=1
как это будет работать:
Трафик пришедший от 192.168.1.0/24 и идущий в интернет будет получен через em1 и пройдет через все правила до 56 после чего его движение по проходу IN прекратитья и он перейдет в проход OUT. В проходе OUT он сново побежит по правилам и дойдет до правила 70. Попав в нат пакет будет обработан и сразу же выйдет в сеть (так как включен one_pass) через igb0 получив IP 84.52.60.241.
На обратном пути на проходе IN он дойдет до 80 после чего будет сразу же принят (так как включен one_pass) и перейдет в проход OUT где дойдет до правила 56 после чего попадет к клиенту.
Так трафик будет ходить через нат. Для 192.168.55.0 все аналогично.
Трафик пришедший из интернетов непонятно от кого на IP 84.52.60.241 дойдет до 80 и не будет принят так как в настройках ната включен deny_in. Аналогично для 84.52.60.41.
Трафик пришедший на 84.52.60.241:22 дойдет до 60 и будет принят. Ответный трафик с 84.52.60.241:22 будет разрешен через 61.
Трафик от самого рутера будет ходить через keep-state 65 и 66 правила.
К стати от keep-state 65 и 66 можно отказаться, если добавить правило
тогда весь локальный трафик от самого рутера будет ходить через нат.
Код: Выделить всё
# localhost sam na sebja razreshon
ipfw add 10 allow all from any to any via lo0
# rezhim trafik mezhdu klientami
ipfw add 20 deny all from any to 84.52.60.41 recv em0
ipfw add 30 deny all from any to 84.52.60.241 recv em1
ipfw add 40 deny all from any to any recv em0 xmit em1
ipfw add 50 deny all from any to any recv em1 xmit em0
# razreshaem poluchenie vsego ot klientov na vhod
ipfw add 55 allow all from any to any via em0
ipfw add 56 allow all from any to any via em1
# razreshaem soedinenie na 84.52.60.241:ssh
ipfw add 60 allow tcp from any to 84.52.60.241 22 in
ipfw add 61 allow tcp from me 22 to any out established
# obarbotka lokalnogo trafika ot nat rutera
ipfw add 65 check-state
ipfw add 66 allow all from me to any out keep-state
ipfw nat 123 config if igb0 same_ports deny_in
ipfw nat 124 config if igb1 same_ports deny_in
# perenapravlaem na nat vse chto prislo ot 192.168.1.0 i idet naruzhu cherez igb0
ipfw add 70 nat 123 ip from 192.168.1.0/24 to any out
# perenapravlaem obratno na nat vse chto prishli na igb0
ipfw add 80 nat 123 ip from any to 84.52.60.241 in via igb0
# perenapravlaem na nat vse chto prislo ot 192.168.55.0 i idet naruzhu cherez igb1
ipfw add 90 nat 124 ip from 192.168.55.0/24 to any out
# perenapravlaem obratno na nat vse chto prishli na igb1
ipfw add 100 nat 124 ip from any to 84.52.60.41 in via igb1
ipfw add 110 deny ip from any to any
Трафик пришедший от 192.168.1.0/24 и идущий в интернет будет получен через em1 и пройдет через все правила до 56 после чего его движение по проходу IN прекратитья и он перейдет в проход OUT. В проходе OUT он сново побежит по правилам и дойдет до правила 70. Попав в нат пакет будет обработан и сразу же выйдет в сеть (так как включен one_pass) через igb0 получив IP 84.52.60.241.
На обратном пути на проходе IN он дойдет до 80 после чего будет сразу же принят (так как включен one_pass) и перейдет в проход OUT где дойдет до правила 56 после чего попадет к клиенту.
Так трафик будет ходить через нат. Для 192.168.55.0 все аналогично.
Трафик пришедший из интернетов непонятно от кого на IP 84.52.60.241 дойдет до 80 и не будет принят так как в настройках ната включен deny_in. Аналогично для 84.52.60.41.
Трафик пришедший на 84.52.60.241:22 дойдет до 60 и будет принят. Ответный трафик с 84.52.60.241:22 будет разрешен через 61.
Трафик от самого рутера будет ходить через keep-state 65 и 66 правила.
К стати от keep-state 65 и 66 можно отказаться, если добавить правило
Код: Выделить всё
ipfw add 69 nat 123 ip from me to any out
Последний раз редактировалось terminus 2009-07-17 13:32:30, всего редактировалось 1 раз.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
Спасибо, за ответ, сейчас прочитаю, но столкнулся с новой непонятной проблемой, в той схеме "боевой" с последнего рисунка видно - что внешние сетевухи имеют одинаковую маску одинковый шлюз и их ипы из одной сети, сейчас воткнул это все в сетевушки, убрал из правил фаерволла setfib, но вот в чем проблема:
Jul 17 11:22:16 zlon kernel: arp: 84.52.60.1 is on igb0 but got reply from 00:1b:0d:ed:5b:c0 on igb1
Где ип 60.1 ип шлюза для обоих сетевых инетрфейсов. оба воткнуты в один свитч в который приходит много разных ипов
я так понимаю что две сетевухи не могут поделить шлюз, как пофиксить этот момент, при этом не работает инет из сети 192.168.55.0/24
вернул в прафила ipfw setfib, как было, добавил во вторую таблицу дефолт маршрут к 84.52.60.1
вот дефолт моей второй таблицы
но видно что он используется через интерефейс igb0, может быть можно каким-то образом указать маршрут именно для конерктного интрефейса, прочитал man route что-то не увидел там ничего
Jul 17 11:22:16 zlon kernel: arp: 84.52.60.1 is on igb0 but got reply from 00:1b:0d:ed:5b:c0 on igb1
Где ип 60.1 ип шлюза для обоих сетевых инетрфейсов. оба воткнуты в один свитч в который приходит много разных ипов
я так понимаю что две сетевухи не могут поделить шлюз, как пофиксить этот момент, при этом не работает инет из сети 192.168.55.0/24
вернул в прафила ipfw setfib, как было, добавил во вторую таблицу дефолт маршрут к 84.52.60.1
вот дефолт моей второй таблицы
Код: Выделить всё
Destination Gateway Flags Refs Use Netif Expire
default 84.52.60.1 UGS 0 4236 igb0
Последний раз редактировалось chillivilli 2009-07-17 11:38:20, всего редактировалось 1 раз.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
Попробуйте выставить через sysctl настройки net.link.ether.inet.log_arp_wrong_iface=0
Покажите netstat -rn
Покажите netstat -rn
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
net.link.ether.inet.log_arp_wrong_iface=0 этм мы просто погасим вывод в консоль ошибок имхо.
Код: Выделить всё
[Fri 12:37 root@zlon]/usr/home/west#setfib -0 netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 84.52.60.1 UGS 0 5018 igb0
84.52.60.0/26 link#1 UC 0 0 igb0
84.52.60.1 00:1b:0d:ed:5b:c0 UHLW 2 0 igb0 1147
127.0.0.1 127.0.0.1 UH 0 34 lo0
192.168.1.0/24 link#6 UC 0 0 em1
192.168.1.21 00:1f:c6:66:3a:27 UHLW 1 13 em1 1195
192.168.1.45 00:01:6c:e0:20:7c UHLW 1 5 em1 1195
192.168.1.63 00:11:5b:26:19:7e UHLW 1 14 em1 1197
192.168.1.67 00:1e:8c:ad:4b:64 UHLW 1 27 em1 1196
192.168.1.137 00:0c:6e:a4:fe:b2 UHLW 1 14 em1 1197
192.168.1.154 00:1b:fc:61:94:80 UHLW 1 23 em1 1198
192.168.1.185 00:a0:d1:9f:a7:cb UHLW 1 10308 em1 902
192.168.1.186 00:1a:4d:f9:42:10 UHLW 1 13 em1 1196
192.168.55.0/24 link#5 UC 0 0 em0
[Fri 12:39 root@zlon]/usr/home/west#setfib -1 netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 84.52.60.1 UGS 0 0 igb0
84.52.60.0/26 link#1 UC 0 0 igb0
84.52.60.1 00:1b:0d:ed:5b:c0 UHLW 2 0 igb0 1146
127.0.0.1 127.0.0.1 UH 0 8 lo0
192.168.1.0/24 link#6 UC 0 0 em1
192.168.1.21 00:1f:c6:66:3a:27 UHLW 1 0 em1 1194
192.168.1.45 00:01:6c:e0:20:7c UHLW 1 0 em1 1199
192.168.1.63 00:11:5b:26:19:7e UHLW 1 0 em1 1196
192.168.1.67 00:1e:8c:ad:4b:64 UHLW 1 0 em1 1195
192.168.1.137 00:0c:6e:a4:fe:b2 UHLW 1 0 em1 1196
192.168.1.154 00:1b:fc:61:94:80 UHLW 1 0 em1 1197
192.168.1.185 00:a0:d1:9f:a7:cb UHLW 1 0 em1 901
192.168.1.186 00:1a:4d:f9:42:10 UHLW 1 0 em1 1195
192.168.55.0/24 link#5 UC 0 0 em0
-
- мл. сержант
- Сообщения: 90
- Зарегистрирован: 2008-06-13 12:56:54
Re: два kernel nat
привет, а я вот делаю два ната вот так
после смотрю настройки ната
ничего не выводит
а здесь все нормально. че за фигня не пойму.
Код: Выделить всё
ipfw nat 123 config ip xx.xx.xx.xx
ipfw nat 124 config ip yy.yy.yy.yy
Код: Выделить всё
ipfw nat 123 show config
Код: Выделить всё
ipfw nat 124 show config
ipfw nat 124 config ip yy.yy.yy.yy
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
Че-то у иеня кризыс идей возник...net.link.ether.inet.log_arp_wrong_iface=0 этм мы просто погасим вывод в консоль ошибок имхо.
Я тут почесал в затылке... короче возникает вопрос: зачем необходимо использовать два внешних интерфейса подключенных к одной сети (igb0 и igb1)? Внешние IP можно же повесить все на одном igb0. Не?

Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
по идее да, можно прописать алиас, но тогда в моем представлении начнется путаница в написании правил для ipfw.. в общем, думаю над этим вопросом, если никаких идей не будет - попробую на один nic все прилепить
прописал алиас на igb0, ф фаере по прежнему рулится через две таблицы с одинаковыми default route, все работает вроде бы, конечно фаер нужно ненмого перелопатить... сейчас попробую углубиться в ваш пост относительно правил ipfw
прописал алиас на igb0, ф фаере по прежнему рулится через две таблицы с одинаковыми default route, все работает вроде бы, конечно фаер нужно ненмого перелопатить... сейчас попробую углубиться в ваш пост относительно правил ipfw
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
две таблицы уже не нужны...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
Так а касательно шлюза 192.168.1.17 ведь необходимо будет прописать маршрут через него на сервер 192.168.1.2 - на рисунке последнем есть, вот я и думаю что было бы грамотней вписывать этот маршрут во вторую таблицу. или я не правильно думаю? )
да и задача еще усложнится тем что добавится третья внтуренняя сетевуха с подсетью такой-же что и на принадлежащей ем1... и она будет нужна только для тоступа в сеть куда смотрит ем0, вот этот момент осталось уяснить как разрулить.. а в целом картинка общая уже сложилось, осталось отладить фаер добавить пару правил и т.д.
да и задача еще усложнится тем что добавится третья внтуренняя сетевуха с подсетью такой-же что и на принадлежащей ем1... и она будет нужна только для тоступа в сеть куда смотрит ем0, вот этот момент осталось уяснить как разрулить.. а в целом картинка общая уже сложилось, осталось отладить фаер добавить пару правил и т.д.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
192.168.1.17 обязательно должен быть в сети 192.168.1.0/24 ? Просто так как вы расписали (когда трафик с 20 на 17 ходит через 2) так обычно не делают... Я не уверен что 2 станет пересылать трафик между зостами из одной подсети.
Не совсем понятно про третью сетевуху. Она тоже будет смотреть в сеть 192.168.88.0 как и em0?
Не совсем понятно про третью сетевуху. Она тоже будет смотреть в сеть 192.168.88.0 как и em0?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
Так ведь на em1 там маска 255.255.255.240 я думаю что тот сервер 192.168.1.2 с другой маской соотвественно в другой подсети находится, следовательно чтобы до него дойти нужно пропистаь маршрут через 192.168.1.17? или не так
А третья сетевушка должна просто пропускать траффик по двум портам туда и сюда из сети 192.168.1.0/24 которая на ней прописана в сеть em0 т.е 88.1, в инет из нее не надо выходить и попадать из нее в сеть привязанную к em1 тоже не надо.
А третья сетевушка должна просто пропускать траффик по двум портам туда и сюда из сети 192.168.1.0/24 которая на ней прописана в сеть em0 т.е 88.1, в инет из нее не надо выходить и попадать из нее в сеть привязанную к em1 тоже не надо.
- terminus
- майор
- Сообщения: 2305
- Зарегистрирован: 2007-10-29 11:27:35
- Откуда: Рига
Re: два kernel nat
А блин
я же не саметил, что маска не /24!
Тогда значит просто прописать в таблице маршрутизации на нат рутере путь к сети 192.168.0.16/28
/etc/rc.conf
Третей сетевухе тогда назначить адрес из подсети 192.168.1.0/24 и в ipfw прописать
---
Вы тогда приведите все свои правила ipfw которые использовать собираетесь - я в своих правилах ставлю номера в соответствии с данными из своего предыдущего примера (там где были keep-state).
---
я че-то уже немного подзапарился

Тогда значит просто прописать в таблице маршрутизации на нат рутере путь к сети 192.168.0.16/28
/etc/rc.conf
Код: Выделить всё
static_routes="route1"
route_route1="-net 192.168.0.0 192.168.0.17 255.255.255.240"
Код: Выделить всё
ipfw add 17 allow tcp from 192.168.1.0/24 to 192.168.88.1/24 80,443 recv em3
ipfw add 18 allow tcp from 192.168.88.1/24 80,443 to 192.168.1.0/24 recv em0 xmit em3 out established
ipfw add 19 deny all from any to any in recv em3
Вы тогда приведите все свои правила ipfw которые использовать собираетесь - я в своих правилах ставлю номера в соответствии с данными из своего предыдущего примера (там где были keep-state).
---
я че-то уже немного подзапарился

Последний раз редактировалось terminus 2009-07-20 12:42:26, всего редактировалось 1 раз.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.
-
- мл. сержант
- Сообщения: 92
- Зарегистрирован: 2009-06-19 12:31:04
- Откуда: Санкт-Петербург
Re: два kernel nat
Ок, обязательно напишу вссе правила, когда окончательно заработает в боевом режиме все, на след неделе начну дописывать конфиг