linux 使用 ip route , ip rule , iptables 配置策略路由

来源:互联网 发布:求三唑仑淘宝上输什么 编辑:程序博客网 时间:2024/05/04 22:13
公司内网要求192.168.0.100以内的使用 10.0.0.1 网关上网(电信),其他IP使用 20.0.0.1 (网通)上网
 
首先要在网关服务器上添加一个默认路由,当然这个指向是绝大多数的IP的出口网关。
 
ip route add default gw 20.0.0.1
 
之后通过 ip route 添加一个路由表
 
ip route add table 3 via 10.0.0.1 dev ethX (ethx是10.0.0.1所在的网卡,3 是路由表的编号)
 
之后添加 ip  rule 规则
 
ip rule add fwmark 3  table 3 (fwmark 3是标记,table 3 是路由表3 上边。 意思就是凡事标记了 3 的数据使用table3 路由表)
 
之后使用iptables给相应的数据打上标记
 
iptables -A PREROUTING -t mangle -i eth0 -s 192.168.0.1 -192.168.0.100 -j MARK --set-mark 3
 
因为mangle的处理是优先于 nat 和fiter表的,所以相依数据包到达之后先打上标记,之后在通过ip rule规则,对应的数据包使用相应的路由表进行路由,最后读取路由表信息,将数据包送出网关。

原创粉丝点击