Linux 云服务器配置多网卡
多网卡说明
对于物理服务器来说,网卡就是服务器的网络设备,用于接入以太网络,和其它计算机进行通信。网卡是基于虚拟化技术模拟的网卡设备,此设备是基于虚拟机所在的物理设备。云平台可以将集群内的虚拟网络统一起来,进行再分配。用户毋需关心具体的网卡在什么位置,有需要申请、挂接即可。
网卡使用限制
每个云服务器最多可以绑定 64 张网卡(其中主网卡 1 张,从网卡 63 张),而每个网络最多可以有 252 张网卡。
配置方法:
一、申请网卡
通过 控制台 > 计算 > 网卡 > 申请网卡。
注意 |
---|
申请网卡前需有 vpc 和私有网络。 |
二、网卡绑定到云服务器
右键网卡,分配到云服务器,选择云服务器。
三、登录云服务器查看网卡
登录到云服务器,查看网卡信息,并检查无法 ping 通其他网卡。
四、配置策略路由
-
执行如下命令增加路由表:
echo "200 table0" >> /etc/iproute2/rt_tables echo "201 table1" >> /etc/iproute2/rt_tables echo "202 table2" >> /etc/iproute2/rt_tables
-
查看路由表:
cat /etc/iproute2/rt_tables
说明 此处数值越小,优先级越高。
-
增加网卡路由策略:
-
清空路由表 200 的路由规则。
p route flush table 200
-
添加默认路由到路由表 200,这条规则是 table0 这个路由表中数据包默认使用
IP 192.168.0.2
通过 eth0 走网关192.168.0.1
。ip route add default via 192.168.0.1 dev eth0 src 192.168.0.2 table 200
-
添加路由规则,凡是到
192.168.0.2
这个地址的 ip 就走路由表 200。ip rule add from 192.168.0.2 lookup 200
-
清空路由表 201 的路由规则。
ip route flush table 201
-
添加默认路由到路由表 201,这条规则是 table1 这个路由表中数据包默认使用 IP
192.168.0.10
通过 eth1 走网关192.168.0.1
。ip route add default via 192.168.0.1 dev eth1 src 192.168.0.10 table 201
-
添加路由规则,凡是到
192.168.0.2
这个地址的 ip 就走路由表 201。ip rule add from 192.168.0.10 lookup 201
-
清空路由表 202 的路由规则。
ip route flush table 202
-
添加默认路由到路由表 202,这条规则是 table2 这个路由表中数据包默认使用 IP
192.168.0.100
通过 eth2 走网关192.168.0.1
。ip route add default via 192.168.0.1 dev eth2 src 192.168.0.100 table 202
-
添加路由规则,凡是到
192.168.0.2
这个地址的 ip 就走路由表 202。ip rule add from 192.168.0.100 lookup 202
-
五、测试网卡是否通
六、配置路由策略永久生效
这些路由规则只是临时添加了,重启网络会失效。
在 /ect/rc.local
文件中添加上述配置即可。
echo "ip route add default via 192.168.0.1 dev eth0 src 192.168.0.2 table 200" >> /etc/rc.local
echo "ip rule add from 192.168.0.2 lookup 200" >> /etc/rc.local
echo "ip route flush table 201" >> /etc/rc.local
echo "ip route add default via 192.168.0.1 dev eth1 src 192.168.0.10 table 201" >> /etc/rc.local
echo "ip rule add from 192.168.0.10 lookup 201" >> /etc/rc.local
echo "ip route flush table 202" >> /etc/rc.local
echo "ip route add default via 192.168.0.1 dev eth2 src 192.168.0.100 table 202" >> /etc/rc.local
echo "ip rule add from 192.168.0.100 lookup 202" >> /etc/rc.local```