
Server is unreachable 伺服器不可及 解決方案
- 問題描述:
- 問題分析:
- 解決方案:
-
- 方案一:
- 方案二:
- 方案三:
- 方案四: 修改 Hosts 檔案
-
- macOS 修改 Hosts 檔案
- Windows 修改 Hosts 檔案
問題描述:
PyCharm IntelliJ IDEA 系列軟體登入GitHub賬号報如下錯誤資訊:
Server is unreachable 伺服器不可及
問題分析:
網絡原因,不能通路到國外的伺服器
解決方案:
方案一:
利用https協定登入
token方式登入這裡就不多描述,不會的請點選下方連結看我另一篇博文:
解決IDEA 登入github失敗問題彙總
方案二:
dea設定裡搜尋HTTP Proxy ,去掉代理就可以了
方案三:
用GitHub鏡像方式登入 即:github.com.cnpmjs.org
注意: 鏡像隻能用來登入,不能生成token,是以需要在github.com環境下生成token.
附解說:
大陸往往欲通路github.com而不可得,但其實可以用鏡像站通路,國内可以直接通路的鏡像有下面這些:
1:github.com.cnpmjs.org,用法:直接用 “github.com.cnpmjs.org” 代替 “github.com” 即可。例如:
git clone https://github.com/xxxxx/xxxxxxx.git
git clone https://github.com.cnpmjs.org/xxxxx/xxxxxxx.git
2:https://gitclone.com/,此鏡像是直接搜尋相關倉庫,然後克隆。例如:欲克隆git clone https://github.com/tomasr/molokai,則按如下方法:
欲克隆:
git clone https://github.com/tomasr/molokai
則:
git clone https://gitclone.com/github.com/tomasr/molokai
3:另外,也可以直接通過gitee.com中的鏡像下載下傳相關倉庫資料,如下:https://gitee.com/mirror-github/
方案四: 修改 Hosts 檔案
前三種方案都建立在CMD 視窗能ping 同github.com 的前提下
方案四就是傳統的,普遍的,全局的,直接改系統hosts:
再總結一下 Github 通路失敗或者緩慢的原因:本機網絡設定的 DNS 伺服器解析 Github 相關域名到遭受污染的 IP 位址,這些 IP 位址要麼本身無法通路,要麼節點過遠,進而導緻了通路失敗或者速度緩慢。
那麼我們修改的方案可以是:
修改本機 Hosts 檔案,主動建立域名與 IP 的映射關系,通路到這些域名時直接使用 Hosts 指定的 IP,繞過 DNS 解析。
修改網絡的 DNS 伺服器,換到能夠解析出合适 IP 的 DNS 伺服器。
顯然第一種方案更加友善。因為 DNS 伺服器儲存的映射關系是動态更新的,無法直接控制。直接修改本機 Hosts 檔案,鎖定域名對應的 IP,更加有效友善。當然,Hosts 檔案的作用就是綁定域名與 IP 的映射關系。
macOS 修改 Hosts 檔案
打開終端,使用 vim 修改 Hosts 檔案:
sudo vi /etc/hosts
操作 vim 可以簡單百度一下。添加 Github 相關域名的綁定,修改如下圖所示,具體值見最後。
重新整理網絡 DNS 緩存:
sudo killall -HUP mDNSResponder
macOS 自帶sudo與vim,當然,可以通過 Homebrew 安裝最新版本的vim:brew install vim。
Windows 修改 Hosts 檔案
手動方式:
1、打開hosts所在的目錄
Win+R->C:\windows\System32\drivers\etc
2、編輯hosts檔案
使用Notepad++或者記事本以管理者身份打開hosts,修改記錄格式如下:
輸入指令讓該記錄不用重新開機而立即生效
Win+R->cmd->ipconfig /flushdns
vim方式:
打開 cmd,使用 vim 修改 Hosts 檔案:
sudo vim C:\Windows\System32\drivers\etc\hosts
操作 vim 可以簡單百度一下。添加 Github 相關域名的綁定,修改如上圖所示,具體值見最後。
重新整理網絡 DNS 緩存:
ipconfig /flushdns
Windows 不自帶sudo與vim,可以通過 Scoop 安裝:scoop install sudo vim。
最新 IP 值
列出目前使用的 Github 相關域名比較合适的 IP 值,筆者會定期維護更新。其中的設定可以解決github.com頭像無法顯示的問題:
注意:直接将下面内容添加到hosts檔案下面即可:
# Github Hosts
# Update 20210717
# domain: github.com
140.82.113.4 github.com
140.82.113.9 nodeload.github.com
140.82.114.5 api.github.com
140.82.113.9 codeload.github.com
185.199.108.133 raw.github.com
185.199.108.153 training.github.com
185.199.108.153 assets-cdn.github.com
185.199.108.153 documentcloud.github.com
185.199.108.154 help.github.com
# domain: githubstatus.com
185.199.108.153 githubstatus.com
# domain: fastly.net
199.232.69.194 github.global.ssl.fastly.net
# domain: githubusercontent.com
185.199.108.133 raw.githubusercontent.com
185.199.108.133 cloud.githubusercontent.com
185.199.108.133 gist.githubusercontent.com
185.199.108.133 marketplace-screenshots.githubusercontent.com
185.199.108.133 repository-images.githubusercontent.com
185.199.108.133 user-images.githubusercontent.com
185.199.108.133 desktop.githubusercontent.com
185.199.108.133 avatars.githubusercontent.com
185.199.108.133 avatars0.githubusercontent.com
185.199.108.133 avatars1.githubusercontent.com
185.199.108.133 avatars2.githubusercontent.com
185.199.108.133 avatars3.githubusercontent.com
185.199.108.133 avatars4.githubusercontent.com
185.199.108.133 avatars5.githubusercontent.com
185.199.108.133 avatars6.githubusercontent.com
185.199.108.133 avatars7.githubusercontent.com
185.199.108.133 avatars8.githubusercontent.com
# End of the section
不一定保證每一項都是正确、有效的,但目前來說筆者實測能夠穩定通路 Github &登入 GitHub。歡迎大家留言讨論,指正或者建議更好的解決方案~