一次多网卡ECS主机的网络请求失败问题的定位与排查
【摘要】 华为云弹性云服务器的ECS主机有多种flavor可供选择,当用户选择的ECS主机包含两块及以上网卡的时候,如图所示,该机器配有三块网卡,为了与外网通讯,会给某块网卡配置EIP,一般情况下,当配置完EIP后服务即可进行正常的网络访问请求,但有一种情况需要考虑,当服务所监听的网卡和EIP不在一块网卡上时,会出现服务请求失败的情况,此时需要根据实际情况定位问题。首先要看服务进程有没有起来,ps -...
华为云弹性云服务器的ECS主机有多种flavor可供选择,当用户选择的ECS主机包含两块及以上网卡的时候,如图所示,该机器配有三块网卡,
为了与外网通讯,会给某块网卡配置EIP,一般情况下,当配置完EIP后服务即可进行正常的网络访问请求,但有一种情况需要考虑,当服务所监听的网卡和EIP不在一块网卡上时,会出现服务请求失败的情况,此时需要根据实际情况定位问题。
首先要看服务进程有没有起来,ps -ef | grep ${service name},如果服务进程正常,需要考虑网络是否正常,可以尝试ping一下公网上的某个域名是否ping通,
,对于多网卡的主机,默认情况下ping命令都是和eth0网卡进行通信,如果发现eth0不能ping通,可以使用ping -I命令指定eth1或者eth2进行ping,如果eth1或者eth2能ping通,如图所示,,则考虑需要增加eth0至eth1或者2的路由信息,route -n看一下本机的路由表,如图所示:
,发现需要增加一条路由表信息来跳转从eth0到eth1的请求,这样从eth0过来的请求都会从eth1的出口出去,使用命令 route add -net aaa.aaa.aaa.aaa netmask bbb.bbb.bbb.bbb gw xxx.xxx.xxx.xxx eth1增加路由信息,其中,aaa.aaa.aaa.aaa表示需要访问的外网网段,bbb.bbb.bbb.bbb表示外网的子网掩码,xxx.xxx.xxx.xxx表示可以通信的网卡的网关;添加完以后route -n查看一下是否添加成功,如果添加错误使用route delete命令进行删除,添加成功可以在试一下ping命令是否成功,
,此时用eth0网卡直接ping外网地址已经可以ping通,大功告成。如果还是出现ping不通的情况,需要检查一下安全组或者iptables的配置,此处不再赘述。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)