1. 前言

虽然用代理的方式也能实现较快速度访问Github,但是有时候还是会存在不稳定、梯子过期等情况,所以不下载文件的情况下直连能访问的话还是可留作备用手段,此贴仅作记录,以防不时之需。

操作环境:Windows 11

2. 原理

hosts文件是一个纯文本文件,主要用于存放IP地址和域名。 它的作用是建立网址域名与IP地址的关联,以便在浏览器中输入需要登录的网址时,系统能够快速找到对应的IP地址并打开对应网页。 如果系统没有在hosts文件中找到对应的IP地址,则会将网址提交给DNS域名解析服务器进行IP地址的解析。

故更改host文件实际上是使用CDN的IP地址加速访问。优缺点也很明显,优点是能够实现加速访问,缺点是host文件是静态文件,当CDN失效时需手动更新。

3. 步骤

3.1 获取hosts

  • 用ping的在线测试网站ping github.com,找time(ping的延时)低的IP地址
  • 参考现成项目Github520

3.2 修改host文件

hosts 文件在每个系统的位置不一,详情如下:

1
2
3
4
5
Windows: C:\Windows\System32\drivers\etc\hosts
Linux: /etc/hosts
Mac: /etc/hosts
Android: /system/etc/hosts
IOS: /etc/hosts

将获取到的hosts信息粘贴至系统的hosts文件末尾即可,如果已经存在相关条目信息,可仅对IP地址进行替换

3.3 激活生效

大部分情况下是直接生效,如未生效可尝试下面的办法,刷新 DNS:

1
2
3
Windows: ipconfig /flushdns
Linux: sudo rcnscd restart
Mac: sudo killall -HUP mDNSResponder

Tips: 上述方法无效时可重启再试

4. 结语

修改hosts治标不治本,有时还是存在访问速度慢、无法访问等问题,终极解决手段仍是科学上网。

附,写下此篇博客时还能用的hosts,来源于Github520

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
140.82.114.25                 alive.github.com
140.82.114.6 api.github.com
185.199.109.153 assets-cdn.github.com
185.199.111.133 avatars.githubusercontent.com
185.199.111.133 avatars0.githubusercontent.com
185.199.111.133 avatars1.githubusercontent.com
185.199.111.133 avatars2.githubusercontent.com
185.199.111.133 avatars3.githubusercontent.com
185.199.111.133 avatars4.githubusercontent.com
185.199.111.133 avatars5.githubusercontent.com
185.199.111.133 camo.githubusercontent.com
140.82.113.22 central.github.com
185.199.111.133 cloud.githubusercontent.com
140.82.112.10 codeload.github.com
140.82.114.22 collector.github.com
185.199.111.133 desktop.githubusercontent.com
185.199.111.133 favicons.githubusercontent.com
140.82.112.4 gist.github.com
54.231.233.97 github-cloud.s3.amazonaws.com
16.182.73.65 github-com.s3.amazonaws.com
54.231.160.209 github-production-release-asset-2e65be.s3.amazonaws.com
52.217.33.212 github-production-repository-file-5c1aeb.s3.amazonaws.com
52.216.50.225 github-production-user-asset-6210df.s3.amazonaws.com
192.0.66.2 github.blog
140.82.114.3 github.com
140.82.114.17 github.community
185.199.110.154 github.githubassets.com
151.101.1.194 github.global.ssl.fastly.net
185.199.109.153 github.io
185.199.111.133 github.map.fastly.net
185.199.109.153 githubstatus.com
140.82.114.25 live.github.com
185.199.111.133 media.githubusercontent.com
185.199.111.133 objects.githubusercontent.com
13.107.42.16 pipelines.actions.githubusercontent.com
185.199.111.133 raw.githubusercontent.com
185.199.111.133 user-images.githubusercontent.com
13.107.253.40 vscode.dev
140.82.113.21 education.github.com