摘要:linux服務器上踩過一個坑,記錄下來留給自己以后看。
場景:由於服務器是自動化安裝,在安裝過程中我把APIGATEWAY地址填寫錯誤(它有兩個浮動ip在不同的網絡平面),最后導致服務一直訪問不了外網和內部其他服務,把自己深深的坑了一把。
如何測試網絡的連通性
1、curl -I -X GET https://www.baidu.com 如果返回碼是200 則該服務器可以正常訪問,否則下一步。
此處有個坑請注意:如果你的DNS服務器可以對IPv4和IPv6都解析,但由於你curl命令沒指明怎么解析會導致訪問隨機性不通!!
curl -I -4 -X GET https://www.baidu.com # -4 使用IPv4解析,curl命令詳情請搓這里。
2、ping baidu.com 如果不能正常解析出IP則說明host服務器有問題,如果能正常解析出IP,先檢查IP是否正確,如果不正確像我一樣自裁吧,如果IP正確但ping不通,請檢查網絡。
此處有兩個坑請注意:
1)如果你的服務和你要訪問的服務在不同網絡平面,設計上就是禁止訪問,但如果需要訪問則需要注冊到APIGATEWAY上。ps:所以你如果填錯了會導致注冊不上,DNS注冊錯誤。
2)如果注冊到APIGATEWAY上失敗,也會導致404錯誤。
3、如果你訪問的服務需要帶token訪問,則正常返回碼為403(無權限訪問),而不是404(找不到該服務)
此處有個坑請注意:如果你的鑒權是另一個服務的工作,那兩個服務的服務器時間設置不一致會導致token失效。