В описании для ipfw написано
Дополнительно, наборы альтернативного соответствия (или-блокировки),
могут быть созданы, помещая образцы в списках, заключенных между
круглыми скобками () или фигурными скобками {}, и используя оператор or
следующим образом:
ipfw add 100 allow ip from { x or not y or z } to any
Допускается только один уровень круглых скобок. Обратите внимание на то,
что большинство оболочек имеет специальные назначения для круглых скобок
или фигурных скобок, так что, для предотвращения таких интерпретаций,
желательно их экранировать наклонной чертой влево (\).
Тело правила должно вообще включать спецификацию адреса источника и
назначения. Ключевое слово any может использоваться в различных местах,
для определения того, что содержимое требуемого поля является
безразличным.
Но почему когда я делаю свой набор правил согластно документации
то получаю
ipfw add allow ip from 192.168.5.10 to {192.168.5.20 or not 192.168.5.30}
Missing }.
Если
ipfw add allow ip from 192.168.5.10 to \{192.168.5.20 or not 192.168.5.30\}
ipfw: hostname ``{192.168.5.20'' unknown
Он что не понимает скобок? Тогда зачем писать в документации?