momo (@annazhaog)用 nftables 实现 LAN 选择性代理的动态规则模板 中发帖

用 nftables 实现 LAN 选择性代理的动态规则模板
在日常网络环境中,经常需要让 局域网内的部分流量走代理,而其他流量直连。
传统 iptables 虽然能做到,但规则管理不够优雅;nftables 则提供了更灵活的模板化和动态加载能力。

需求分析

目标:只代理 LAN 内特定 IP 段或设备的流量
要求:

规则可模板化,方便批量修改
支持运行时替换变量(如代理网关 IP)
易于加载/卸载,避免硬编码




nftables 配置模板示例
假设我们要让 192.168.1.100 走代理,其余直连:
#!/usr/sbin/nft -f

define PROXY_IP = 192.168.1.2
define PROXY_PORT = 1080
define TARGET_IP = 192.168.1.100

table inet lan_proxy {
...