核心是用iptables在mangle表PREROUTING链标记流量(如黑IP、扫描包),再通过策略路由将fwmark 0x100包导向audit表(如via 172.16.10.5),并用CONNMARK同步双向连接状态以保障引流完整。

核心是用 iptables 在 mangle 表中标记流量,再用策略路由把带标记的包导向指定路径——它不自动识别威胁,而是把你定义的安全意图(比如“来自黑IP的包走审计通道”)变成可执行的网络行为。
一、在 PREROUTING 链中打安全标记
必须使用 mangle 表的 PREROUTING 链,这是入向流量最早可干预的位置,也是 fwmark 能被后续路由系统识别的前提。
- 封禁类扫描特征:匹配异常 TCP 标志组合,打标 0x100
- 高频连接源:配合 recent 模块,60 秒内命中 10 次即打标 0x100
- 已知恶意 IP 段:直接按源地址匹配,如 -s 203.0.113.0/24 -j MARK --set-mark 0x100
- 伪装 HTTPS 流量:检测非标准端口(如 8443)上含 "GET /" 的明文特征,打标 0x100
二、建立专用路由表与引流路径
标记只是起点,真正分流靠的是独立路由表 + 策略规则绑定。系统默认只查 main 表,必须显式告诉内核:“fwmark 0x100 的包,请查 audit 表”。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 在 /etc/iproute2/rt_tables 中追加一行:100 audit
- 为 audit 表配置出口:ip route add default via 172.16.10.5 dev eth1 table audit(172.16.10.5 是你的沙箱或审计平台)
- 添加策略规则:ip rule add fwmark 0x100 table audit
三、保持连接双向一致(关键避坑点)
只标记进向包,回程响应会走默认路由,导致连接中断或审计断流。必须用 CONNMARK 同步状态。
- 首次进包打标并保存到连接跟踪:-j CONNMARK --save-mark
- 后续所有同连接包(含回程)恢复标记:-m connmark --ctmark 0x100 -j CONNMARK --restore-mark
- 这两条规则需紧接在打标规则之后,且都放在 PREROUTING 链
四、验证与持久化
临时配置可用 ip rule show 和 ip route show table audit 快速确认;生产环境务必持久化,否则重启失效。
- 将 ip rule / ip route 命令写入 systemd service 或网络启动脚本
- iptables 规则建议用 iptables-save > /etc/sysconfig/iptables 保存,并启用 iptables 服务自启
- 测试时可用 tcpdump -i eth1 host 172.16.10.5 抓包,确认可疑流量是否真被引向目标设备


















