Article / 文章中心

阿里云ECS无法内网连接到 100.64.0.0/10 网段的 RDS

发布时间:2018-01-19 点击数:4201

问题现象:

通过ECS无法内网访问RDS。ECS内网地址已经加入RDS白名单, 通过公网可以访问RDS。 但是通过内网无法访问。 内网DNS可以解析到RDS的IP地址。

问题原因:

RDS的内网地址增加了100.64.0.0/10网段的地址。用户可以ping下RDS的内网地址得到对应的IP,如下图所示。

1.JPG

检查ECS是否有100.64.0.0/10的路由表信息。如下图中的红框内的路由记录。如果缺少该条路由记录将会导致ECS无法通过内网正常访问100.64.0.0/10网段的RDS。

1.JPG

解决方法:

如果ECS没100.64.0.0/10路由记录,可以采用下面的方法进行修改:

Linux 相关系统添加方法参考:

注:下文的gateway_ip请根据实际情况替换
1)查看内网网关GATEWAY IP
cat /etc/sysconfig/network-scripts/route-eth0
下面的gateway_ip需要替换成上面查询得到的网关地址
2)手动添加静态路由规则,实时生效:
ip route add 100.64.0.0/10 via gateway_ip dev eth0
3)添加静态路由到配置文件,持久化配置,下次重启系统也能生效:
centos/redhat/alios/suse/opensuse 系统:
echo ”100.64.0.0/10 via gateway_ip dev eth0” >> /etc/sysconfig/network-scripts/route-eth0
ubuntu/debian 系统:
echo ”up route add -net 100.64.0.0 netmask 255.192.0.0 gw gateway_ip dev eth0” >> /etc/network/interfaces
gentoo 系统:
echo ”routes_eth0=(\”100.64.0.0/10 via gateway_ip\”)” >> /etc/conf.d/net
4)检查路由是否设置成功:
ip route show | grep ’100.64.0.0/10’ 100.64.0.0/10 via gateway_ip dev eth0
Windows 操作系统添加方法
1)查看GATEWAY IP 在Windows 命令行下执行 route print 查看私网网关
2)添加路由 在Windows 命令行下执行下面的命令,这个命令会让路由规则永久生效
route add 100.64.0.0 mask 255.192.0.0 gateway_ip -p