The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Как в ipfw привязать MAC к IP"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 18-Окт-04, 13:05  (MSK)
FreeBSD5.2.1
Хочу чтобы машина поменяв IP не могла пройти через ipfw
Статьи типа http://www.opennet.ru/base/net/arp_filter.txt.html
не предлагайте
больно муторно все свободные ip в pub загонять

Пишу к примеру

ipfw add 120 deny mac src-mac 00:0e:a6:45:0b:d4 not src-ip 192.168.50.250

получаем..

deny ip from any to any MAC any 00:0e:a6:45:0b:d4 not src-ip 192.168.50.250

Меняем адрес с 192.168.50.250 на 192.168.50.251
и... по барабану машина проходит через ipfw

Пробуем по другому

ipfw add 120 deny all from 192.168.50.250 to any mac src-mac 00:0e:a6:45:0b:d4

получаем
00120 deny ip from 192.168.50.250 MAC any 00:0e:a6:45:0b:d4 any

эффект тот-же

чувствую что по логике не врубаюсь
plz окажите содействие


  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "Как в ipfw привязать MAC к IP"
Сообщение от hromach emailИскать по авторуВ закладки(??) on 18-Окт-04, 13:48  (MSK)
никогда не думал что буду так отвечать
man arp
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 18-Окт-04, 13:51  (MSK)
>никогда не думал что буду так отвечать
>man arp

Я же писал что мне надо привязку сделать через IPFW
arp -f file это и ежу понятно
через ipfw знаешь как?


  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 18-Окт-04, 17:52  (MSK)
>>никогда не думал что буду так отвечать
>>man arp
>
>Я же писал что мне надо привязку сделать через IPFW
>arp -f file это и ежу понятно
>через ipfw знаешь как?


Товарищи!!!
есть какое-нибудь предложение?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. ">есть какое-нибудь предложение? "
Сообщение от poige Искать по авторуВ закладки(??) on 18-Окт-04, 19:38  (MSK)
>>>никогда не думал что буду так отвечать
>>>man arp
>>
>>Я же писал что мне надо привязку сделать через IPFW
>>arp -f file это и ежу понятно
>>через ipfw знаешь как?
>
>
>Товарищи!!!
>есть какое-нибудь предложение?

несомненно -- читать man'ы внимательнее:

"...
     net.link.ether.ipfw: 0
             Controls whether layer-2 packets are passed to ipfw.  Default is
             no.
..."

/poige
--
http://www.i.morning.ru/~poige/

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "Как в ipfw привязать MAC к IP"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 18-Окт-04, 19:42  (MSK)
насколько я понимаю формат такой
ipfw add allow from ip_src to ip_dst MAC dst_mac src_mac
давай отсюда и до... плясать.

Дай ipfw l

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "Как в ipfw привязать MAC к IP"
Сообщение от Дмитрий Ю. Карпов emailИскать по авторуВ закладки on 18-Окт-04, 22:08  (MSK)
Привязка к MAC-адресам - такое же бесперспективное занятие, как и привязка к IP-номерам и NetBIOS-именам, ибо всё это легко подделывается на стороне клиента. Если нужна надёжная защита - используй PPPoE или др.VPN.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 19-Окт-04, 09:56  (MSK)
>Привязка к MAC-адресам - такое же бесперспективное занятие, как и привязка к
>IP-номерам и NetBIOS-именам, ибо всё это легко подделывается на стороне клиента.
>Если нужна надёжная защита - используй PPPoE или др.VPN.

Я с тобой согласен можно использовать VPN,
управляемые switch, авторизацию в squid и т.д.
К сожалению все это мне не очень подходит
На самом деле нужно просто контролировать 3-х лоботрясов
чтобы не меняли IP
Чтобы поменять MAC у них мозгов не хватит

>насколько я понимаю формат такой
>ipfw add allow from ip_src to ip_dst MAC dst_mac src_mac
>давай отсюда и до... плясать.
>Дай ipfw l

ipfw add allow from ip_src to ip_dst MAC dst_mac src_mac

пишем
ipfw add 90 deny all from 192.168.50.250 to 192.168.50.211 mac dst-mac 00:a9:40:0f:9c:4f mac src-mac 00:0e:a6:45:0b:d4
Получаем
00090      0        0 deny ip from 192.168.50.250 to 192.168.50.211 MAC any 00:a9:40:0f:9c:4f MAC any 00:0e:a6:45:0b:d4
Правило стоит самым первым....
все равно проходит через фаервол

