ArminBah Posted February 3, 2011 Posted February 3, 2011 (edited) Уважаемые гуру, кто может подсказать, в чем я не правильно делаю, сколько не бьюсь не могу почему то настроить правильный shape при помощи ng_car? uname -a FreeBSD 8.1-RELEASE-p2 FreeBSD 8.1-RELEASE-p2 #5: amd64 В ядре следующие опции options IPFIREWALL options IPFIREWALL_FORWARD options IPFIREWALL_VERBOSE options IPFIREWALL_VERBOSE_LIMIT=500 options IPDIVERT options NETGRAPH options NETGRAPH_IPFW options NETGRAPH_NETFLOW options NETGRAPH_IFACE options NETGRAPH_BPF options NETGRAPH_ETHER options NETGRAPH_SOCKET options NETGRAPH_KSOCKET options NETGRAPH_CAR options NETGRAPH_TEE options NETGRAPH_NAT options NETGRAPH_CISCO options DEVICE_POLLING options LIBALIAS в rc.firewall следующие правила ${fwcmd} add 106 netgraph tablearg all from any to table\(10\) in via em0 ${fwcmd} add 107 netgraph tablearg all from table\(11\) to any out via em0 ${fwcmd} add 108 netgraph 61 all from not 10.0.0.0/8 to xx.xx.xx.xx in via em1 ${fwcmd} add 109 netgraph 60 all from 10.0.0.0/8 to not 10.0.0.0/8 out via em1 ${fwcmd} add 110 allow all from any to any в table 10, 11 добавлен ip 10.0.0.1 table 10 add 10.0.0.1/32 100 table 11 add 10.0.0.1/32 200 параметр sysctl net.inet.ip.fw.one_pass равен 0 не шейпит хоть ты тресни) ноды ng_car добавлял след. образом скорость 256кбит/с ngctl mkpeer ipfw: car 200 lower name ipfw:200 car connect car: ipfw: upper 100 msg car: setconf { downstream={ cbs=32768 ebs=32768 cir=262144 greenAction=1 yellowAction=1 redAction=2 mode=3 } upstream={ cbs=32768 ebs=32768 cir=262144 greenAction=1 yellowAction=1 redAction=2 mode=3 } } Помогите плз. Может чего то не хватает? Всем спасибо кто хоть как то учавствовал и пытался помочь. Тема закрыта. Edited February 7, 2011 by ArminBah Вставить ник Quote
ArminBah Posted February 3, 2011 Author Posted February 3, 2011 забыл добавить что ng_nat работает, а вот шейпить не получается Вставить ник Quote
ArminBah Posted February 4, 2011 Author Posted February 4, 2011 не ужели никто не знает? Или просто не хотите помочь? Вставить ник Quote
terrible Posted February 4, 2011 Posted February 4, 2011 #ngctl show ipfw #ngctl show 200 car что покажут? Попробуйте имя ноды задать без пробелов Вставить ник Quote
ArminBah Posted February 4, 2011 Author Posted February 4, 2011 ngctl show ipfw показывает ngctl show ipfw: Name: ipfw Type: ipfw ID: 00000001 Num hooks: 4 Local hook Peer name Peer type Peer ID Peer hook ---------- --------- --------- ------- --------- 100 car car 000000e0 upper 200 car car 000000e0 lower 61 nat nat 0000006c in 60 nat nat 0000006c out по команде ngctl show 200 car следующее ngctl: usage: show [-n] <path> Щас попробую задать имя ноды без пробелов это при задании имени ноды без пробелов + mkpeer ipfw: car 200 lower + name ipfw:200_car ngctl: usage: name <path> <name> + name ipfw:200car ngctl: usage: name <path> <name> Вставить ник Quote
t0ly Posted February 4, 2011 Posted February 4, 2011 - странная нумерация нод ipfw - netgraph, ограничения будут асинхронными что ли? почему у тебя in ограничение одного адресса соответствует out ограничению воторого? - перепроверь настройки updastream, downstream man ng_car Вставить ник Quote
ArminBah Posted February 4, 2011 Author Posted February 4, 2011 - странная нумерация нод ipfw - netgraph, ограничения будут асинхронными что ли? почему у тебя in ограничение одного адресса соответствует out ограничению воторого?- перепроверь настройки updastream, downstream man ng_car Сори t0ly, но пересмотрел весь man по ng_car и так и не понял как изменить PeerID. Я с ng_car и начинал, вот только там в примере описывается ограничение на сетевом интерфейсе, я по аналогии сделал. То что указано in и out это ng_nat, правда тоже не могу понять почему при создании ноды nat PeerID автоматически встает один и тот же. А это не влияет на PeerID msg car: setconf { downstream={ cbs=32768 ebs=32768 cir=262144 greenAction=1 yellowAction=1 redAction=2 mode=3 } upstream={ cbs=32768 ebs=32768 cir=262144 greenAction=1 yellowAction=1 redAction=2 mode=3 } } Это же только ограничение скорости, просто на вход и на выход одинаковое. Сори если не понял, я уже себя ощущаю в танке) Вставить ник Quote
ArminBah Posted February 7, 2011 Author Posted February 7, 2011 Вобщем, все получилось. Проблема была не в создаваемых нодах, а в правилах которые я использовал в ipfw. Трафик тупо если и проходил по правилу 106 и 107 но не шол дальше по правилам. Не правильно были указаны in и out у соответствующих правил. Меня сейчас смущает только одно, почему при просмотре нод через ngcl show car: PeerID у них одинаковый. Вставить ник Quote
terrible Posted February 7, 2011 Posted February 7, 2011 Может быть из-за того, что правила вешаются на одну и ту-же подсеть. Вставить ник Quote
vurd Posted February 9, 2011 Posted February 9, 2011 Не хочется плодить темы, поэтому влезу прямо сюда. Подскажите, люди добрые, как управлять режимами библиотеки libalias через контрольные сообщения к ноде ng_nat. Скажем есть флаг NG_NAT_LOG (0x01), который включает логирование, и я в принципе даже понимаю как его прицепить к ноде: ngctl msg nagNode: setmode 0x01 А каким образом его можно теперь снять? Вставить ник Quote
ArminBah Posted February 10, 2011 Author Posted February 10, 2011 мне кажется только удалением ноды ng_nat, по крайней мере это самый простой вариант Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.