Биллинговая система Nodeny

Главная категория => Курилка => Тема начата: Aivanzipper от 04 Апреля 2011, 08:55:06



Название: ipfw & layer2
Отправлено: Aivanzipper от 04 Апреля 2011, 08:55:06
Ребята, нужна помощь.

Есть сеть с такой схемой: [BRAS]<==>[Catalyst]<==>[End-user]. Решили мы на каталисте включить port-protected а на брасе поднять arp-proxy, это чтобы контролировать весь трафик между пользователями. Решили - сделали. Работает. Получаем косяк: в окнах версии Vista и 7 клиент DHCP получил некоторые изменения, а именно, после получения ответа сервера DHCPACK клиент рассылает броадкаст пакет на проверку дублирующегося айпи:

Цитировать
src 0.0.0.0 dst 255.255.255.255
who has 192.168.0.2? tell 0.0.0.0

Казалось бы не было печали, но на этот запрос отвечает арп-прокси. Сооветственно, клиент думает что адрес уже используется и пытается получить другой. И так по кругу.
Пробовали фильтровать в ipfw:

Код:
deny udp from 0.0.0.0 68 to 255.255.255.255 dst-port 67

Нужный запрос фильтруется, но вместе с ним фильтруются все DHCPDISCOVER.  >:(
Попытки отфильтровать ответ сервера ни к чему не привели.
Собственно прошу помощи у знающих коллег.


Название: Re: ipfw & layer2
Отправлено: Aivanzipper от 11 Мая 2011, 13:50:00
Печально  :) Нашел решение по разбору пакетов, если получится отпишу


Название: Re: ipfw & layer2
Отправлено: VitalVas от 25 Мая 2011, 07:28:08
Печально  :) Нашел решение по разбору пакетов, если получится отпишу
ну как, получилось?


Название: Re: ipfw & layer2
Отправлено: Aivanzipper от 25 Мая 2011, 14:10:55
да никак не доберусь, муторно все как-то
по результату обязательно отпишусь


Название: Re: ipfw & layer2
Отправлено: Aivanzipper от 14 Июля 2011, 15:30:07
долго копался в недрах bpf для написания фильтра через netgraph, но потом пришел к выводу что пакет

Код:
20:19:12.971391 ARP, Ethernet (len 6), IPv4 (len 4), Request who-has 192.168.0.3 tell 0.0.0.0, length 46
        0x0000:  ffff ffff ffff 20cf 309a 478f 0806 0001
        0x0010:  0800 0604 0001 20cf 309a 478f 0000 0000
        0x0020:  0000 0000 0000 c0a8 0003 0000 0000 0000
        0x0030:  0000 0000 0000 0000 0000 0000

невозможно выделить в ipfw, ибо он леер2 (ARP)..

но все оказалось гораздо проще! в фрибсд-овом порту лежал патч для choparp который ликвидировал этот косяк. Пересбор программы и все работает. Вот такая морковь.


Название: Re: ipfw & layer2
Отправлено: elite от 14 Июля 2011, 20:56:59
но все оказалось гораздо проще! в фрибсд-овом порту лежал патч для choparp который ликвидировал этот косяк. Пересбор программы и все работает. Вот такая морковь.
ссылочку...


Название: Re: ipfw & layer2
Отправлено: VitalVas от 14 Июля 2011, 21:10:13
но все оказалось гораздо проще! в фрибсд-овом порту лежал патч для choparp который ликвидировал этот косяк. Пересбор программы и все работает. Вот такая морковь.
ссылочку...
Код:
cluster-master-1# whereis choparp
choparp: /usr/ports/net-mgmt/choparp