增加github访问速度

为什么慢?github的CDN被某墙屏了。

解决方法

绕过dns解析,在本地直接绑定host,该方法也可加速其他因为CDN被屏蔽导致访问慢的网站。

实现

在本地host文件中添加映射,步骤如下:

用文本编辑器打开hosts文件,位于C:\Windows\System32\drivers\etc目录下

打开 http://tool.chinaz.com/dns ,这是一个查询域名映射关系的工具

查询 github.global.ssl.fastly.net 和 assets-cdn.github.com 两个地址

多查几次,选择一个稳定,延迟较低的 ip 按如下方式添加到host文件

保存文件,重新打开浏览器,起飞。

# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost

# github

151.101.109.194 github.global.ssl.fastly.net
185.199.108.153 assets-cdn.github.com

192.30.253.112 github.com (140.82.114.4151.101.185.194 github.global.ssl.fastly.net
219.76.4.4 github-cloud.s3.amazonaws.com

(转自:https://blog.csdn.net/qq_38977097/article/details/8077098

国内访问Github会异常缓慢,在clone仓库时甚至只有10k以下的速度,下载半天有时还会失败需要从头再来,甚是让人恼火。
本文介绍通过修改系统hosts文件的办法,绕过国内dns解析,直接访问GitHub的CDN节点,从而达到加速的目的。

1 获取GitHub官方CDN地址

打开https://www.ipaddress.com/

查询以下三个链接的DNS解析地址
1. github.com
2. assets-cdn.github.com
3. github.global.ssl.fastly.net

记录下查询到的IP地址。

2 修改系统Hosts文件

打开系统hosts文件(需管理员权限)。
路径:C:\Windows\System32\drivers\etc

在末尾添加三行记录并保存。(需管理员权限,注意IP地址与域名间需留有空格)

192.30.253.112 github.com

151.101.72.133 assets-cdn.github.com

151.101.193.194 github.global.ssl.fastly.net

3 刷新系统DNS缓存

Windows+X 打开系统命令行(管理员身份)或powershell

运行  ipconfig /flushdns  手动刷新系统DNS缓存。

(注:原文链接 https://blog.csdn.net/w958660278/article/details/81161224

上面三行ip的TTL都在49到53之间,那么什么是TTL?

“TTL”是生存时间(Time To Live)的意思

可以通过cmd:

ping 151.101.193.194
ping assets-cdn.github.com

 的方式进行查询TTL,字节代表数据包的大小,时间顾名思义就是返回时间,“TTL”的意思就是数据包的生存时间,当然你得到的这个就是剩余的生存时间。TTL用来计算数据包在路由器的消耗时间,因为现在绝大多数路由器的消耗时间都小于1s,而时间小于1s就当1s计算,所以数据包每经过一个路由器节点TTL都减一。那么TTL的值一开始是什么呢?不同的操作系统默认下TTL是不同的。默认情况下,Linux系统的TTL值为64或255,Windows NT/2000/XP系统的TTL值为128,Windows 98系统的TTL值为32,UNIX主机的TTL值为255。

Ping百度服务器返回的数据包的TTL值为56(一般都是找2^n且离返回值最近的那个值),那么途中则经过了64-56=9个路由器。

“TTL”的值越小越好显然是不对的,相反,应该说是“TTL”的值越大且越接近最佳TTL如64才对,因为“TTL”的值越大,说明发送数据包经过路由器越少,而经过路由器越少,说明越快到达目的地,速度当然也就越快.

PING命令中的TTL大了和小了都不好,合适是最好的。

路由器是什么?从 Tracert 命令了解

tracert [目标]

意思是得到你的主机到目标主机经过路由器的ip。

达到目标我们经过了9个路由器(不算终点),跟上面Ping百度服务器返回的“TTL”值(56)是相关的,64-56=9。

注意一下有的值为“请求超时” ,原因是有的路由器是禁止Ping的(所以不会返回信息)。

(注:原文链接 http://www.webkaka.com/tutorial/zhanzhang/2017/061570/

 

# GitHub520 Host Start
185.199.108.154                                   github.githubassets.com
199.232.68.133                                    camo.githubusercontent.com
199.232.68.133                                    github.map.fastly.net
199.232.69.194                                    github.global.ssl.fastly.net
140.82.113.3                                      github.com
140.82.112.5                                      api.github.com
199.232.68.133                                    raw.githubusercontent.com
199.232.68.133                                    user-images.githubusercontent.com
199.232.68.133                                    favicons.githubusercontent.com
199.232.68.133                                    avatars5.githubusercontent.com
199.232.68.133                                    avatars4.githubusercontent.com
199.232.68.133                                    avatars3.githubusercontent.com
199.232.68.133                                    avatars2.githubusercontent.com
199.232.68.133                                    avatars1.githubusercontent.com
199.232.68.133                                    avatars0.githubusercontent.com
# GitHub520 Host End

 

posted @ 2019-11-18 09:57  凌137  阅读(576)  评论(0编辑  收藏  举报