记一次云服务器扩展网卡,添加弹性IP无法访问的问题
问题描述 客户在 1 台 linux 云主机上添加 9 块网卡,每个网卡上绑定 1 个弹性 IP,主网卡绑定的公网 ip 可以正常访问,但是扩展网卡的公网 ip 无法访问。
问题原因 没有设置路由规则,导致扩展网卡的 IP 无法访问
解决办法
1、 整理网卡信息,将 IP 设置在同一个子网内,然后都绑定 1 个弹性 IP,如图 1 所示
图 1 如上图所示:每个网卡对应 1 个 IP 地址
2、 登录云服务器,使用 ifconfig eth0,查看 eth0 状态
3、 ifdown eth0 和 ifup eth0 网卡生效,网络配置成功。 然后使用 ifconfig eth1,查看 eth1 状态,使用 ifdown eth1 和 ifup eth1 网卡生效,再次使用 ifconfig eth1,查看 IP 地址。
4、 策略路由让访问扩展网卡的流量从扩展网卡发出,方法如下: (1) /etc/iproute2/rt_tables 添加一个 route table 别名,如 test。保存退出,如图 2 所示
图 2 (2) 在 test 表中添加路由,命令如下: ip route add default via 192.168.1.1 dev eth1 table test 192.168.1.1(扩展网卡网关),test (添加的名称)
(3) 添加策略路由
ip rule add from 192.168.1.5 lookup test prio 32000 192.168.1.5(扩展网卡 IP)
5、主机网卡查看 IP192.168.1.5 对应的弹性 IP,使用 telnet +弹性 IP,此时可以访问
6、方法 ** eth2,然后 vi /etc/iproute2/rt_tables ,添加 32001 test1,保存。再输入命令 ip route add default via 192.168.1.1 dev eth2 table test1 ip rule add from 192.168.1.6 lookup test1 prio 32001 和添加的路由对应,在测试 192.168.1.6 对应弹性 IP,以此类推,添加 8 次,将 9 个网 卡全部加入路由策略,确认可以实现多网卡多 IP 访问。