Я использую Mac OS X. Я хотел бы иметь возможность настроить pf, потому что он кажется более сложным и гибким, чем брандмауэр Mac OS X по умолчанию, к которому вы можете получить доступ через Системные настройки. Я попытался использовать некоторые команды pf и получил некоторые ошибки, которые я не понимаю.
bash-3.2$ sudo pfctl -s rules
No ALTQ support in kernel
ALTQ related functions disabled
scrub-anchor "com.apple/*" all fragment reassemble
anchor "com.apple/*" all
bash-3.2$ sudo pfctl -s states
No ALTQ support in kernel
ALTQ related functions disabled
Я посмотрел ALTQ в Википедии и, похоже, это программа очередей, которая выполняет статистическое мультиплексирование пакетов на уровне ядра. Это модуль ядра, который системы BSD используют для организации очереди пакетов. И ядро Mac OS X явно не поддерживает его.
Хорошо, так что это не имеет смысла. Почему в Mac OS X включен брандмауэр BSD pf, но нет поддержки программного обеспечения для организации очередей, необходимого для работы этого брандмауэра? Разве это не контрпродуктивно? Должен быть какой-то способ включить поддержку ALTQ, но я понятия не имею, что это такое. Я даже не совсем уверен, что такое ALTQ. Это загружаемый модуль ядра, который я должен загрузить с помощью kextload
команды? Или проблема в том, что он уже есть, но ядро просто несовместимо с ним. Я совершенно сбит с толку.
Ответы:
Вам нужно включить Firewall:
System Preferences-> Security & Privacy-> Firewall-> Turn On Firewall
(Под капотом это делается
sudo pfctl -E
)если вы попытаетесь после этого:
sudo pfctl -s info
он не должен обвинять в ALTQисточник
System Preferences
был «Брандмауэр приложений», который не зависел от низкоуровневого межсетевого экрана ipfw (который был заменен на pf). Более подробная информация доступна на PF на Mac OS X .