使用 PF 防火墙在列表中扩展包含带前缀(CIDR)的子网 IP 地址的宏

使用 PF 防火墙在列表中扩展包含带前缀(CIDR)的子网 IP 地址的宏

我正在尝试将包含带有子网掩码的地址的宏扩展为带有 PF 的列表,如下所示:

subnet1 = "192.168.1.0/24"
subnet2 = "10.0.0.0/8"
subnets = "{" $subnet1 $subnet2 "}"

但这会导致最后一行出现语法错误:

/etc/pf.conf:3: 语法错误

它适用于非子网掩码地址:

ip1 = "192.168.1.0"
ip2 = "10.0.0.0"
ips = "{" $ip1 $ip2 "}"

我正在使用 FreeBSD 10.0 中的 PF(≈ OpenBSD 4.5 中的 PF)。我该如何让它工作?

答案1

定义时必须再次引用子网掩码地址(使用单引号):

subnet1 = "'192.168.1.0/24'"
subnet2 = "'10.0.0.0/8'"
subnets = "{" $subnet1 $subnet2 "}"

遗憾的是,这似乎没有在任何地方记录。

相关内容