服务器映射外网端口22连接不上,局域网能通
问题:在某一天之前,服务器网络都很正常,因为断电服务器重启,发现外网映射到服务器怎么都连接不上了,外网是有一个机房然后通过防火墙,交换机在连接到的服务器,奇怪的是机房有5台服务器,只是有两台通过外网映射连接不上,但是其他都正常,对比发现,其他服务器都只接了一个网线,连接不上的服务器接的是多个网线,换个网线接到服务器,再把ip改了就连接上了。
原因:路由问题,由于多个网线就会出现多个路由,而且每次服务器重启路由的排序就会变,外网映射是默认找第一个路由,但是第一个路由和ip地址不匹配就导致了,外网映射失败就访问不到了
举例说明:
我的机房分配了一个外网ip 为58.89.75.23,然后通过防火墙配置 外网映射内网,58.89.75.23:122 对应10.15.57.33:22,那么在 正常情况下,访问58.89.75.23:122 相当于就能访问到10.15.57.33:22的服务器,但是在服务器内部多接了几个网卡,如192.168.2.2,189.89.74.5,这个时候通过 ip route | grep default 命令就能看到本服务器中的路由,但是这些路由每次服务器重启都会随机排序,189.89.74.1路由189.89.74.1
192.168.2.2路由192.168.2.1 10.15.57.33路由10.25.57.1 这个路由服务器重启了 ,10.15.57.1这个路由排最前面,那么外网映射是能正常访问的,如果这个路由不在最前面,外网映射找10.15.57.33这个的路由默认取第一个,就会发现路由对应不上就导致了映射失败,从而访问不到22端口,就会有出现时候明明都没动什么配置发现外网映射就是不行的情况
