GitHub 无法访问怎么办:2026 年 6 种解决方法
GitHub 在国内的访问状态是「时好时坏」:主站有时能打开但很慢,raw.githubusercontent.com、objects.githubusercontent.com 这些静态域名经常被 DNS 污染或连接重置,表现就是网页图片不显示、Releases 下载 0KB、git clone 卡在 0%。下面六种方法按成本从低到高排,前三种免费但治标,后三种稳定。
先判断是哪种问题
nslookup github.com
nslookup raw.githubusercontent.com
curl -I https://github.com
nslookup返回的 IP 明显不对(如 127.0.0.1、0.0.0.0 或和国外查询结果不同):DNS 污染。- IP 正确但
curl超时或Connection reset:连接被阻断。 - 主站能开、
raw域名不能:静态域名被单独处理。
方法一:换 DNS
把系统 DNS 改为支持加密的公共 DNS:
- DoH:
https://1.1.1.1/dns-query、https://dns.google/dns-query、https://dns.alidns.com/dns-query - 普通:
1.1.1.1、8.8.8.8
Windows 11、macOS、Android 9+ 都支持在系统设置里填 DoH。只能解决 DNS 污染,解决不了连接重置。DNS 相关的更多排查见 机场连不上怎么办。
方法二:修改 hosts
把正确的 IP 手动写进 hosts 文件,绕过 DNS:
- Windows:
C:\Windows\System32\drivers\etc\hosts - macOS / Linux:
/etc/hosts
IP 从 GitHub 官方的 meta 接口(api.github.com/meta)或社区维护的 hosts 项目获取,需要定期更新。同样只解决 DNS 问题。
方法三:镜像与加速站
- 克隆:把
github.com换成镜像域名(社区镜像站很多,但随时可能失效,注意只用于公开仓库)。 - Releases 下载:用
ghproxy类的下载代理前缀。 - 包管理:npm、pip、Go modules 配国内镜像源,大部分依赖根本不需要访问 GitHub。
适合偶尔下载,不适合推送代码和登录。
方法四:给 Git 配代理
有机场订阅的话,这是开发者最省心的方案(还没有订阅先看 什么是机场)。Clash Verge 默认混合端口 7897(旧版 7890),配置:
git config --global http.proxy http://127.0.0.1:7897
git config --global https.proxy http://127.0.0.1:7897
只对 GitHub 走代理、其余直连:
git config --global http.https://github.com.proxy http://127.0.0.1:7897
取消:
git config --global --unset http.proxy
git config --global --unset https.proxy
SSH 方式克隆需要在 ~/.ssh/config 里给 github.com 配 ProxyCommand,用 nc -X connect -x 127.0.0.1:7897 %h %p(macOS / Linux)或 connect.exe(Windows Git 自带)。
方法五:浏览器只给 GitHub 走代理
用 Clash 的规则模式,GitHub 相关域名默认在代理规则里(DOMAIN-SUFFIX,github.com、githubusercontent.com、githubassets.com),开系统代理即可,其他国内网站不受影响。规则写法见 Clash 规则配置进阶。
方法六:TUN 模式接管所有流量
命令行工具、IDE 插件、Docker 拉取镜像这些不走系统代理的程序,用 Clash 的 TUN 模式一次解决;macOS 用户见 macOS 科学上网教程,Linux 用户见 Linux 科学上网教程。见 Clash Verge 教程。
方法对比
| 方法 | 成本 | 解决 DNS 污染 | 解决连接重置 | 适合 |
|---|---|---|---|---|
| 换 DNS | 免费 | 是 | 否 | 偶尔打不开 |
| hosts | 免费 | 是 | 否 | 同上,需维护 |
| 镜像站 | 免费 | 是 | 是(绕过) | 只下载 |
| Git 代理 | 需机场 | 是 | 是 | 开发者 |
| 浏览器规则代理 | 需机场 | 是 | 是 | 日常浏览 |
| TUN | 需机场 | 是 | 是 | 全部程序 |
机场月付十几元,稳定解决 GitHub、Docker Hub、npm 官方源、Hugging Face 等一揽子问题,是开发者最划算的方案。挑选看 机场推荐排行榜,预算低看 便宜机场推荐。
常见问题
开了代理 git clone 还是慢?
检查代理端口是否正确、Clash 是否在规则模式下把 github 走了代理(连接页能看到);SSH 克隆需要单独配 ProxyCommand。
Releases 下载到一半断了?
objects.githubusercontent.com 被重置。用方法四或六让下载走代理,或用下载代理前缀。
VS Code 的 GitHub Copilot、扩展市场打不开?
VS Code 走系统代理,开 Clash 系统代理即可;仍不行就在 VS Code 设置里填 http.proxy。
Docker pull 超时和 GitHub 有关吗?
Docker Hub 与 GitHub Container Registry 同样受影响,配 Docker 的 proxy 或用 TUN。
公司网络禁止代理怎么办?
用镜像站和包管理镜像源,推送代码走 SSH 443 端口(ssh.github.com)有时可通。
更多连接问题的排查见 机场连不上怎么办。