blackjack
NoDeny
Старожил
Карма: 24
Offline
Сообщений: 352
|
|
« Ответ #15 : 17 Августа 2009, 10:47:26 » |
|
Мужики юзайте ipfw nat я вот тоже пробовал в качестве ната пф, но были косяки такие что после перезагрузки правил ipfw пф нат срабатывал до ipfw и в результате трафик не считался приходилось загружать еще раз нат пф. Короче перешол полностью на ipfw, так и в листинге правил видно что куда идет.
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #16 : 17 Августа 2009, 15:58:07 » |
|
не понял проблемы, разъясните мне поподробней почему pf nat влияет на подсчет трафика
|
|
|
Записан
|
|
|
|
trio
NoDeny
Пользователь
Карма: 0
Offline
Сообщений: 76
|
|
« Ответ #17 : 17 Августа 2009, 18:40:44 » |
|
Короче перешол полностью на ipfw, так и в листинге правил видно что куда идет.
А можно конфиги в студию ? rc.firewall rc.conf
|
|
|
Записан
|
|
|
|
trio
NoDeny
Пользователь
Карма: 0
Offline
Сообщений: 76
|
|
« Ответ #18 : 18 Августа 2009, 19:42:55 » |
|
во время старта системы заметил такую запись:
Starting ipcad. Opening divert... [LCap] [ERSH] [!INF] Initialized as 65537 Opening divert... [LCap] [ERSH] [!INF] Initialized as 65538 Configured RSH Server listening at 127.0.0.1 No valid entries found in ipcad.dump. Daemonized.
Хотя в ipcad.conf все впорядке:
interface divert port 1 netflow-disable; interface divert port 2 netflow-disable;
Похоже что ipcad отркывает на 1 и 2 порт а 65537 и 65538 соответсвенно и пакеты не натятся ?
|
|
|
Записан
|
|
|
|
versus
|
|
« Ответ #19 : 19 Августа 2009, 09:48:12 » |
|
причем айпикад нату ? айпикад всего лишь сообщил что в его дампе невалидные данные и он их игнорит
|
|
|
Записан
|
|
|
|
blackjack
NoDeny
Старожил
Карма: 24
Offline
Сообщений: 352
|
|
« Ответ #20 : 19 Августа 2009, 13:24:16 » |
|
не понял проблемы, разъясните мне поподробней почему pf nat влияет на подсчет трафика
потому что после (иногда требуется такое выполнить) сначала пакет попадает в пф где натится, а потом попадает в ipfw откуда попадает в ng_ipacct, тоесть в считалку трафика попадает наченый пакет который уже не может быть зачислен какому-нибудь юзеру. Решается так после этого трафик опять сначала попадает в ipfw а потом в pf.
|
|
|
Записан
|
|
|
|
Efendy
|
|
« Ответ #21 : 19 Августа 2009, 23:18:53 » |
|
нешел обсуждение на одном из форумов, заканчивающееся: - для входящего трафика модуль, добавивший свой хук последним, будет обрабатывать пакеты первым, и наоборот - для исходящего модуль, добавивший свой хук первым будет обрабатывать пакеты первым. - при перезапуске фаерволов (/etc/rc.d/ipfw, /etc/rc.d/pf) т.е. (pfctl -d/-e или ipfw enable/disbale) происходит регистрирование/разрегистрирование хука, что меняет порядок прохождения пакетов. - в связи с такой запутанной ситуацией, если вам нужно четко знать порядок прохождения пакетов, обязательно проводите эксперементальный опыт по описанной выше методике. - поведение сетевой подсистемы имеет тенденцию меняться от релиза к релизу, на эту информацию нельзя полагать дословно, это всеголишь теортеическо-практические изыскания. Одно радует: /etc/rc.d/ipfw restart делать не надо. Тебе зачем?
|
|
|
Записан
|
|
|
|
blackjack
NoDeny
Старожил
Карма: 24
Offline
Сообщений: 352
|
|
« Ответ #22 : 20 Августа 2009, 11:39:33 » |
|
При некоторых больших изменениях в сети чтобы проверить правильность rc.firewall, а вообщето я и не помню когда такое последний раз делал. Но все же факт что меняется порядок прохождения пакетов, который может изменятся от релиза к релизу что не есть хорошо.
|
|
|
Записан
|
|
|
|
trio
NoDeny
Пользователь
Карма: 0
Offline
Сообщений: 76
|
|
« Ответ #23 : 26 Августа 2009, 22:12:28 » |
|
Все разобрался, добрые люди подмогли. Тот вариант фаера что указан в доке подходит только для версии 50.* , а может и не подходит точно не уверен. Уверен лиш в том что ниже приведенный листинг кода фаервола нормально работает и шейпит трафик на 49.* версии. Всем огромное спасибо за советы. Думаю эта ветка будет актуальна для новичков ))). ipfw='/sbin/ipfw -q'
ournet='10.7.7.0/24'
ifv='sk0' ifout='gif0' ifuser='sk1'
${ipfw} -f flush ${ipfw} table 10 flush ${ipfw} table 11 flush
#virus ${ipfw} add 1 deny ip from any to any 135-139,445,593,1024-1030,1080,1214,1363 #${ipfw} add 2 deny ip from any to any 1373,1377,1433-1434,2745,2283,2535,2745 #${ipfw} add 3 deny ip from any to any 3410,4444,5554,8866,9898,10000,10080,12345 #${ipfw} add 4 deny ip from any to any 27374,65506,17300,3127-3128,1364,1368 ${ipfw} add 10 allow tcp from any to me 22,80,443 ${ipfw} add 20 allow tcp from me 22,80,443 to any #все на локалном интерфейсе ${ipfw} add 100 check-state ${ipfw} add 150 allow ip from any to any via lo0 ${ipfw} add 200 allow ip from me to any keep-state
#тут не мешает подобрать и ораничить разное оставить только для тунеля ${ipfw} add 205 allow ip from any to me via $ifv #${ipfw} add 205 allow ip from me to any via $ifv
#нат ${ipfw} add 210 divert natd ip from any to any via $ifout ${ipfw} add 220 allow ip from any to any via $ifout out
${ipfw} add 263 allow icmp from any to me ${ipfw} add 300 allow ip from any to me 53 via $ifuser #stats ${ipfw} add 310 allow ip from any to me 80 via $ifuser ${ipfw} add 313 allow ip from any to me https via $ifuser #avtorize ${ipfw} add 340 allow udp from any to me 7723 via $ifuser
${ipfw} add 400 deny ip from any to me
|
|
« Последнее редактирование: 26 Августа 2009, 22:15:55 от trio »
|
Записан
|
|
|
|
elite
Начальник планеты
NoDeny
Спец
Карма: 52
Offline
Сообщений: 1226
In LAN we trust!
|
|
« Ответ #24 : 27 Августа 2009, 06:24:11 » |
|
а natd неприкольно
|
|
|
Записан
|
|
|
|
dorowa
Новичок
Карма: 1
Offline
Сообщений: 3
|
|
« Ответ #25 : 27 Августа 2009, 23:29:23 » |
|
2 blackjack,вот если бы кинули содержимое rc.conf вам бы сразу сказали, что pf при запуске просит указать явно файл с конфигом, т.е. обязательно должно быть (по крайней мере FreeBSD7.2):
pf_enable="YES" pf_rules="/etc/pf.conf" #А дальше firewall_enable="YES"
Логика работы фильтров пакетов такая: кто первый встал (pf) тот первый получает входящий пакет (на соотв.интерфейсе) потом ipfw получает пакет с уже преобразованным адресатом (в случае с НАТ... фактически, это единственный оправданный вариант одновременного использования двух фильтров), в обратном направлении сначала пакет обрабатывает ipfw, а потом pf. А вот команда: pfctl -N -f /etc/pf.conf - на самом деле означает всего лишь "загрузить pf только правила для НАТа из файла /etc/pf.conf", что фактически включает НАТ и на порядок прохождения пакетов не влияет никак. У такого способа НАТ масса преимуществ :-)
|
|
|
Записан
|
|
|
|
trio
NoDeny
Пользователь
Карма: 0
Offline
Сообщений: 76
|
|
« Ответ #26 : 05 Сентября 2009, 09:29:49 » |
|
Все еще есть некоторые проблемки с шейпером. В пакете пользователя стоит резать скорость на вход и выход по 2 мегабита (2048) при проверке скорости на speedtest.net показывает что исходящая скорость в норме тоесть как и было указано 2мб, а вот входящая ровно в половину меньше тоесть 1 мб. и так на всех пакетах получается что входящая скорость роврно в 2 раза меньше указаной в пакете. Кто подскажет где копать ? gw2# ipfw pipe show 01045: 2.048 Mbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000 BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp 0 tcp 10.7.7.57/1045 204.9.163.158/80 471 184049 0 0 0 01044: 2.048 Mbit/s 0 ms 50 sl. 1 queues (1 buckets) droptail mask: 0x00 0x00000000/0x0000 -> 0x00000000/0x0000 BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp 0 tcp 204.9.163.158/80 10.7.7.57/1045 612 107392 0 0 0
|
|
|
Записан
|
|
|
|
Cell
NoDeny
Спец
Карма: 52
Offline
Сообщений: 1407
|
|
« Ответ #27 : 05 Сентября 2009, 20:07:07 » |
|
спид-тест это такое глюкалово, ))) я на нем получал даунлоад 17 Мбит при том что у меня было ровно 6 )))
|
|
|
Записан
|
|
|
|
trio
NoDeny
Пользователь
Карма: 0
Offline
Сообщений: 76
|
|
« Ответ #28 : 10 Сентября 2009, 00:02:03 » |
|
проблема остается открытой, на всех пакетах один и тот же результат - входящая скорость ровно в половину меньше.
|
|
|
Записан
|
|
|
|
blackjack
NoDeny
Старожил
Карма: 24
Offline
Сообщений: 352
|
|
« Ответ #29 : 10 Сентября 2009, 13:06:10 » |
|
2 blackjack,вот если бы кинули содержимое rc.conf вам бы сразу сказали, что pf при запуске просит указать явно файл с конфигом, т.е. обязательно должно быть (по крайней мере FreeBSD7.2):
pf_enable="YES" pf_rules="/etc/pf.conf" #А дальше firewall_enable="YES"
Логика работы фильтров пакетов такая: кто первый встал (pf) тот первый получает входящий пакет (на соотв.интерфейсе) потом ipfw получает пакет с уже преобразованным адресатом (в случае с НАТ... фактически, это единственный оправданный вариант одновременного использования двух фильтров), в обратном направлении сначала пакет обрабатывает ipfw, а потом pf. А вот команда: pfctl -N -f /etc/pf.conf - на самом деле означает всего лишь "загрузить pf только правила для НАТа из файла /etc/pf.conf", что фактически включает НАТ и на порядок прохождения пакетов не влияет никак. У такого способа НАТ масса преимуществ :-)
лично я пользовался двумя фильтрами около месяца, потом перешел на один ipfw и уже более трех месяце все нормально. То что вы мне рассказываете я и так знал.
|
|
|
Записан
|
|
|
|
|