前沿拓展:
查看ip
你是问centos如何查看ip与端口吗?
查看IPifconfig evice network restart。
趁热记录下,给未来的自己
说到查自己主机在公网上的IP,你的第一反应是用什么: ifconfig? curl ip.**? 百度/谷歌我的ip?这些方法都对,也都不对。下面从我们一个实际开发的业务场景来逐步抽丝剥茧这个过程吧。
我们在使用云端数据库的时候,本地需要连接数据库进行开发管理。
默认情况下,从安全角度考虑,云端的数据库是禁止外网访问的。如果需要外网访问,可以通过设置IP白名单进行过滤。因此,我们可以将单位的出口IP添加到数据库连接的白名单中,这样开发同学在单位的网络环境下,就可以本地连接云端数据库了。
按照这个思路走,第一需要获取单位的出口IP是什么。用curl ip.gs得到出口IP是:IP_A, 第二将这个IP_A加入到了数据库访问的白名单中, 第二本地访问数据库,发现连接不上,telnet 数据库的端口也显示无法连接。
连接不上,排查的思路有2个:
云端数据库的白名单机制有问题IP_A有问题
第一个排查思路,云端这个SaaS服务出问题的概率基本很小,而且比较难以从使用者的角度去直接证明。第二个排查思路,比较好处理,而且如果这个排查思路被证实/证伪,那么可以间接去证明第一个排查思路。
如果IP_A有问题,说明这个IP并不是真正连接数据库的IP,那么真正连接数据库的IP是否可以获得呢?**是可以的:
先放开数据库连接白名单,也就是允许所有的外部连接都可访问该数据库。本地连接数据库 mysql -hRDS连接地址 -u账户 -p密码 -P3306进入数据库查看进程信息:show processlist;
找到Info是show processlist的这一列,发现IP果然不是IP_A, 而是IP_B
第二把IP_B添加到数据库访问的白名单之后,就可以正常访问数据库了。
其实到这里,就会有个问题出现:
以上。
拓展知识:
原创文章,作者:九贤生活小编,如若转载,请注明出处:http://www.wangguangwei.com/38661.html