nftables中如何使用dport变量获取匹配的目标端口?
关于nftables规则中动态引用匹配dport的解决方法
你当前规则里用$dport是错误的用法,nftables没有这类全局变量直接获取匹配的目标端口。要在comment里动态显示当前匹配的dport,得用元数据引用语法——通过%加上对应匹配表达式来实现。
正确的规则写法如下:
tcp dport {80, 8080, 443} accept comment "Accepted traffic from port %tcp dport"
原因是nftables的comment字段支持用%引用当前规则中匹配的表达式,以此动态插入实际匹配到的端口值。而你之前用的$是用来定义用户自定义变量的(比如define D_PORTS = {80,8080,443}),并非用于获取当前匹配的元数据。
内容的提问来源于stack exchange,提问作者somenxavier
相关产品推荐
相关产品推荐