Пойду смотреть layer

  Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "Как в ipfw привязать MAC к IP"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 19-Окт-04, 10:08  (MSK)
deny ip from 192.168.50.250 to 192.168.50.211 MAC any 00:a9:40:0f:9c:4f MAC any 00:0e:a6:45:0b:d4

адреса 192.168.50.250 и 192.168.50.211 в разных сетях и между ними рассматриваемый фаервол?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 19-Окт-04, 10:13  (MSK)
>>Привязка к MAC-адресам - такое же бесперспективное занятие, как и привязка к
>>IP-номерам и NetBIOS-именам, ибо всё это легко подделывается на стороне клиента.
>>Если нужна надёжная защита - используй PPPoE или др.VPN.
>
>Я с тобой согласен можно использовать VPN,
>управляемые switch, авторизацию в squid и т.д.
>К сожалению все это мне не очень подходит
>На самом деле нужно просто контролировать 3-х лоботрясов
>чтобы не меняли IP
>Чтобы поменять MAC у них мозгов не хватит
>
>>насколько я понимаю формат такой
>>ipfw add allow from ip_src to ip_dst MAC dst_mac src_mac
>>давай отсюда и до... плясать.
>>Дай ipfw l
>
>ipfw add allow from ip_src to ip_dst MAC dst_mac src_mac
>
>пишем
>ipfw add 90 deny all from 192.168.50.250 to 192.168.50.211 mac dst-mac 00:a9:40:0f:9c:4f
>mac src-mac 00:0e:a6:45:0b:d4
>Получаем
>00090      0      
>  0 deny ip from 192.168.50.250 to 192.168.50.211 MAC any
>00:a9:40:0f:9c:4f MAC any 00:0e:a6:45:0b:d4
>Правило стоит самым первым....
>все равно проходит через фаервол
>
>Пойду смотреть layer

Все получилось всем спасибо.
Отдельная благоданость poige за пинок в нужном направлении
каюсь невнимательно вникал в man

net.link.ether.ipfw: 1
потом
ipfw add 100 deny all from 192.168.50.204 to 192.168.50.211 mac src-mac 00:0e:a6:45:0b:d4
и все работает!!!!!!!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 19-Окт-04, 10:34  (MSK)
>deny ip from 192.168.50.250 to 192.168.50.211 MAC any 00:a9:40:0f:9c:4f >MAC any 00:0e:a6:45:0b:d4
>адреса 192.168.50.250 и 192.168.50.211 в разных сетях и между ними >рассматриваемый фаервол?

192.168.50.250 машина лоботряса
192.168.50.211 gateway ( временный ip ) там же squid
суть вот в чем
Пользователи разбиты на группы в squidGuard
Лоботрясы страстные любители video mp3 porno
соответственно доступ жестко ограничен.
выходят они только со своих машин когда другие не работают ( выходные )
Меняют ip ( пример на бухгалтерские ) и попадают в другую группу. Полностью забить всю порнуху,
как ты понимаешь, невозможно.
Смотрю сводку sarg оказывается что бухгалтер просмотрела 200mb порнухи
за выходные. Не пойман не вор.
Сейчас сделаю что если поменяют ip то хрен они пройдут через ipfw
вот и все.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "Как в ipfw привязать MAC к IP"
Сообщение от Loky emailИскать по авторуВ закладки on 19-Окт-04, 11:08  (MSK)

>Меняют ip ( пример на бухгалтерские ) и попадают в другую группу.
>Смотрю сводку sarg оказывается что бухгалтер просмотрела 200mb порнухи
>за выходные. Не пойман не вор.

Были у нас шибко умные охранники, которые по ночам с буховских машин в инет ломились. Отключил сервак, показал ночные логи главбуху, и провел причинно-следственную связь. Как щас помню, было закрытие 4-го квартала. Умников уволили за 2 часа с вычетом материального ущерба из зп.
Если хочется технически, то прокси с авторизацией и ограничение выхода в инет рабочими часами полностью решает проблему.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "Как в ipfw привязать MAC к IP"
Сообщение от screepah emailИскать по авторуВ закладки(??) on 19-Окт-04, 14:03  (MSK)
>Если хочется технически, то прокси с авторизацией и ограничение выхода в инет
>рабочими часами полностью решает проблему.

