为了保证客户数据安全,可以通过IP白名单功能限制客户端访问AnalyticDB MySQL版。本文介绍设置白名单过程中常见问题及解决方法。
问题排查
IP白名单功能限制客户端的访问,当出现客户端无法正常连接AnalyticDB MySQL时,可以通过以下方式判断IP白名单设置是否有问题。
- 在客户端命令行中ping一下AnalyticDB MySQL集群的域名(VPC地址)。
- 如果报错无法解析域名,请检查是否有拼写错误。若确认拼写正确,但无法解析域名,请联系技术支持排查。
- 如果无法ping通,说明网络未打通,请检查是否设置白名单。
- 在客户端命令行中telnet AnalyticDB MySQL集群的域名和端口。
如果返回超时报错telnet xxxxxxx.ads.aliyuncs.com 3306
Connection timed out
,通常是IP白名单设置有问题。
原因
- 未设置IP白名单。
- 设置的IP不是正确的客户端出口IP。
- 客户端出口IP有多个或经常变化,IP白名单中设置不全。
解决方案
设置白名单
完成白名单配置,详情请参见设置白名单。
获取正确的客户端出口IP
客户端出口IP是指客户端所在本地网络环境中用于访问外部网络的网关设备的IP,并不一定是客户端的本地IP地址。
您可以通过以下方式获取正确的客户端出口IP。
- 推荐联系客户端所在网络环境的网络管理员确定具体有哪些出口IP,此方法可以获得更准确和更全面的出口IP。
- 如需在相同VPC内通过内网访问,IP白名单为客户端ECS的IP或者VPC网段。说明 VPC网段地址查询方法:登录云原生数据仓库AnalyticDB MySQL控制台,在集群信息页面查询VPC ID。然后登录专有网络控制台,在专有网络页面根据VPC ID查询网段。
- 如需通过公网访问,可以借用第三方工具获取客户端出口IP。
- 浏览器打开
https://www.ip138.com/
网址,网页中显示客户端出口IP。 - 在客户端命令行执行
curl "http://myip.ipip.net"
获取客户端出口IP。
- 浏览器打开
解决IP白名单设置不全问题
- 客户端出口IP通常不止一个,如使用第三方工具获取IP,建议多执行几次
curl "http://myip.ipip.net"
,收集全所有的客户端出口IP。 - 如果您的IP地址较多,可以填写IP段,将IP地址的最后一部分换成0/24,即成为IP段。例如将IP地址192.168.0.1改为IP段192.168.0.0/24。