Страница 1 из 1
freebs6+ipfw+mac+bridge
Добавлено: 2008-02-21 18:43:15
Гость
Здравствуйте граждане!
Имеется мост на freebsd, и появилась необходимость привязать ip к mac и управлять этим делом в файоволе
есть два интерфейса, em0 em1(без ип)
Код: Выделить всё
cloned_interfaces="bridge0"
ifconfig_bridge0="addm em0 addm em1 up"
ifconfig_em1="up"
ifconfig_em0="inet 83.102.165.12 netmask 255.255.255.240 up"
делаю:
Код: Выделить всё
ipfw add 1000 allow ip from any to any mac 00:17:9a:fb:f3 any
ipfw add 1002 allow ip from any to any mac any 00:17:9a:fb:f3
если я правильно понял это значит пропускать все пакеты с данными маком куда угодно и откуда угодно
но правила не работают
в sysctl добавлено:
Код: Выделить всё
net.link.ether.bridge.enable=1
net.link.ether.bridge.config=em1,em0
net.link.ether.bridge.ipfw=1
еще пишут что надо включить
но если делаю - ссш по которому сижу вырубается
делаю
вродебы всё...
но неработает

куда копать граждане?
мучаюсь уже целый день
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 0:11:50
Alex Keda
в сторону нормального оформления сообщений
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 9:45:51
hizel
полный фаер покаж
тебе надо в данный момент доступ до сервака или сквозь сервак
в общем случае при включеном net.link.ether.ipfw нужно, чтобы пакет прошел четыре раза через правила твоего фаера
и правило с маками в твоем случае пропускает пакет только на ether на уровень выше маки отбрасываются и твое правило уже не пустит
типа
Код: Выделить всё
ipfw add 1000 allow ip from any to 192.168.0.1 mac 00:17:9a:fb:f3 any
ipfw add 1002 allow ip from 192.168.0.1 to any mac any 00:17:9a:fb:f3
ipfw add 1000 allow ip from any to 192.168.0.1
ipfw add 1002 allow ip from 192.168.0.1 to any
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 10:22:54
Гость
полный файр варьируется

при net.ether.link.ipfw=1 ссх уже не отрубается
щас он таков:
Код: Выделить всё
bash-2.05b# ipfw show
00100 29779 1369834 allow ip from any to any layer2 mac-type 0x0806
00200 20399 2645040 allow ip from any to any layer2
00300 86773 7567521 tee 21000 ip from any to any
00400 0 0 deny icmp from any to any frag
00500 0 0 deny log icmp from any to 255.255.255.255 in via em0
00600 0 0 deny log icmp from any to 255.255.255.255 out via em0
00700 12020 2864286 allow ip from any to any via lo0
00800 1041 76476 allow tcp from any to 83.102.168.12 dst-port 22 via em0
00900 0 0 allow ip from 89.179.157.230 to any
01000 57 8059 allow ip from any to 89.179.157.230
01100 11 660 allow ip from 85.30.195.43 to any
01200 0 0 allow ip from 89.179.157.229 to any
01300 3588 705182 allow udp from any to any
01400 0 0 deny ip from 172.16.0.0/12 to any out via em0
01500 0 0 deny ip from 0.0.0.0/8 to any out via em0
01600 0 0 deny ip from 169.254.0.0/16 to any out via em0
01700 0 0 deny ip from 240.0.0.0/4 to any out via em0
01800 0 0 deny ip from 224.0.0.0/4 to any out via em0
01900 9647 585030 allow ip from any to any established
02000 0 0 allow udp from any 53 to any via em0
02100 0 0 allow udp from any to any via 0.0.0.123 via em0
05006 0 0 allow ip from 83.102.168.10 MAC 00:17:9a:fb:21:f2 any any
05006 0 0 allow ip from any to 83.102.168.10 MAC any 00:17:9a:fb:21:f2
06000 53348 2908320 allow ip from 83.102.168.10 to any
65000 5469 326368 allow ip from any to any
65530 213 10392 deny ip from any to any
65535 0 0 allow ip from any to any
bash-2.05b#
ясно что первые две строки надо перемещать
но сдвиги уже есть
и делать по уму
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 11:05:18
hizel
ну и на 200-ом правиле у тя пропускается всё на уровне ether :/
в man ipfw советуют
Код: Выделить всё
# packets from ether_demux or bdg_forward
ipfw add 10 skipto 1000 all from any to any layer2 in
# packets from ip_input
ipfw add 10 skipto 2000 all from any to any not layer2 in
# packets from ip_output
ipfw add 10 skipto 3000 all from any to any not layer2 out
# packets from ether_output_frame
ipfw add 10 skipto 4000 all from any to any layer2 out
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 11:42:08
hizel
и вообще тщательно не отвлекаясь и не торопясь фкури раздел PACKET FLOW в мане ipfw
Re: freebs6+ipfw+mac+bridge
Добавлено: 2008-02-22 17:58:03
Гость
спасибо за помощь

разобрался...
дело было в том что это:
Код: Выделить всё
sysctl net.link.bridge.pfil_member=1
sysctl net.link.bridge.pfil_bridge=1
не хотело давать работать этому:
невнимательность
