У меня проблема в том, что мой pf регистрирует много пакетов, которые не должны регистрироваться. Я воспроизвел его с почти пустым pf.conf:
set skip on lo
и он все еще регистрирует некоторые пакеты. Я думаю, что все эти пакеты имеют тип ICMP6 и на самом деле они не принадлежат моему компьютеру, я понятия не имею, почему я их получаю, но у меня нет контроля над этим.
Вот пример пакета (полученного с помощью tcpdump на pflog0):
13:18:29.211678 rule def/(match) pass in on vio0: fe80::3ad5:47ff:fe75:1a2b > ff02::1:ff75:1a2b: HBH icmp6: multicast listener report [hlim 1]
Итак, мой вопрос: где я могу прочитать об этих правилах сопоставления по умолчанию и как отключить эти журналы.
Я попытался явно сопоставить эти пакеты с чем-то вроде pass in on vio0
(без оператора регистрации), но они все еще регистрируются, вероятно, из-за того загадочного совпадения по умолчанию, которое отмечает пакет для регистрации.
Я понятия не имею, почему я их получаю
Это многоадресный трафик.
где я могу прочитать об этих правилах соответствия по умолчанию
Ну, в целом дело в частично задокументирован но это не так явно связано с проблемой, которую вы видите.
Из man pf.conf
(разметка является моя):
…
разрешить варианты - По умолчанию, пакеты с параметрами IPv4 или IPv6 хоп за хопом или заголовок опций назначения заблокированы. Когда для правила передачи указано allow-opts, пакеты, которые проходят фильтр на основе этого правила (последнее совпадение), проходят, даже если они содержат параметры.
…
- HBH
вы видите в журналах именно такой "шаг за шагом".
Моя теория: Разработчики Pf решили, что поскольку такой трафик следует блокировать, даже если есть pass
правило (которое, по-видимому, присутствует по умолчанию в вашем случае) имеет смысл доносить до свистка сильнее, поэтому вы его регистрируете.
и как отключить эти журналы
Как предлагается на странице руководства, вы можете исправить это, введя pass
править с allow-opts
явно указано:
pass allow-opts