点击上方“Github爱好者社区”,选择星标
回复“资料”,获取小编整理的一份资料

作者:氷泠
来源:SegmentFault 思否社区
1 前言
众所周知Github在国内的访问速度一直都不怎么样,主要的原因是DNS解析太慢了,也就是从github.com获取IP的过程太慢了,因此,一种最有效的办法是直接修改本地Hosts,饶过DNS解析。
这也是本文的出发点,虽然,这样的文章网上有很多,百度一搜出来基本上都是如下的套路:
通过
IP解析网站得到github.com的IP/直接给出某个IP修改本地
Hosts刷新缓存
当然,这样最大的一个坏处是当IP更新的时候每次都需要去修改Hosts,非常麻烦。受到该仓库的启发,本文提供了一种自动修改的方法,非常方便。
本文主要分成两个部分介绍:
手动修改
Hosts通过工具自动修改
Hosts
首先看一下第一部分。
2 手动修改Hosts
2.1 修改Hosts
首先打开该仓库:

复制其中的内容到Hosts文件中,各大平台Hosts文件位置如下:
Windows:C:\Windows\System32\drivers\etc\hostsLinux:/etc/hostsMac:/etc/hostsAndroid:/system/etc/hostsiOS:/etc/hosts
根据对应平台修改上述的文件,添加内容到Hosts末尾即可。
2.2 使Hosts生效
大部分情况下修改完Hosts文件后直接生效,如果不生效,可以尝试手动刷新DNS缓存,具体如下:
Windows:打开cmd,输入ipconfig /flushdnsLinux:sudo rcnscd restartMac:sudo killall -HUP mDNSResponder
如果不生效可以尝试重启机器。
3 自动方式(推荐)
上面的方式需要手动修改Hosts文件,非常麻烦,这里推荐一种自动修改的方式。
在此之前需要一个工具:SwitchHosts。
3.1 SwitchHosts安装
官方仓库在此处,直接到Release下载即可。

或者从软件包仓库安装,以笔者的Manjaro为例:
paru -S switchhosts-bin
3.2 配置
打开后,点击左下角的加号按钮,添加一个新的规则:

内容如下:
标题:随便
类型:
RemoteURL:https://cdn.jsdelivr.net/gh/521xueweihan/GitHub520@main/hosts自动刷新时间:第一次添加可以先选择
1 minute,有了规则以后,就可以选择1 hour
配置好后就可以看到了:

3.3 一个小问题
笔者在实测的时候发现如果直接通过启动菜单启动SwitchHosts,添加新的规则老是失败:

无论输入的是用户的密码还是root的密码都不行。
于是笔者找了一下启动命令,直接sudo启动:
sudo switchhosts

启动失败,按照提示加上--no-sandbox(这是一个eletron的参数):
sudo switchhosts --no-sandbox
需要注意在启动之前需要把原来普通模式启动的SwitchHosts先退出了,不然会提示端口占用:

启动之后就可以直接修改Hosts而不需要密码了。
另外这里有一个小细节就是两种模式下(普通模式/sudo模式)启动的图标不一样:


4 效果
配置好DNS后应该能正常访问Github上的图片了:

5 后记
通过上面的配置DNS方法应该就可以顺利访问Github了,此外,该仓库还介绍了另一种自动配置DNS的方式:AdGuard Home:

由于笔者没有用过就不说这个了。最后,该仓库还有一个TODO:

希望最后一项内容尽快完成吧。
好啦,今天的分享就到这儿啦,我们下次见啦~
GitHub原创推荐• 牛逼!GitHub最有含金量项目开源,SEO优化套路大解密!• 太牛了!GitHub 标星 8.6K:将任何设备转换为电脑的辅助屏幕• 牛逼,GitHub 上竟然有这么多可以赚钱的小程序•再厚的马赛克都能被扒干净?这款去码神器火了。。。• 太骚了!还能这样获取wifi密码?Github这个开源项目火的一塌糊涂!关注「Github爱好者社区」加星标,每天带你逛Github好玩的项目
自动优化GitHub访问:快速修改Hosts的工具与方法
本文介绍了如何通过手动修改Hosts文件来加速GitHub访问,以及推荐了一个名为SwitchHosts的工具,实现自动更新GitHub的Hosts记录,避免频繁手动修改的不便。详细步骤包括在不同操作系统中找到Hosts文件并添加内容,以及如何刷新DNS缓存使其生效。此外,文章还提及了一个自动配置DNS的替代方案AdGuardHome,但未进行详细介绍。
679

被折叠的 条评论
为什么被折叠?



