Linux内核能最多可以支持255张路由表,其中有3张表是内置的:(注意每张路由表可以包含任意数目的路由条目)
[root@BJ-aliyun ~]# cat /etc/iproute2/rt_tables
255 local
254 main
253 default
0 unspec
注意:如果没有为ip route命令指定表 ,则内核将采用main 路由表。该路线命令只操纵main路由表
#补充:传统的route工具和,ip 工具都只修改local 以及 main表项,不指定默认是操作 main 路由表
#linux刷新路由表
ip route flush cache
ip route flush table JS-DX
ip route flush table 100
更多知识可参考:
Linux进行IP层网络管理的指南
Linux高级路由和流量控制
linux-内核&网络相关文档
linux-ipv6相关知识
https://wiki.linuxfoundation.org/networking/netem
文章目录
场景一:多线单网卡
请参看该文章,这里只介绍了,系统如何 打多个vlan标签,后面跟普通配置IP没有区别
https://boke.wsfnk.com/archives/468.html
场景二:多线多网卡配置(实现原理:linux策略性路由)
#第一:系统环境:这里以redhat7系列做配置案例
eno1 电信IP 111.111.111.111/24 网关.1
eno2 移动IP 222.222.222.222/24 网关.1
#第二:网卡配置(PS:两个网卡配置文件,指不指定网关都不影响,因为后面走的都是策略路由)
cat /etc/sysconfig/network-scripts/ifcfg-eno1
TYPE=Ethernet
BOOTPROTO=static
NAME=eno1
DEVICE=eno1
ONBOOT=yes
IPADDR=111.111.111.111
PREFIX=24
GATEWAY=111.111.111.1
DNS1=8.8.8.8
cat /etc/sysconfig/network-scripts/ifcfg-eno2
TYPE=Ethernet
BOOTPROTO=static
NAME=eno2
DEVICE=eno2
ONBOOT=yes
IPADDR=222.222.222.222
PREFIX=24
GATEWAY=222.222.222.1
DNS1=8.8.8.8
#第三:添加策略路由(注意,table表不要对错了)
#计划:teble 100 表示电信,table 200 表示移动
ip route flush table 100
ip rou add default via 111.111.111.1 dev eno1 src 111.111.111.111 table 100 prio 50
ip rule add from 111.111.111.111 table 100
ip route flush table 200
ip rou add default via 222.222.222.1 dev eno2 src 222.222.222.222 table 200 prio 50
ip rule add from 222.222.222.222 table 200
#第四:添加到开机自启
chmod +x /etc/rc.d/rc.local
[root@localhost ~]# cat /etc/rc.local
ip route flush table 100
ip rou add default via 111.111.111.1 dev eno1 src 111.111.111.111 table 100 prio 50
ip rule add from 111.111.111.111 table 100
ip route flush table 200
ip rou add default via 222.222.222.1 dev eno2 src 222.222.222.222 table 200 prio 50
ip rule add from 222.222.222.222 table 200
#第五:验证测试
#A:列出路由策略数据库(RPDB)
[root@BJ-aliyun ~]# ip rule show
0: from all lookup local
32764: from 111.111.111.111 lookup 100
32765: from 222.222.222.222 lookup 200
32766: from all lookup main
32767: from all lookup default
#B:网络测试
#C:删除策略路由
ip rule del from 111.111.111.111
or
ip rule del prio 32764
############### 或者这样 #########
1. 先增加三个路由表
echo "200 sh" >> /etc/iproute2/rt_tables
echo "201 sz" >> /etc/iproute2/rt_tables
echo "202 bj" >> /etc/iproute2/rt_tables
2. 给每个路由表添加默认路由和直连路由
ip route add default via 172.16.2.1 dev eth3 table sh
ip route add 172.16.2.0/24 dev eth3 src 172.16.2.254 table sh
ip route add default via 172.16.1.1 dev eth2 table sz
ip route add 172.16.1.0/24 dev eth2 src 172.16.1.254 table sz
ip route add default via 172.16.3.1 dev eth4 table bj
ip route add 172.16.3.0/24 dev eth4 src 172.16.3.254 table bj
3. 配置策略路由,使数据原路返回
ip rule add from 172.16.1.254 table sh
ip rule add from 172.16.2.254 table sz
ip rule add from 172.16.3.254 table bj
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论