阿里云ECS 無法內(nèi)網(wǎng)連接到 100.64.0.0/10 網(wǎng)段的 RDS
問題現(xiàn)象:
通過ECS無法內(nèi)網(wǎng)訪問RDS。ECS內(nèi)網(wǎng)地址已經(jīng)加入RDS白名單, 通過公網(wǎng)可以訪問RDS。 但是通過內(nèi)網(wǎng)無法訪問。 內(nèi)網(wǎng)DNS可以解析到RDS的IP地址。
問題原因:
RDS的內(nèi)網(wǎng)地址增加了100.64.0.0/10網(wǎng)段的地址。用戶可以ping下RDS的內(nèi)網(wǎng)地址得到對應的IP,如下圖所示。
檢查ECS是否有100.64.0.0/10的路由表信息。如下圖中的紅框內(nèi)的路由記錄。如果缺少該條路由記錄將會導致ECS無法通過內(nèi)網(wǎng)正常訪問100.64.0.0/10網(wǎng)段的RDS。
解決方法:
如果ECS沒100.64.0.0/10路由記錄,可以采用下面的方法進行修改:
Linux 相關系統(tǒng)添加方法參考:
注:下文的gateway_ip請根據(jù)實際情況替換
1)查看內(nèi)網(wǎng)網(wǎng)關GATEWAY IP
cat /etc/sysconfig/network-scripts/route-eth0
下面的gateway_ip需要替換成上面查詢得到的網(wǎng)關地址
2)手動添加靜態(tài)路由規(guī)則,實時生效:
ip route add 100.64.0.0/10 via gateway_ip dev eth0
3)添加靜態(tài)路由到配置文件,持久化配置,下次重啟系統(tǒng)也能生效:
centos/redhat/alios/suse/opensuse 系統(tǒng):
echo ”100.64.0.0/10 via gateway_ip dev eth0” >> /etc/sysconfig/network-scripts/route-eth0
ubuntu/debian 系統(tǒng):
echo ”up route add -net 100.64.0.0 netmask 255.192.0.0 gw gateway_ip dev eth0” >> /etc/network/interfaces
gentoo 系統(tǒng):
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 操作系統(tǒng)添加方法
1)查看GATEWAY IP 在Windows 命令行下執(zhí)行 route print 查看私網(wǎng)網(wǎng)關
2)添加路由 在Windows 命令行下執(zhí)行下面的命令,這個命令會讓路由規(guī)則永久生效
route add 100.64.0.0 mask 255.192.0.0 gateway_ip -p