Точно. И еще административно дать рекомендацию - не ставить галочку сохранения пароля, с обьяснениями почему. Работает на ура.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки on 19-Окт-04, 17:20  (MSK)
Моя радость по поводу решения данной проблемки
оказалась несколько преждевременной

итого что сделал
alk# sysctl net.link.ether.ipfw=1

sysctl.conf
net.link.ether.ipfw=1

ipfw

${ipfw} add allow all from 192.168.50.250 to 192.168.50.211 mac src-mac 00:0e:a6:45:0b:d4 in via fxp0
${ipfw} add deny all from ${my_net} to 192.168.50.211 mac src-mac 00:0e:a6:45:0b:d4 in via fxp0

где src-mac это  mac 192.168.50.250
fxp0 -смотрит в local
Теперь при изменении IP 192.168.50.250 на любой другой клиента ждет
разочарование

НО...
через 1 час работы затыкается ( вроде как ) интерфейс
смотрящий в инет fxp1

схема

local -- fxp0--FreeBSD5.2.1-fxp1 --- inet

tcpdump -i fxp1 показывает пустоту
ping во внутреннюю сетку с fxp0 ( 192.168.50.211) идет без проблем
после перезагрузки машины эффект тот же

делаем
sysctl net.link.ether.ipfw=0
не помогает

закомментарил net.link.ether.ipfw=1 в sysctl.conf
перегружаем....  все работает

ЧТО надо посмотреть в системе чтобы оценить что происходит?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "Как в ipfw привязать MAC к IP"
Сообщение от Loky emailИскать по авторуВ закладки on 19-Окт-04, 17:43  (MSK)
>Моя радость по поводу решения данной проблемки
>оказалась несколько преждевременной

Не городи огород. Запрети любой выход в инет после окончания рабочего дня.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 19-Окт-04, 17:49  (MSK)
>>Моя радость по поводу решения данной проблемки
>>оказалась несколько преждевременной
>
>Не городи огород. Запрети любой выход в инет после окончания рабочего дня.
>

Уже так и сделал
однако хочется знать почему глючит?
когда-нибудь, я думаю, пригодится

  Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "Как в ipfw привязать MAC к IP"
Сообщение от Loky emailИскать по авторуВ закладки on 19-Окт-04, 18:14  (MSK)
>>>Моя радость по поводу решения данной проблемки
>>>оказалась несколько преждевременной
>>
>>Не городи огород. Запрети любой выход в инет после окончания рабочего дня.
>>
>
>Уже так и сделал
>однако хочется знать почему глючит?
>когда-нибудь, я думаю, пригодится

криво настроил, вот и глючит.
такое не пригодится, проще pptp организовать.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

17. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 19-Окт-04, 18:21  (MSK)
>криво настроил, вот и глючит.
>такое не пригодится, проще pptp организовать.

Криво настроил... по кокнкретнее  можно?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

18. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 27-Окт-04, 13:15  (MSK)
Все получилось
итак...

IP= 192.168.50.33  mac 00:0e:a6:45:0b:d4
адрес нашего любителя менять IP

sysctl.conf
net.link.ether.ipfw=1

ipfw

${ipfw} 10 add skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
${ipfw} 11 add skipto 100 ip from any to any not layer2
${ipfw} 20 add deny ip from ${my_net} to any mac src-mac 00:0e:a6:45:0b:d4  in via fxp0
любой IP из сети my_net с src-mac принадлежащий 192.168.50.33 > deny
${ipfw} 40 add allow  ip from any to any MAC any any

результат

00010  114  26193 skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
00011  817 207757 skipto 100 ip from any to any not layer2
00020    6    654 deny ip from 192.168.50.0/24 MAC any 00:0e:a6:45:0b:d4 any in via fxp0
00040  703 195885 allow ip from any to any MAC any any

все остальные правила ipfw

Работает эта схема с понедельника
можно еще сделать fwd на squid

  Рекомендовать в FAQ | Cообщить модератору | Наверх

19. "Как в ipfw привязать MAC к IP"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 27-Окт-04, 14:34  (MSK)
Можешь статейку нарисовать.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

20. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 27-Окт-04, 15:08  (MSK)
>Можешь статейку нарисовать.

Ага! и меня запинают ногами на предмет
что это не решает проблемы...  ставь упр switch и т.д.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

21. "Как в ipfw привязать MAC к IP"
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 27-Окт-04, 15:20  (MSK)
управляемый коммутатор закрепляет мак
не стесняйся
  Рекомендовать в FAQ | Cообщить модератору | Наверх

