GitHub 更新代码出现 Failed to connect to github.com port 443 Timed out 的解决办法
# GitHub 更新代码出现 Failed to connect to github.com port 443: Timed out 的解决办法
你是不是在访问全球最大的【交友网站】(GitHub)也遇到过以下情况:
1.突然电脑无法访问 github 了,无论你重启电脑,重置网络,尝试了各种方式都无法正常访问。
2.经过研究,发现使用[某种特殊方式]后却可以神奇的访问到 GitHub。
3.当你使用[某种特殊方式]后,开心的在命令行上敲上你熟悉的 git pull、push 等命令进行访问 github 的远程仓库的时候,命令行却显示【Failed to connect to github.com port 443: Operation timed out】
身为一个开发人员,这些错误自然是难不到你的!然后你疯狂的搜索,然后得到的是为 git 设置代理,或取消 github 的全局代理
git config --global https.proxy http://127.0.0.1:1080
git config --global http.proxy http://127.0.0.1:1080
# 取消github的全局代理
git config --global --unset http.proxy
git config --global --unset https.proxy
2
3
4
5
6
7
8
当你以为能快速的解决此问题时,得到的却是命令行再一次出现【connect to 127.0.0.01 port 1080: Connection refused】
如果你也遇到了这些情况,按照以下操作执行,你可以解决近 90%的问题。
# 解决方式
# 1. 打开如下网址,复制其中的 IP 地址
将页面中的 IP Address 复制出来,如上图红色区域处的地址。
# 2. 打开另外一个网址,复制其中的 IP 地址
将页面中的 IP Address 复制出来,如上图红色区域处的地址。
# 3. 打开第三个网址,将其中的几个 IP 地址复制下来
将页面中的这几个 IP 地址复制出来,如上图红色区域处的这几个地址。
# 4. 修改本机的 host 文件,保存即可
# 方式一(推荐使用)
推荐使用
SwitchHosts
,它是一个管理、切换多个 hosts 方案的工具。使用 SwitchHosts 修改 host 操作流程
1.安装 SwitchHosts 后,右键选择以管理员身份运行
2.点击页面中左下角的
+
图标3.在弹出来的新页面中按照下图操作添加一个新的本地连接
4.在上一步的建立的新的连接中,按照下图操作添加前几步复制的 IP 地址
5.查看本地的 host 文件中是否存在刚才添加的 host,如果存在,则添加成功,如果不存在,请检查上面几步操作是否正确
# 方式二(修改本机的 host 文件)
Windows 系统下的 host 地址为:
C:\WINDOWS\system32\drivers\etc
Mac 的 Hosts 文件可以通过以下路径进行查找到:
1.Finder->Go->Go to Folder 2.然后输入/etc/hosts
即可找到.然后将上面复制的几个 IP 地址添加到本机的 host 文件中,保存即可。
若 host 文件打不开,可以使用
Sublime Text
或NodePad++
或Vscode
等编辑器打开,最后保存即可,若无法保存则需要去修改 host 文件的权限(右键选择属性==》安全,为自己的账户添加修改权限)。host 文件修改代码如下
### (图1的 IP Address)
140.82.112.4 github.com
### (图2的 IP Address)
199.232.69.194 github.global.ssl.fastly.net
### (图3的 4个 IP Address)
185.199.108.153 assets-cdn.github.com
185.199.109.153 assets-cdn.github.com
185.199.110.153 assets-cdn.github.com
185.199.111.153 assets-cdn.github.com
2
3
4
5
6
7
8
9
10
11
修改后本机 host 如下图所示
# 5. 刷新本地的 DNS 缓存
- Windows 下刷新 DNS 缓存命令
ipconfig /flushdns
- Mac 系统刷新 DNS 缓存命令
sudo killall -HUP mDNSResponder;
建议:建议多刷新几次 DNS 缓存
# 6. 见证奇迹
重新执行 git 操作,就会见证奇迹!!!
注意,若按照上述步骤操作 github 还是无法连接,报错提示为【connect to 127.0.0.01 port 1080: Connection refused】,请查看本机 git 是否使用了 http/https 代理,若存在代理,则取消 git 的 http/https 代理,然后重新按照尝试一下,就会见证奇迹!
取消 github 代理的方式如下:
git config --global --unset http.proxy
git config --global --unset https.proxy
2
如果重新启动[某种特殊方式]或经过一段时间之后,github 再次无法连接了。可能是因为上述三个网址链接中的 IP 地址修改了,此时只需要重新查询这三个网址,重新按照上述步骤修改 host 文件即可。