解決Github訪問失敗

前言

Github作為全球最大的開源平臺(tái),有很多優(yōu)秀的開源項(xiàng)目,可以在上面找到很多參考代碼,是程序員學(xué)習(xí)交流平臺(tái)。

原文鏈接:解決 github 訪問失敗 | Hackt0's Blog

為什么會(huì)時(shí)常訪問失敗呢?

主要是因?yàn)槲覀冊(cè)谡?qǐng)求GitHub的網(wǎng)址時(shí),會(huì)先向DNS服務(wù)器發(fā)送一個(gè)請(qǐng)求,DNS服務(wù)器解析獲取到對(duì)應(yīng)的IP地址,然后發(fā)起連接。

被攔截主要原因也是Github屬于國(guó)外站點(diǎn),偶爾會(huì)被國(guó)內(nèi)神秘怪圈吞噬;而為了減少解析次數(shù),DNS會(huì)做緩存,將已有的IP直接返回,此時(shí)該IP可能已經(jīng)被攔截,繼續(xù)使用DNS緩存訪問會(huì)一直異常,可以直接ping一下看看:

ping.png

解決辦法

繞過DNS解析

最簡(jiǎn)單的辦法當(dāng)然是既然DNS解析會(huì)出錯(cuò),那我們自己解析好然后訪問就好了,那怎么自己添加解析呢?

那就是修改hosts文件,hosts文件是記錄常用域名與對(duì)應(yīng)的IP,也是用來做域名解析,且優(yōu)先級(jí)高于DNS解析。常見的用法也包括修改hosts文件達(dá)到測(cè)試環(huán)境和線上環(huán)境切換的效果,就是測(cè)試的時(shí)候添加規(guī)則將域名指向內(nèi)網(wǎng);還有就是惡意軟件常修改hosts來劫持域名,比如將正常導(dǎo)航網(wǎng)頁的IP填成到某數(shù)字導(dǎo)航IP。

常用的hosts文件位置:

Windows 系統(tǒng):C:\Windows\System32\drivers\etc\hosts

linux 系統(tǒng): /etc/hosts

mac/ios 系統(tǒng): /etc/hosts

手動(dòng)獲取IP地址:

dns.png
  • 添加到對(duì)應(yīng)的hosts文件即可:
addhost.png
  • 如果出現(xiàn)權(quán)限問題無法保存,可以將hosts文件復(fù)制到個(gè)人文檔,修改后覆蓋回去即可

那么問題來了,如果每次都這么修改就有點(diǎn)麻煩了,有沒有工具自動(dòng)完成呢,同志們?cè)缫呀o了辦法

自動(dòng)修改hosts

按照上面方法修改后可以訪問Github了,就可以體驗(yàn)下Github的強(qiáng)大之處了

感謝GitHub加速器,讓你“愛”上 GitHub項(xiàng)目作者,實(shí)時(shí)獲取有效IP并發(fā)布到https://raw.hellogithub.com/hosts

項(xiàng)目中還提到可以使用Switch hosts quickly!自動(dòng)切換hosts,添加如下規(guī)則開啟即可

switch hosts.png

緩存刷新

如果使用方法一之后未能正常訪問GitHub,還可以刷新一下系統(tǒng)DNS緩存和瀏覽器DNS緩存

刷新系統(tǒng)DNS緩存

$ ipconfig /flushdns

清除瀏覽器DNS緩存

chrome內(nèi)核瀏覽器為例,打開chrome://net-internals/#dns頁面,點(diǎn)擊Clear host cache即可

穩(wěn)定方案

根據(jù)上述方案可以訪問github后,可查看頂部原文鏈接

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容