您的位置:首页 > 编程语言

git遇到的诡异错误: Failed connect to github.com:443

2015-07-11 15:24 711 查看
为什么会说Failed connect to github.com:443是一个诡异的问题?乍一看,写明了无法连接到github.com,ping也不通,但是获取到了github的IP(192.30.252.131),而且ping其他网站如baidu.com是通的。更让人意想不到的是网关可以git,但是本机却不能git。然后就陷入了挣扎中。。。

iptables挣扎:

停掉本机iptables,查看网关iptables确保192.30.252.130能够路由到本机。挣扎过后发现不是iptables的问题。

git版本问题:

前面遇到过git版本问题导致git提交时报错,但是这次网关和本机的git都是1.7.1版本。挣扎过后发现也不是git版本问题。

于是转回到ping不通github.com的问题:

为什么ping的通其他网站,ping不通github。回归到本机的路由来寻找问题。github的IP地址是192.30.252.131,ping github返回的是本机报告Destination Host Unreachable,而这并不是网关的问题。traceroute跟踪一下192.30.252.131,果然压根就没跳出本机,直接丢失了。现在才意识到,本机路由出了问题,而偏偏github这个诡异的192网段IP跳进了这个坑。用route命令看一下本机路由,终于发现罪魁祸首:

Destination Gateway Genmask Flags Metric Ref Use Iface

192.0.0.0 * 255.0.0.0 U 0 0 0 br1

显而易见,这条静态路由除了没用以外还造成了无法访问192.30.252.131,直接删除之。route del -net 192.0.0.0 netmask 255.0.0.0

再来git试一下,果然可以了。。

其实问题还是很简单的,关键是一开始没注意到ping不通192.x.x.x并且由本机返回了Destination Host Unreachable,还在纠结git的自身问题。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: