Тут я написал о том, как указать диапазон IP–адресов в правилах файервола IPFW во FreeBSD, а тут я написал об ограничении на количество IP–адресов в одной строке правил. Пришло время объединить эти два знания.
А суть проблемы в том, что нельзя указать в одном правиле и диапазон IP–адресов и перечень IP–адресов. То–есть такая запись, не смотря на всю её логичность, будет не правильной:
- ${fwcmd} add 00001 deny all from 192.168.0.0/24{1-10},192.168.0.12,192.168.0.15 to any in
Хотя данное правило и будет работать, но повлияет только на адреса из указанного диапазона, остальные адреса, перечисленные после, будут проигнорированы. Если диапазон указать не в начале перечня, а где–нибудь в середине, то правило будет проигнорировано полностью.
Правильные правила выглядят так:
- ${fwcmd} add 00001 deny all from 192.168.0.0/24{1-10} to any in
- ${fwcmd} add 00002 deny all from 192.168.0.12,192.168.0.15 to any in