А у меня gпадает сеть. В комментариях к
http://skeletor.org.ua/?p=223 у пользователя тоже падает сеть
"если протокол построен по принципу все запрещено кроме разрешенного блокируется также широковещательный трафик arp протокола,
поэтому обычно упрощают правила с помощью признака layer2, о чем есть соответствующая запись в man ipfw" Как раз мой случай
Как этой laнyer2 прописать?
Отправлено спустя 10 минут 29 секунд:
Я посмотрел man и только репу почесал
Код: Выделить всё
Как видно из приведенной схемы, число прохождений одного и того же
пакета через систему сетевой защиты может изменяться от 0 до 4 в
зависимости от источника пакета, адресата и системной конфигурации. В
каждом из этих мест, пакет передается ipfw со всеми (и только) полями,
которые принадлежат данному уровню. То есть, входящие пакеты будут
включать MAC заголовок, если ipfw вызван из ether_demux (), но когда
ipfw вызван из ip_input () MAC заголовок из пакетов будет удален.
Всегда используется Законченный набор правил, независимо от места, из
которого вызван ipfw, или адреса-источника пакета. Если правило содержит
некоторые образцы соответствия или действия, которые не допустимы для
места вызова (например, требующие соответствия MAC заголовка, если ipfw
вызывают из ip_input ()), образец соответствия не будет соответствовать.
Однако оператор not перед такими образцами заставит образец всегда
соответствовать на тех пакетах, которые могли бы вызвать нежелательные
результаты. Таким образом, на ответственности программиста в случае
необходимости записывать подходящий набор правил для дифференцирования
среди возможных мест. Здесь может быть полезно правило skipto, как
пример:
# пакеты от ether_demux или bdg_forward
ipfw add 10 skipto 1000 all from any to any layer2 in
# пакеты от ip_input
ipfw add 10 skipto 2000 all from any to any not layer2 in
# пакеты от ip_output
ipfw add 10 skipto 3000 all from any to any not layer2 out
# пакеты от ether_output_frame
ipfw add 10 skipto 4000 all from any to any layer2 out
Отправлено спустя 54 минуты 7 секунд:
В статье написано
Код: Выделить всё
ПОСЛЕ ПРИМЕНЕНИЯ ЭТОЙ СТРОКИ У МЕНЯ НА КОМПАХ ПРОПАЛ ИНЕТ, ПИНГИ, ТРАССИРОВКИ ШЛИ, А ВОТ В БРАУЗЕРЕ ИНЕТА НЕ БЫЛО. ТАК ЧТО ИМЕЙТЕ ВВИДУ.
Но не написано как он это исправил.Я это никак не могу исправить кроме удаления из sysctl соответствующей строки. Но тогда не фильтруется MAC/ Кроме того у него грубая ошибка
Код: Выделить всё
#ipfw add deny all from any to any MAC src-mac 00:11:22:33:44:55 mac-type ipv4
Опция scr-mac недопустима - вместо неё надо писать any( во всяком случае я ядерном IPFW FreeBSD 10)