前沿拓展:
查看ip
你是問centos如何查看ip與端口嗎?
查看IPifconfig evice network restart。
趁熱記錄下,給未來的自己
說到查自己主機(jī)在公網(wǎng)上的IP,你的第一反應(yīng)是用什么: ifconfig? curl ip.**? 百度/谷歌我的ip?這些方法都對,也都不對。下面從我們一個實(shí)際開發(fā)的業(yè)務(wù)場景來逐步抽絲剝繭這個過程吧。
我們在使用云端數(shù)據(jù)庫的時候,本地需要連接數(shù)據(jù)庫進(jìn)行開發(fā)管理。
默認(rèn)情況下,從安全角度考慮,云端的數(shù)據(jù)庫是禁止外網(wǎng)訪問的。如果需要外網(wǎng)訪問,可以通過設(shè)置IP白名單進(jìn)行過濾。因此,我們可以將單位的出口IP添加到數(shù)據(jù)庫連接的白名單中,這樣開發(fā)同學(xué)在單位的網(wǎng)絡(luò)環(huán)境下,就可以本地連接云端數(shù)據(jù)庫了。
按照這個思路走,第一需要獲取單位的出口IP是什么。用curl ip.gs得到出口IP是:IP_A, 第二將這個IP_A加入到了數(shù)據(jù)庫訪問的白名單中, 第二本地訪問數(shù)據(jù)庫,發(fā)現(xiàn)連接不上,telnet 數(shù)據(jù)庫的端口也顯示無法連接。
連接不上,排查的思路有2個:
云端數(shù)據(jù)庫的白名單機(jī)制有問題IP_A有問題
第一個排查思路,云端這個SaaS服務(wù)出問題的概率基本很小,而且比較難以從使用者的角度去直接證明。第二個排查思路,比較好處理,而且如果這個排查思路被證實(shí)/證偽,那么可以間接去證明第一個排查思路。
如果IP_A有問題,說明這個IP并不是真正連接數(shù)據(jù)庫的IP,那么真正連接數(shù)據(jù)庫的IP是否可以獲得呢?**是可以的:
先放開數(shù)據(jù)庫連接白名單,也就是允許所有的外部連接都可訪問該數(shù)據(jù)庫。本地連接數(shù)據(jù)庫 mysql -hRDS連接地址 -u賬戶 -p密碼 -P3306進(jìn)入數(shù)據(jù)庫查看進(jìn)程信息:show processlist;
找到Info是show processlist的這一列,發(fā)現(xiàn)IP果然不是IP_A, 而是IP_B
第二把IP_B添加到數(shù)據(jù)庫訪問的白名單之后,就可以正常訪問數(shù)據(jù)庫了。
其實(shí)到這里,就會有個問題出現(xiàn):
以上。
拓展知識:
原創(chuàng)文章,作者:九賢生活小編,如若轉(zhuǎn)載,請注明出處:http:///38661.html