关键在于物理路径完全隔离:管理与业务平面使用独立网卡、独立交换机(或同一交换机不同物理模块),路由表严格分离,禁用IP转发,并通过traceroute和tcpdump实测验证不可达。

一、物理与网络层先断开通路
这是最根本的前提:管理网卡和业务网卡必须接在不同交换机,或同一交换机的不同物理模块(不能只是VLAN隔离)。比如:
- 管理口 eth0 接入专用管理交换机,IP设为 192.168.10.50/24,网关 192.168.10.1
- 业务口 eth1 接入业务核心交换机,IP设为 10.0.20.50/24,网关 10.0.20.1
- 两台交换机之间不配置任何三层互通,物理上无直连链路
二、创建独立路由表并绑定网卡
编辑 /etc/iproute2/rt_tables,追加两行(ID避开0–99):
100 mgmt_table<br>200 biz_table
然后为每张表配置专属路由:
-
管理表:
ip route add 192.168.10.0/24 dev eth0 src 192.168.10.50 table mgmt_tableip route add default via 192.168.10.1 dev eth0 table mgmt_table -
业务表:
ip route add 10.0.20.0/24 dev eth1 src 10.0.20.50 table biz_tableip route add default via 10.0.20.1 dev eth1 table biz_table
三、用策略规则强制流量归位
添加基于源地址的规则,确保“谁进谁出”:
ip rule add from 192.168.10.50/32 table mgmt_table priority 100ip rule add from 10.0.20.50/32 table biz_table priority 101- 禁用主表默认路由(避免 fallback):
ip route del default via ... dev ... table main
执行 ip rule show 确认优先级顺序,ip route show table mgmt_table 验证内容是否完整。
四、持久化 + 安全加固
临时命令重启即失效,必须固化:
- NetworkManager 用户:用
nmcli connection modify "System eth0" ipv4.post-up-command注入上述ip rule和ip route命令 - 关闭转发:
sysctl -w net.ipv4.ip_forward=0,并写入 /etc/sysctl.conf - 检查所有接口的反向路径过滤:
for i in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 > $i; done(防丢包)
最后实测验证:从管理网段 ping -I eth0 10.0.20.50 应失败;从业务网段 ssh -o BindAddress=10.0.20.50 user@192.168.10.50 也应失败——这才是真正分离。



