22. "Как в ipfw привязать MAC к IP"
Сообщение от mijgunz Искать по авторуВ закладки on 27-Окт-04, 15:58  (MSK)
>управляемый коммутатор закрепляет мак
>не стесняйся


Не мог бы пояснить поподробнее свои правила. Я что-то никак врубится не могу.
Мне нужно в правилах открывающий инет для каждого пользователя ставить его IP. Вот тоже наткнулся на тот эффект, что пакеты стали пропадать. Видать я не понимаю логику фильтрации с Laer2. Если тебе удалось ее постич - поделись плиз.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

23. "Как в ipfw привязать MAC к IP"
Сообщение от mijgunz Искать по авторуВ закладки on 27-Окт-04, 16:01  (MSK)
Опечатка

Не мог бы пояснить поподробнее свои правила. Я что-то никак врубится не
могу.
Мне нужно в правилах открывающий инет для каждого пользователя ставить его MAC.
Вот тоже наткнулся на тот эффект, что пакеты стали пропадать. Видать
я не понимаю логику фильтрации с Laer2. Если тебе удалось ее
постич - поделись плиз.


  Рекомендовать в FAQ | Cообщить модератору | Наверх

24. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 27-Окт-04, 16:35  (MSK)
>Опечатка
>
>Не мог бы пояснить поподробнее свои правила. Я что-то никак врубится не
>
>могу.
>Мне нужно в правилах открывающий инет для каждого пользователя ставить его MAC.
>
>Вот тоже наткнулся на тот эффект, что пакеты стали пропадать. Видать
>я не понимаю логику фильтрации с Laer2. Если тебе удалось ее
>постич - поделись плиз.

покажи ipfw sh
а то я что-то не совсем понял суть вопроса

  Рекомендовать в FAQ | Cообщить модератору | Наверх

25. "Как в ipfw привязать MAC к IP"
Сообщение от mijgunz Искать по авторуВ закладки on 27-Окт-04, 19:01  (MSK)
Список здоровый но суть такая. Сервер работает как шлюз для локальной сети. В локальной сети как "серые" так и нормальные IP.
Сначало идут некоторые запрещающие правила
Потом диверт:
${fwcmd} add 450 divert natd all from any to any via ${natd_interface}
Потом правила которые регулируют доступ к сервисам этого сервиса.
Потом уже включаются правила правила для каждого ip в этой сети:
${fwcmd} add 6000 pass all from 192.168.10.1 to any
${fwcmd} add 6001 pass all from any to 192.168.10.1
...

Хочу в правилах для клиентов использовать и их MAC. Когда попытался сделать, то наткнулся на такое же поведение как и у тебя в первой попытке. Пакеты начали терятся и трафик перестал идти, поэтому откатился назад. Вот и хочется понять идеологию.

>>Опечатка
>>
>>Не мог бы пояснить поподробнее свои правила. Я что-то никак врубится не
>>
>>могу.
>>Мне нужно в правилах открывающий инет для каждого пользователя ставить его MAC.
>>
>>Вот тоже наткнулся на тот эффект, что пакеты стали пропадать. Видать
>>я не понимаю логику фильтрации с Laer2. Если тебе удалось ее
>>постич - поделись плиз.
>
>покажи ipfw sh
>а то я что-то не совсем понял суть вопроса


  Рекомендовать в FAQ | Cообщить модератору | Наверх

26. "Как в ipfw привязать MAC к IP"
Сообщение от Дмитрий Ю. Карпов emailИскать по авторуВ закладки on 27-Окт-04, 20:36  (MSK)
Ставишь HTTP-Proxy (Squid) и на нём запрещаешь конкретно доступ к MP3. А ipfw нужен для того, чтобы закрыть прямой доступ (минуя HTTP-Proxy).
  Рекомендовать в FAQ | Cообщить модератору | Наверх

27. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 28-Окт-04, 13:41  (MSK)
Вот несколько ссылок
1. http://news.gw.com/freebsd.isp/9412
2.http://www.m0n0.ch/wall/list/?action=show_msg&actionargs%5B%5D=95&actionargs%5B%5D=30
3. http://bsdsearch.com/eao/phorum/read.php?f=38&i=2977&t=2977

