为了能工作到65岁不被淘汰,努力学会了公有LINUX云主机的策略路由配置!

近期有粉丝留言说:买了公有云linux云主机,想配置双网卡通公网玩玩,但不知道怎么配置,那么这期我们就介绍这个场景的操作配置,希望对更多的人有帮助!

适用场景:

下面两种场景均适合这种操作,都需要添加策略路由解决:

1、主机绑定同网段多块网卡,只有主网卡地址通,其他地址不通

2、主机多块网卡绑定多个EIP后,只有绑定主网卡的EIP可以通信

操作系统:CentOS系统7.6

假设公有云主机已经增加了两张网卡,IP地址分别为192.168.100.103、192.168.200.41:

1、ifconfig    查看eth0、eth1 的IP是否一致。

2、确认是否没有eth1的配置文件(如有跳过此步)

cd /etc/sysconfig/network-scripts/
ll
如缺eth1,增加eth1的配置文件,注意HWADDR和GATEWAY:
cp ifcfg-eth0 ifcfg-eth1


vim ifcfg-eth1

eth0配置:

cbd07c0aa491314751c338252edf19b5.png

24f73fe2b45477f32b6fac6ed8e3cfbe.png

eth1配置:

d3668d6712124f0970e28ea255174542.png

2434e59bd219576c23e40d22e63589e6.png

按ESC退出,并输入:wq!保存配置
增加完重启网络:systemctl restart NetworkManager

3、执行以下命令,在“/etc/iproute2/rt_tables”文件中增加两张路由表名称(route1和route2,可自定义名称)和路由表优先级(252和251,优先级数值越小表示优先级越高)。

①vi /etc/iproute2/rt_tables
251 route1 
252 route2 
255 local         #默认存在,不要动
254 main          #默认存在,不要动
253 default         #默认存在,不要动

或者 直接在root执行:

echo "251 route1" >> /etc/iproute2/rt_tables
echo "252 route2" >> /etc/iproute2/rt_tables

4、配置永久路由:

vi /etc/rc.local
在文件末尾添加以下配置:


# wait for nics up
sleep 10
# Add v4 routes for eth0
ip route flush table route1
ip route add default via 192.168.100.1 dev eth0 table route1
ip route add 192.168.100.0/24 dev eth0 table route1
ip rule add from 192.168.100.103 table route1


# Add v4 routes for eth1
ip route flush table route2
ip route add default via 192.168.200.1 dev eth1 table route2
ip route add 192.168.200.0/24 dev eth1 table route2
ip rule add from 192.168.200.41 table route2


参数说明:wait for nics up:文件启动时间,建议和本示例中的配置保持一致
按ESC退出,并输入:wq!保存配置

主网卡

ip route add default via子网网关 dev 网卡名称 table 路由表名称

ip route add子网网段 dev 网卡名称 table 路由表名称

ip rule add from网卡地址 table 路由表名称

扩展网卡

ip route add default via子网网关 dev 网卡名称 table 路由表名称

ip route add子网网段 dev 网卡名称 table 路由表名称

ip rule add from网卡地址 table 路由表名称

参数说明如下:

网卡名称:填写实际名称。

路由表名称:自定义路由表名称,此处请使用数字命名路由表。

其他网络信息:填写实际收集的地址。

5、注意检查rc.local是否有执行权限,在centos7或者以上的版本,rc.local是没有执行权限的,主机重启之后,不执行该文件配置,导致当前配置不生效,所以需要赋予执行权限:

chmod +x /etc/rc.local

6、重启reboot

“/etc/rc.local”文件中添加的策略路由,需要重启云服务器后才会生效,此处请确保不影响业务再重启云服务器操作。

7、依次执行以下命令,确认策略路由是否添加成功

ip rule
ip route show tableroute1
ip route show tableroute2
回显类似如下信息,表示策略路由添加成功


[root@ecs-resource ~]# ip rule
0:  from all lookup local 
32764:  from 192.168.200.41 lookup route2 
32765:  from 192.168.100.103 lookup route1 
32766:  from all lookup main 
32767:  from all lookup default 


[root@ecs-resource ~]# ip route show table 251
default via 192.168.100.1 dev eth0
192.168.100.0/24 dev eth0 scope link


[root@ecs-resource ~]# ip route show table 252
default via 192.168.200.1 dev eth1
192.168.200.0/24 dev eth1 scope link

可通过本地windows机器进cmd,确认是否能ping通云主机EIP

ping eth0

7e97a8dce01318c2f3e3b91471b90d4d.png

ping eth1

9fce529f903cf5f5254a9d503c939d31.png

注意:

注意1 :做完以上策略路由后,可以保证用ip作为源去通信是正常的,但是如果以eth0、eth1的网卡名称作为源访问还是不通的,因为策略路由是根据from后面的ip来匹配的。

ip rule add from 192.168.0.x table route1

如果要以eth0、eth1的网卡名称作为源去通信,需要在路由表中添加针对 dev 的路由,如果是双网卡,一般eth0已经存在默认路由了,则为eth1增加一条默认路由即可:

route add default gw 192.168.0.1 dev eth1 metric 100 #注意要加metic,否则会导致主网卡eth0的默认路由失效

注意2:两个网卡的安全组都要放通ICMP才可ping通IP

注意3:公有云主机网卡要放通本地windows机器ip ping测

不想错过文章内容?读完请点一下“在看02b0600a3ff5ecbf8bf5f857bddf55e3.gif,加个关注”,您的支持是我创作的动力

期待您的一键三连支持(点赞、在看、分享~)

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ICT系统集成阿祥

感谢大佬!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值