рабочая конфигурация netgraph для ipfw и ng_bpf на FreeBSD

Это означает, говоря поэтично: отправить поток ошибок в тот же «канал», что и нормальный вывод. 2 обозначает ошибку (и). 1 - это основная строка, или стандартный вывод . & 1 указывает путь, по которому идет стандартный вывод. По умолчанию он выводится на экран, и в этом контексте подстановки: $ () , он переходит к переменной, становится ее значением. А > - это перенаправление. Все вместе 2> & 1 означает: перенаправить ошибки путем стандартного вывода.

2
10.01.2016, 12:05
1 ответ

После того, как я нашел пример без тегов (на русском языке!), мне удалось исправить это самостоятельно, используя упрощенную версию команды ngctl в моем вопросе, которая просто возвращает несовпадающие пакеты обратно в ipfw:

ngctl -f- <<-__END__
  mkpeer ipfw: bpf $cookie filter
  name ipfw:$cookie CLASSIFIER
  mkpeer CLASSIFIER: tag matched tag_bad
  name CLASSIFIER:matched TAGGER
  msg CLASSIFIER: setprogram { thisHook="filter" ifNotMatch="filter" ifMatch="matched" $prog }
  msg TAGGER: sethookin { thisHook="tag_bad" ifNotMatch="tag_bad" }
  msg TAGGER: sethookout { thisHook="tag_bad" tag_cookie=$mtag_ipfw tag_id=$tag }
  msg CLASSIFIER: setprogram { thisHook="matched" ifMatch="filter" ifNotMatch="filter" bpf_prog_len=1 bpf_prog=[ { code=6 k=65535 } ] }
__END__
1
27.01.2020, 22:20

Теги

Похожие вопросы