man ipfw
“Всегда используется Законченный набор правил, НЕЗАВИСИМО от МЕСТА, из
которого вызван ipfw, или адреса-источника пакета. Если правило содержит
некоторые образцы соответствия или действия, которые НЕ ДОПУСТИМЫ для
МЕСТА вызова (например, требующие соответствия MAC заголовка, если ipfw
вызывают из ip_input ()), образец соответствия НЕ БУДЕТ соответствовать.
Однако оператор not перед такими образцами заставит образец ВСЕГДА
соответствовать на тех пакетах, которые могли бы вызвать нежелательные
результаты. ( 3 ссылка) Таким образом, на ответственности программиста в случае
необходимости записывать подходящий набор правил для ДИФФЕРЕНЦИРОВАНИЯ
среди возможных мест. Здесь может быть полезно правило skipto”

Идеология ( как я ее понял )
если  net.link.ether.ipfw=1
то необходимо писать правила layer2(MAC)  для ВСЕХ сетевых интерфейсов
и они должны быть дифференцированы относительно
обычных правил ipfw  ( skipto)  Хотя это и не обязательно – можно и так извернуться

Таким образом  в  ipfw  должен  быть определен набор правил  allow, deny для уровня  layer2 ( MAC) при этом ПОСЛЕДНЕЕ правило в наборе где идет проверка MAC должно быть
Allow(deny)  ip from any to any MAC any any
или
allow(deny) ip from any to any layer2 via xxx

Допустим у нас есть три интерфейса fxp0 rl0 и xl0
Мы хотим cделать проверку layer2(MAC) на fxp0  а на других интрефейсах
Нам этого не надо.
1.Вариант
allow ip from any to any layer2 via rl0
allow ip from any to any layer2 via xl0
правила для fxp0
……
Deny mac
Deny mac-type
allow ip from any to any layer2 via fxp0

2. Вариант
равнозначное правило
allow ip from any to any layer2 not via fxp0
правила для fxp0
……
Deny mac
Deny mac-type
allow ip from any to any layer2 via fxp0

здесь есть много вариантов, например
пропускать через fxp только заданные MAC IP и т.д.
почитай ссылкам

пример из http://www.m0n0.ch/wall/list/?action=show_msg&actionargs%5B%5D=95&actionargs%5B%5D=30

20002 deny ip from 192.168.8.2 not MAC any 00:0c:f1:08:97:48 any layer2 in
20002 deny ip from any to 192.168.8.2 not MAC 00:0c:f1:08:97:48 any layer2 out
29900 allow ip from any to any layer2
……..

В твоем случае это может  выглядеть так
Ip 192.168.50.250 его MAC  00:0e:a6:45:0b:d4  
${ipfw} add allow all from 192.168.50.250 to any  mac src-mac 00:0e:a6:45:0b:d4  via fxp0
…..
${ipfw} add deny all from any to any  layer2 via fxp0
Т.е через fxp0 пройдут только указанные ip с указанным src-mac

Но, еще раз повторюсь, если у тебя есть другие интерфейсы и ты для них не указал
Разрешающие правила на уровне layer2  то  нас ждет облом  ( причем не сразу,
Как ты уже заметил,  а через некоторое время)

Сейчас подробно разберу работу моих правил

Задача:
Если user vasy с IP 192.168.50.33 и MAC 00:0e:a6:45:0b:d4  изменит свой IP
на ЛЮБОЙ другой >> deny ipfw

Старый набор правил

${ipfw} 10 add skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
${ipfw} 11 add skipto 100 ip from any to any not layer2
${ipfw} 20 add deny ip from ${my_net} to any mac src-mac 00:0e:a6:45:0b:d4  in via fxp0
${ipfw} 40 add allow  ip from any to any MAC any any

Новый набор правил более оптимизированный ( работает со вчерашнего вечера )
Его и рассмотрим

${ipfw} 1 add skipto 100 ip from any to any not layer2
${ipfw} 5 add allow ip from any to any layer2 not via fxp0
${ipfw} 10 add skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
${ipfw} 20 add deny ip from ${my_net} to any mac src-mac 00:0e:a6:45:0b:d4  in via fxp0
${ipfw} 40 add allow  ip from any to any layer2 via fxp0

Fxp0   внутренний интерфейс локальной сети ( остальные fxp1, fxp2 )
My_net = 192.168.50.0/24


                to upper layers   V
                 |                         |
                 +----------->-----------+
                 ^                       V
       2   [ip_input]              [ip_output]                3              net.inet.ip.fw.enable=1
                 |                         |
                 ^                       V
       1   [ether_demux]    [ether_output_frame]   4             net.link.ether.ipfw=1
                 |                          |
       0         +-->--[bdg_forward]-->--+   0                          net.link.ether.bridge_ipfw=1
                 ^                       V
                 |      to devices    |

