git 无法拉取项目,本地访问不了github,连接超时

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LJFPHP/article/details/82705764

一、遇到的问题

      本地在从github上拉取项目的时候,一直卡着,然后过个2分钟就报错,连接超时。问题是我前几天还能git pull项目呢,百思不得其解。后来本地浏览器访问github,得,连全世界最大的基佬交友网站都访问不了。本地ping一下IP吧,果然ping不通。

二、解决过程

说解决过程,当然是万能的百度和google。

1、修改hosts

      如果大家也碰到和我一样的情况,那么百度最多的解决方案就是修改hosts。博主这边把主流的修改hosts文件的方法都试了一下,对我是没什么用。不过大家可以试试,也许就有用呢。

参考链接: https://yq.aliyun.com/articles/5031

2、ping github.com

这部分就是ping一下github的Ip地址,看看报错信息是什么。关于IP地址,随便在网上搜索“IP地址”,然后输入github.com即可获取到github的IP地址。

我这边报错信息是:无法访问目标主机

3、翻墙试一试

      这种情况,博主也以为只是单纯的被墙了,所以翻墙试了试,翻墙之后能正常访问github ,但是本地还是ping不同ip地址。git pull 依旧死气沉沉。这说明不是单纯的网络问题,而很有可能是我自己电脑的问题。博主的电脑是win10系统的。

4、既然无法访问主机,那就从增加主机路由开始

根据pingIP的报错信息,我们百度一下增加主机理由相关的:

参考链接: https://www.cnblogs.com/zhumengmeng/p/3938019.html

      这部分先通过 ipconfig 获取到本地默认网关,然后执行 route add 本地默认网关 ping的ip地址 -p修改之后,能正常ping通github的ip,并且浏览器可以正常访问github的网址,git bash可以正常拉取项目。

三、关于CMD命令 route

虽然我们解决了自己的问题,但是windows系统下的这个route概念我还是第一次接触,必须要学习一下下。这里网上关于route的资料已经很多了,博主这边给出几个不错的链接,方便大家学习。

参考链接:
https://blog.csdn.net/bcbobo21cn/article/details/52548923
https://blog.csdn.net/bcbobo21cn/article/details/52548923

四、我的理解

       本地通过 route add ... -p 相当于在路由表中添加了一个永久路由。此时我们继续ping github的ip地址,此时不存在
找不到目标主机的问题。而route 命令的本意便是可以同时访问两个ip。我这边因为电脑用的ip是公司的内网,而要访问github的话,就需要把 github的 ip加入到静态路由中,这样就可以正常被dns解析访问。(可能理解有偏差,欢迎指正)

      此次解决错误的过程中,感觉自己的方法用的不对。当我发现ping IP的报错信息之后,应该第一时间锁定报错信息的。而不是去试验其他的方法,白白浪费了几十分钟,罪过罪过。

end

猜你喜欢

转载自blog.csdn.net/LJFPHP/article/details/82705764