URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 87981
[ Назад ]

Исходное сообщение
"IPFW pipe"

Отправлено Tamriel , 27-Янв-10 11:44 
Помогите пожалуйста с фаерволом. Сервер - шлюз в интернет для сети, к нему сделаны тунели с помощью vtun (ещё пара офисов обьединены с главным в одну сеть). Как сделать так, что б половина канала (канал 4 мбита) отдавалась на растерзание пользователями интернета, а вторая половина использовалась только тунелями (т.е. что б между сетями всегда было свободно 2 мбита)? в инет смотрит vr0 во внутреннюю сеть vr1, тунели - tun4, tun5. Фаервол - ipfw. Заранее спасибо.

Содержание

Сообщения в этом обсуждении
"IPFW pipe"
Отправлено Pahanivo , 27-Янв-10 12:26 
>Помогите пожалуйста с фаерволом. Сервер - шлюз в интернет для сети, к
>нему сделаны тунели с помощью vtun (ещё пара офисов обьединены с
>главным в одну сеть). Как сделать так, что б половина канала
>(канал 4 мбита) отдавалась на растерзание пользователями интернета, а вторая половина
>использовалась только тунелями (т.е. что б между сетями всегда было свободно
>2 мбита)? в инет смотрит vr0 во внутреннюю сеть vr1, тунели
>- tun4, tun5. Фаервол - ipfw. Заранее спасибо.

dummynet


"IPFW pipe"
Отправлено Tamriel , 27-Янв-10 13:50 
>>Помогите пожалуйста с фаерволом. Сервер - шлюз в интернет для сети, к
>>нему сделаны тунели с помощью vtun (ещё пара офисов обьединены с
>>главным в одну сеть). Как сделать так, что б половина канала
>>(канал 4 мбита) отдавалась на растерзание пользователями интернета, а вторая половина
>>использовалась только тунелями (т.е. что б между сетями всегда было свободно
>>2 мбита)? в инет смотрит vr0 во внутреннюю сеть vr1, тунели
>>- tun4, tun5. Фаервол - ipfw. Заранее спасибо.
>
>dummynet

Да эт я знаю, pipe правила в фаерволе.
Но я неочень понимаю принципы, как что ограничивать. Не получается ли так, что ограничивая трафик по внешнему каналу, мы тем самым даем ограничения на тунели?


"IPFW pipe"
Отправлено Aquarius , 27-Янв-10 14:15 
>>dummynet
>
>Да эт я знаю, pipe правила в фаерволе.
>Но я неочень понимаю принципы, как что ограничивать. Не получается ли так,
>что ограничивая трафик по внешнему каналу, мы тем самым даем ограничения
>на тунели?

в общем случае - получается.
для этого есть механизмы отделения мух от котлет


"IPFW pipe"
Отправлено Tamriel , 27-Янв-10 16:06 
>>>dummynet
>>
>>Да эт я знаю, pipe правила в фаерволе.
>>Но я неочень понимаю принципы, как что ограничивать. Не получается ли так,
>>что ограничивая трафик по внешнему каналу, мы тем самым даем ограничения
>>на тунели?
>
>в общем случае - получается.
>для этого есть механизмы отделения мух от котлет

Поэтому и написал тут, незнаю как это организовать правильно. Статьи и примеры ясности не добавили.


"IPFW pipe"
Отправлено Pahanivo , 27-Янв-10 16:56 
>>>>dummynet
>>>
>>>Да эт я знаю, pipe правила в фаерволе.

и?
>>>Но я неочень понимаю принципы, как что ограничивать. Не получается ли так,
>>>что ограничивая трафик по внешнему каналу, мы тем самым даем ограничения
>>>на тунели?

я ваше не очень понял полет вашей мысли
>>в общем случае - получается.
>>для этого есть механизмы отделения мух от котлет
>Поэтому и написал тут, незнаю как это организовать правильно. Статьи и примеры
>ясности не добавили.

оставте ваши общие рассуждения на "подумать перед сном", тут они никому не интересны


"IPFW pipe"
Отправлено Tamriel , 27-Янв-10 17:56 
>>>>Но я неочень понимаю принципы, как что ограничивать. Не получается ли так,
>>>>что ограничивая трафик по внешнему каналу, мы тем самым даем ограничения
>>>>на тунели?
>
>я ваше не очень понял полет вашей мысли

Весь трафик тунеля ходит ведь на самом деле через внешний интерфейс, смотрящий в интернет. В итоге ставя ограничение на скорость через внешний интерфейс я тем самым обрезаю скорость и тунелей.

Думаю вот так както надо?

ipfw add pipe 1 ip from any to 192.168.1.0/24 out via tun0
ipfw pipe 1 config bw 4096Kbit/s

ipfw add pipe 2 ip from any to 192.168.1.0/24 out via vr0
ipfw pipe 2 config bw 1024Kbit/s

Но наверняка проверить будут ли работать ограничения или нет немогу. Вообще принцып правильный?


"IPFW pipe"
Отправлено Pahanivo , 28-Янв-10 09:27 
>Думаю вот так както надо?
>ipfw add pipe 1 ip from any to 192.168.1.0/24 out via tun0
>ipfw pipe 1 config bw 4096Kbit/s
>ipfw add pipe 2 ip from any to 192.168.1.0/24 out via vr0
>ipfw pipe 2 config bw 1024Kbit/s
>
>Но наверняка проверить будут ли работать ограничения или нет немогу. Вообще принцып
>правильный?

принцип? не увидел тут принципа ))
принцип у ipfw простой: попал пакет под шаблон - обработался правилом - не попал, значит не обработался; с пайпами все логично продолжается: попал пакет под шаблон - прошол через трубу (уже труба его зарезала как нужно), не попал под шаблон - улетел на максимумуме дальше по списку правил ... да естно нужно внимательно читать доки чтобы выставаить нужные переменные в sysctl; ТАКЖЕ НЕ ЗАБЫВАЕМ ЧТО ПРАВИЛА СРАБАТЫВАЮТ ДЛЯ КАЖДОГО ИНТЕРФЕЙСА
о каких принципах ты рассуждаешь мне не совсем понятно )

ЗЫ например зачем у тебя режется один и тотже трафик дважды, причем первый раз оставляется канал заведомо шире чем второй ... непоняяяяятно ..


"IPFW pipe"
Отправлено Tamriel , 29-Янв-10 11:33 
>ЗЫ например зачем у тебя режется один и тотже трафик дважды, причем
>первый раз оставляется канал заведомо шире чем второй ... непоняяяяятно ..
>

ну какбы я рассчитывал что первая трубка при хождении пакетов с моей сети через тунель (толбишь в другую сеть), вторая - хождение внутренней сети в интернет.
Интернет раздается через сквид (прозрачно, fwd с 80 порта сервера на 3128 себя же, где висит сквид).
В sysctl встречал упоминание про параметр one_pass, который поидее мне нужно для такой системы выставить в 0, что б проходя трубку пакеты продолжали свой путь по фаерволу и нормально заварачивались. Хотя незнаю, все эти предположения строяцца на принципе "возможно это работает так" :)
А вот такая контсрукция тоже бредовая?

ipfw add pipe 1 ip from 192.168.2.0/24 to 192.168.1.0/24  
ipfw add pipe 1 ip from 192.168.1.0/24 to 192.168.2.0/24
ipfw pipe 1 config bw 4096Kbit/s
//пакеты из подсетей загонять в 4мбита

ipfw add pipe 2 ip from not 192.168.2.0/24 to 192.168.1.0/24 out via vr1
//поидее - любой трафик, кроме межсетевого, выходящий в сторону 1 сети через внутренний интерфейс
ipfw add pipe 2 ip from 192.168.1.0/24 to not 192.168.2.0/24 in via vr1
//аналогично, только режецца трафик идущий в сторону сервера (тобишь исходящий в интрент)
ipfw pipe 2 config bw 1024Kbit/s

При этом net.inet.ip.fw.one_pass 0, что б проходя трубки пакеты продолжали обрабатываться фаерволом (так много разграничений по пооду доступа определенных хостов к определенным служам и удаленным серверам)
Сильно не плевать, FreeBSD досталась в наследство, и сесть за какойнить учебник или мануал мне банально не дают времени :)


"IPFW pipe"
Отправлено Pahanivo , 29-Янв-10 14:11 
думаю тута требуется схема, на крайняк поллитра ... а то так и не понятно кто куда ходит

"IPFW pipe"
Отправлено Tamriel , 29-Янв-10 16:20 
>думаю тута требуется схема, на крайняк поллитра ... а то так и
>не понятно кто куда ходит

В первом посте вобщемто описана организация: внешний интерфейс, внутренний смотрящий в сеть1, и парочка тунельных интерфейсов, вторые концы которых смотрят в удаленные сети. 1 офису нужно урезать скорость выхода в инет, чтоб всегда был наполовину свободный канал для обмена данными между подсетями. Как ещё ассказать незнаю, это вполне полное описание того как все построено.


"IPFW pipe"
Отправлено Pahanivo , 29-Янв-10 17:44 
схему нарисуй !

"IPFW pipe"
Отправлено Tamriel , 29-Янв-10 21:37 
>схему нарисуй !

Для тебя или для себя? Если для тебя, то я несилён в псевдографике :) А если для себя - то я вобщемто ясно представляю что куда ходит, но затруднение вызывает синтаксис IPFW. На выходных постараюсь разобраться.


"IPFW pipe"
Отправлено Tamriel , 01-Фев-10 16:49 
Сделал малость по другому, но возник ещё один вопрос. Выставляя параметр one_pass в 0 мы заставляем тафик продолжать движение по цепочке правил, так вот собственно вопрос: если дальше по цепочке идет загоняние :) трафика в другую трубку, и пакет во второй раз удовлетворяет условиям - он пойдет во 2ую трубку или нет? Если да, то как тогда сделать разграничения в таком стиле:
add 1 pipe 1 all from any to 192.168.1.10 out via vr1
add 2 pipe 2 all from any to not 192.168.1.100 out via vr1

pipe 1 config bw 2048Kbit/s
pipe 2 config bw 1024Kbit/s

Смысл в следующем - режем скорость для всей сети до мегабита, для 1го хоста делаем исключение в 2 мбита и для ещё одного - вообще снимаем все ограничения.


"IPFW pipe"
Отправлено Pahanivo , 01-Фев-10 16:57 
>[оверквотинг удален]
>
>add 2 pipe 2 all from any to not 192.168.1.100 out via
>vr1
>
>pipe 1 config bw 2048Kbit/s
>pipe 2 config bw 1024Kbit/s
>
>Смысл в следующем - режем скорость для всей сети до мегабита, для
>1го хоста делаем исключение в 2 мбита и для ещё одного
>- вообще снимаем все ограничения.

прочитай уже нормально ман и да придек к тебе откровение ...
skip ...


"IPFW pipe"
Отправлено Tamriel , 01-Фев-10 22:38 
>[оверквотинг удален]
>>
>>pipe 1 config bw 2048Kbit/s
>>pipe 2 config bw 1024Kbit/s
>>
>>Смысл в следующем - режем скорость для всей сети до мегабита, для
>>1го хоста делаем исключение в 2 мбита и для ещё одного
>>- вообще снимаем все ограничения.
>
>прочитай уже нормально ман и да придек к тебе откровение ...
>skip ...

Ман не добрался почитать, но как всегда методом проб и ошибок, научного тыка и банальной эрудиции сделал все что хотел, все красиво и стройно. Главное - работает :) Всем мерси за переписку.