Jump to content

Recommended Posts

Posted

Есть FreeBSD-box. Три сетевухи. Одна смотрит на прова (ADSL), две других - в две клиентские подсети.

Провайдер выделил пул реальных IP адресов.

Допустим, 1.1.1.0/24 - isp net

192.168.1.0/24 - сеть клиента 1

192.168.2.0/24 - сеть клиента 2

В будущем возможно увеличение кол-ва клиентов, на клиентские свичи с рутера прокинем 802.1q транк.

Сейчас прописано:

divert 8668 ip from 192.168.1.0/24 to not 192.168.1.0/24 out xmit xl1

divert 8669 ip from 192.168.2.0/24 to not 192.168.2.0/24 out xmit xl1

divert 8668 ip from not 192.168.1.0/24 to 1.1.1.1 in recv xl1

divert 8669 ip from not 192.168.2.0/24 to 1.1.1.2 in recv xl1

Сделано так для удобства разделения трафика и удобного его учета (провайдер присылает счет по IP адресам).

Меня смущают несколько корявые правила ipfw.

Пока только две клиетские подсети, с этим можно смириться, но когда их будет 5... Этим будет очень трудно рулить.

Смущает не кол-во правил, а эти to not 192.168...

Да, клиенты из разных подсетей друг дружку не видят (это отключено в правилах выше).

Пойдет ли в данном случае что-то вроде этого:

divert 8668 ip from 192.168.1.0/24 to any out xmit xl1

divert 8669 ip from 192.168.2.0/24 to any out xmit xl1

divert 8668 ip from not 192.168.1.0/24 to 1.1.1.1 in recv xl1

divert 8669 ip from not 192.168.2.0/24 to 1.1.1.2 in recv xl1

Posted

А не проще ли заменить все это на

divert 8668 ip from 192.168.1.0/24 via xl1 ?

не совсем понятно зачем

divert 8668 ip from 192.168.1.0/24 to not 192.168.1.0/24 out xmit xl1

divert 8669 ip from 192.168.2.0/24 to not 192.168.2.0/24 out xmit xl1

Проще сделать диверт к примеру

divert 8668 ip from any to any via интр в сторону прова.

Т.е. весь трафик в инет дивертить. А дальше рулить подсетями уже внутри.

Posted

Fl@sh,

Я уже писал, что пров считает по IP куда/откуда и сколько. Мне нужно, чтобы траффик от разных клиентов исходил от разных IP. Для этого и сделан такой хитрый NAT. Просто для упрощения расчетов с провом. Да, я считаю траф по клиентским IP, но пров-то считает по внешним.

Posted

ну а разве нельзя так сделать

ipfw add 1 ip from 192.168.1.0/24 to ip_prov in out xmit xl1

ipfw add 2 ip from ip_prov to 192.168.1.0/24 in recv xl1

пров то с тебя будет снимать с общего ip трафик. А ты сможешь внутри себя обсчитывать клиентов.

Posted

Еще раз читаем внимательно - у меня не 1 внешний IP, а сеть /24

Объясняю еще раз для тех, кто в танке:

Задача поделить траффик от разных клиентских сеток на разные внешние IP адреса.

Зачем так сделано, читать выше

Fl@sh, По вашему получится, что трафик перемешается, так как будет исходить и приходить от одного IP.

Перечитайте еще раз начало поста, пожалуйста :-)

Posted

можно заюзать pf, тогда всё будет легко и просто

nat on xl1 from 192.168.1.0/24 to !192.168.0.0/24 -> 1.1.1.101

nat on xl1 from 192.168.2.0/24 to !192.168.0.0/24 -> 1.1.1.102

nat on xl1 from 192.168.3.0/24 to !192.168.0.0/24 -> 1.1.1.103

 

и т.д.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.