GitHub 是一个面向开源及私有软件项目的托管平台,不管是行业大佬还是编程小白都可以在 GitHub 上交流学习,但是国内的 GitHub 访问被污染,导致无法正常访问。
本文通过 6 种方法解决 GitHub 访问被污染的问题。如果全部方法试用后仍然无法访问(概率极低),欢迎在下方评论,手把手帮你处理!
GitHub 的 DNS 污染问题通常表现为域名解析被劫持到错误的 IP 地址,导致无法正常访问。
浏览器报错如下:
嗯… 无法访问此页面
github.com 响应时间太长
下面提供几个可行的方案共大家参考
1. 手动修改 Hosts 文件通过直接绑定 GitHub 域名的正确 IP 地址,绕过 DNS 解析污染。步骤:
获取最新的 GitHub 域名 IP:
访问 IPAddress.com 查询以下域名的当前 IP: github.comassets-cdn.github.comgithub.global.ssl.fastly.netapi.github.comraw.githubusercontent.com或使用命令查询(需安装 nslookup 或 dig):nslookup github.com 8.8.8.8 # 使用 Google DNS 查询修改 Hosts 文件:
Windows: 文件路径:C:\Windows\System32\drivers\etc\hosts右键用管理员权限编辑,添加以下内容:# GitHub
140.82.113.3 github.com
185.199.108.153 assets-cdn.github.com
199.232.69.194 github.global.ssl.fastly.netmacOS/Linux: 文件路径:/etc/hosts终端输入 sudo nano /etc/hosts,添加上述内容。刷新 DNS 缓存:
Windows:ipconfig /flushdnsmacOS/Linux:sudo dscacheutil -flushcache 或 sudo systemd-resolve --flush-caches2. 使用加密 DNS 服务通过加密 DNS(如 DNS-over-HTTPS 或 DNS-over-TLS)避免解析被劫持。推荐方案:
Cloudflare DNS(1.1.1.1)或 Google DNS(8.8.8.8): 手动设置设备的 DNS 地址。DNSCrypt 或 DoH/DoT 工具: 使用 AdGuard DNS、NextDNS 等支持加密的 DNS 服务。3. 使用代理或 VPN(终极大杀器)通过代理或 VPN 完全绕过本地 DNS 污染。推荐工具:
Clash(支持规则分流,开源免费)Shadowsocks/V2Ray(需自建或购买节点)商业 VPN(如 ExpressVPN、NordVPN)相关内容:
📱 clash for Android🖥 clash for Windows🍎 clash for iOS4. 使用 GitHub 镜像站点访问 GitHub 的镜像服务,避开主域名污染。常用镜像:
GitHub 加速下载FastGit(已停用,可寻找替代)5. 验证 DNS 污染确认是否真的是 DNS 污染导致的问题:
使用 nslookup 或 dig 查询域名:nslookup github.com 8.8.8.8 # 使用干净的 DNS 查询
nslookup github.com # 使用本地默认 DNS 查询若结果不一致,说明存在 DNS 污染。6. 清除本地 DNS 缓存Windows:ipconfig /flushdnsmacOS:sudo killall -HUP mDNSResponderLinux:sudo systemctl restart nscd注意事项IP 地址可能变化,需定期更新 Hosts 文件。优先使用 HTTPS,避免中间人攻击。如果使用代理/VPN,确保节点未被 GitHub 封禁(如某些机场 IP 可能被限制)。通过以上方法,可有效绕过 DNS 污染问题。若问题持续,可能是网络环境限制(如防火墙),需结合代理或 VPN 彻底解决。