Если  net.link.ether.ipfw=0   то  пункты  1,4  ipfw не проверяет
Если net.link.ether.ipfw=1  то 1,2,3,4

${ipfw} 1 add skipto 100 ip from any to any not layer2
${ipfw} 5 add allow ip from any to any layer2 not via fxp0
${ipfw} 10 add skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
${ipfw} 20 add deny ip from ${my_net} to any mac src-mac 00:0e:a6:45:0b:d4  in via fxp0
${ipfw} 40 add allow  ip from any to any layer2 via fxp0

Итак прибегает пакет IP 192.168.50.1 на fxp0  ( см. пункт 1 )
1. правило 1 “ перейти на правило 100 если пакет не принадлежит layer2”
Результат:
Пакет еще на пункте 1 стоит поэтому это правило не сработает.
2. правило 5 “ разрешить все пакеты layer2 на всех интерфейсах за
исключением  fx

  Рекомендовать в FAQ | Cообщить модератору | Наверх

28. "Как в ipfw привязать MAC к IP"
Сообщение от alk Искать по авторуВ закладки(??) on 28-Окт-04, 13:45  (MSK)
Блин не влезло все

${ipfw} 1 add skipto 100 ip from any to any not layer2
${ipfw} 5 add allow ip from any to any layer2 not via fxp0
${ipfw} 10 add skipto 40 ip from 192.168.50.33 to any layer2 in via fxp0
${ipfw} 20 add deny ip from ${my_net} to any mac src-mac 00:0e:a6:45:0b:d4  in via fxp0
${ipfw} 40 add allow  ip from any to any layer2 via fxp0

Итак прибегает пакет IP 192.168.50.1 на fxp0  ( см. пункт 1 )
1. правило 1 “ перейти на правило 100 если пакет не принадлежит layer2”
Результат:
Пакет еще на пункте 1 стоит поэтому это правило не сработает.
2. правило 5 “ разрешить все пакеты layer2 на всех интерфейсах за
исключением  fxp0”
Результат:
Пакет как раз и пришел на fxp0:  правило не сработает
3. правило 10 “ перейти на правило 40  если IP 192.1668.50.33 in via fxp0”
Результат:
У нас пакет с другим IP правило не сработает
      4.    правило 20 “deny IP с МАС адресом таким-то”
             Результат:
             У нас  другой src-mac поэтому правило не сработает
      5.   Правило 40 “ Разрешить все пакеты layer2 ( т.е. пункт1) на интрфейсе fxp0
            Результат:
            В яблочко!!! Правило сработало теперь пакет перешел на пункт 2 ( см. картинку)
       6.  пакет опять вводится в ipfw
       7.   правило 1 “ перейти на правило 100 если пакет не принадлежит layer2”
Результат:
             Layer2 мы уже прошли поэтому данное правило срабатывает и
             Отправляет нас на правило 100 с которого начинается мой обычный ipfw
Вот такая идеология….
А теперь прогони через эти правила  IP = 192.168.50.33  
И, к примеру,  IP=192.168.50.82 src-mac 00:0e:a6:45:0b:d4  
и я надеюсь что все станет понятно
если что пиши

твои правила примерно будут выглядеть так


Допустим что твой ipfw  начинается с правила под номером 100
У тебя два интерфейса и фильтровать ты хочешь только fxp0
Тогда

${ipfw} 10 add skipto 100 ip from any to any not layer2
${ipfw}  20add allow ip from any to any layer2 not via fxp0
Т.е. на других интерфейсах MAC фильтровать не будем
${ipfw} 30 add allow all from 192.168.50.250 to any  mac src-mac 00:0e:a6:45:0b:d4  via fxp0
…..
…..   пропускаем указанные IP с соответствующими MAC
…..
${ipfw} 80 add deny all from any to any  layer2 via fxp0
Остальные, отсутствующие в нашем списке – могут расслабиться

Далее  идут правила начиная  с номера 100      

Вроде все… удачи!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

29. "Как в ipfw привязать MAC к IP"
Сообщение от mijgunz Искать по авторуВ закладки on 28-Окт-04, 14:16  (MSK)
Спасибо за ответ!
Вроде все понятно. Буду экспериментировать сегодня.
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру