ipfw, dummynet, natd

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Summoner
рядовой
Сообщения: 15
Зарегистрирован: 2008-04-17 23:24:07
Контактная информация:

ipfw, dummynet, natd

Непрочитанное сообщение Summoner » 2008-11-27 12:03:10

Добрый день.
Недавно стала необходимость настроить сервер с шейпером трафика... Использование прокси забраковали сразу(Начальство)... По памяти вспомнил что можно реализовать через DUMMYNET.... Написал небольшой списко правил для фаервола:

Код: Выделить всё

#!/bin/sh
fwcmd='/sbin/ipfw -q'
home_net='10.0.0.0/24'
user='10.0.0'

user_ports='80,21,25,110,443,53'
inet_ports='80,21,25,110,443,53'
out='tun0'
net='rl1'

${fwcmd} -f flush
${fwcmd} -f pipe flush
${fwcmd} -f queue flush

${fwcmd} add 100 check-state
${fwcmd} add 300 allow ip from any to any via lo
${fwcmd} add 310 allow ip from me to any keep-state
${fwcmd} add 320 allow ip from any to me ${inet_ports} via ${out} keep-state
${fwcmd} add 400 allow tcp from any to me ${user_ports} via ${net} keep-state
#
${fwcmd} add 530 divert natd ip from ${net} to any out via ${out}
${fwcmd} add 540 divert natd ip from any to me in via ${out}
#
${fwcmd} add 600 deny ip from 10.0.0.0/8 to any out via ${out}
${fwcmd} add 610 deny ip from 172.16.0.0/12 to any out via ${out}
${fwcmd} add 620 deny ip from 192.168.0.0/16 to any out via ${out}
#
${fwcmd} pipe 7002 config bw 128Kbit/s
${fwcmd} pipe 8002 config bw 128Kbit/s
${fwcmd} add 7002 pipe 7002 ip from any to ${user}.2 in via ${net}
${fwcmd} add 8002 pipe 8002 ip from ${user}.2 to any out via ${net} limit src-addr 20
#
${fwcmd} pipe 7003 config bw 64Kbit/s
${fwcmd} pipe 8003 config bw 64Kbit/s
${fwcmd} add 7003 pipe 7003 ip from any to ${user}.3 in via ${net}
${fwcmd} add 8003 pipe 8003 ip from ${user}.3 to any out via ${net} limit src-addr 20

${fwcmd} add 50000 deny ip from any to any
Хотелось бы узнать ваше мнение.... все ли правила составлены правильно... не допустил ли я серьезных ошибок при составлении правил...
Заранее благодарен.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.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/

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение dikens3 » 2008-11-27 12:41:05

Summoner писал(а):Добрый день.
Недавно стала необходимость настроить сервер с шейпером трафика... Использование прокси забраковали сразу(Начальство)...
Однако это решать тому, кто реализует, а не командует.
И чем прокси не устроила можно поинтересоваться?
Summoner писал(а):все ли правила составлены правильно... не допустил ли я серьезных ошибок при составлении правил...
Попробуй, тут немногие этим занимаются.

Вот тебе в помощь ссылка:
http://www.nag.ru/2005/1106/1106.shtml
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Summoner
рядовой
Сообщения: 15
Зарегистрирован: 2008-04-17 23:24:07
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение Summoner » 2008-11-27 12:48:48

И чем прокси не устроила можно поинтересоваться?
Хм... во первых начальство не сможет играть в линейку... а во вторых часть софт(Спицефического) изначально не может работать с проксей.... приходиться ставить и настраивать FreeCup и ему подобные...

За ссылку спосибо :)

silver001
проходил мимо
Сообщения: 2
Зарегистрирован: 2008-11-21 6:28:08

Re: ipfw, dummynet, natd

Непрочитанное сообщение silver001 » 2008-11-27 13:55:10

Pipe-ы, по-моему лучше писать до 100-го правила, по крайней мере до divert-а. В pipe также лучше не включать внутреннюю сетку, а то скорость скачки с интернета и локалки будет одинаковой. Еще скажу, что pipe_ы нормально работают при малом числе подключений, у меня при числе подключений больше 20 и-нет просто повисал у всех, канал, правда тоже был маленький, но в принципе такого быть не должно. Вообще, я бы сначала данный конфиг обкатал на рабочей сети без pipe-ов, а потом просто бы добавил правила с pipe-ами и смотрел результат.

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: ipfw, dummynet, natd

Непрочитанное сообщение hizel » 2008-11-27 14:13:49

интересно, а дружат ли pipe и keep-state правила :/
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Summoner
рядовой
Сообщения: 15
Зарегистрирован: 2008-04-17 23:24:07
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение Summoner » 2008-11-27 14:50:16

Код: Выделить всё

В pipe также лучше не включать внутреннюю сетку, а то скорость скачки с интернета и локалки будет одинаковой.
Недумаю... это правила должно сработать раньше pipe'ов.... поидее.... и тем самым открыть пустить тарфик на прямую к серверу без пайпов.... (Сеть одноранговая)

Код: Выделить всё

${fwcmd} add 400 allow tcp from any to me ${user_ports} via ${net} keep-state
Еще скажу, что pipe_ы нормально работают при малом числе подключений, у меня при числе подключений больше 20 и-нет просто повисал у всех, канал, правда тоже был маленький, но в принципе такого быть не должно.
Вот тут скажу точное что 20-30 не проблема и работают весьма шустро... а вот 50-100 лучше задуматься о биленге
Вообще, я бы сначала данный конфиг обкатал на рабочей сети без pipe-ов, а потом просто бы добавил правила с pipe-ами и смотрел результат.
Это я сделал общею схему... сейчас просто работаю удаленно поэтому тестировать нерескую....

А вообще каким образом лучше всего организовать небольшой биллинг (Сейчас машин 12+ 4 ноута)... (Но уже было арендовано дополнительное помещение так что машин будет становиться больше...)
интересно, а дружат ли pipe и keep-state правила :/
Думаю что-то типо такого можно сделать:

Код: Выделить всё

${fwcmd} add 7002 pipe 7002 ip from any to ${user}.2 in via ${net} keep-state

silver001
проходил мимо
Сообщения: 2
Зарегистрирован: 2008-11-21 6:28:08

Re: ipfw, dummynet, natd

Непрочитанное сообщение silver001 » 2008-11-27 18:08:21

А вообще каким образом лучше всего организовать небольшой биллинг (Сейчас машин 12+ 4 ноута).

Можно сделать на основе trafd+perl script. Trafd считает траффик, скрипт добавляет правила в фаерволл при превышении, cron-ом запускаем trafd и perl-script. От самых хитрых не спасет, но для офиса потянет. Главное, баз никаких не надо ставить и считает практически все с интерфейса.

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: ipfw, dummynet, natd

Непрочитанное сообщение paradox » 2008-11-27 18:13:56

если канал анлимит
то невижу смысла и считать
а если нужна надежность
толучше уже mpd - pppoe/pptp

Summoner
рядовой
Сообщения: 15
Зарегистрирован: 2008-04-17 23:24:07
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение Summoner » 2008-11-27 19:04:02

толучше уже mpd - pppoe/pptp
А где можно почитать на эту тему? Желательно с наглядным примером.... а в mpd можно поставить шейпер?
И вообще интересно было бы с этим разрбраться :)

paradox
проходил мимо
Сообщения: 11620
Зарегистрирован: 2008-02-21 18:15:41

Re: ipfw, dummynet, natd

Непрочитанное сообщение paradox » 2008-11-27 19:06:50

шейпер вообще то ставиться отдельно
не ну есть конечно извращенцы которые тулят в Mpd и ldap и шейпер и биллинг

почитать
на форуме тысщу раз обсуждалось

neyro
сержант
Сообщения: 187
Зарегистрирован: 2008-03-07 20:24:25
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение neyro » 2008-11-28 15:47:33

Summoner писал(а):
И чем прокси не устроила можно поинтересоваться?
Хм... во первых начальство не сможет играть в линейку... а во вторых часть софт(Спицефического) изначально не может работать с проксей.... приходиться ставить и настраивать FreeCup и ему подобные...

За ссылку спосибо :)
Никто не заставляет все порты на проксю заворачивать...только 80 и 8080(в прозрачном режиме)..больше не нужно.

Summoner
рядовой
Сообщения: 15
Зарегистрирован: 2008-04-17 23:24:07
Контактная информация:

Re: ipfw, dummynet, natd

Непрочитанное сообщение Summoner » 2008-11-28 18:46:58

Никто не заставляет все порты на проксю заворачивать...только 80 и 8080(в прозрачном режиме)..больше не нужно.
Тоже так думал... но вот с p2p както бороться надо