Skip to content

DNS配置导致的GitHub无法提交

⚠️ 问题已经明确了!

你看到这句了吗:

;; ANSWER SECTION:
github.com.             90      IN      A       127.0.0.1

这说明是你的 本地 DNS 服务(192.168.1.1)返回了错误的解析结果 —— 把 github.com 解析成了 127.0.0.1,这是根本原因。


✅ 问题根源:你的路由器 DNS 被污染或劫持了!

dig 显示:

;; SERVER: 192.168.1.1#53(192.168.1.1)

这说明你当前系统是从路由器拿 DNS 配置的,而 路由器返回了错误 IP(正常应该是 140.x.x.x20.x.x.x,不是 127.0.0.1)。


✅ 解决方案(最直接方式):

临时解决法:手动指定 DNS,跳过你家路由器

  1. 打开系统偏好设置 → 网络
  2. 找到你当前连接的 Wi-Fi → 点击右下角的 详情(或 高级
  3. 切到 “DNS” 标签页
  4. 删除里面的 192.168.1.1
  5. 添加以下两个公开 DNS:
8.8.8.8
1.1.1.1
  1. 保存 → 应用设置
  2. 然后再执行:
bash
dig github.com
ping github.com

你应该就能看到:

bash
github.com.    IN    A    20.xxx.xxx.xxx

永久方案(推荐):

你需要 登录你家路由器后台(192.168.1.1),检查是否:

  • 配置了恶意 DNS(有些蹭网工具、电视盒子会改掉);
  • 安装了恶意插件;
  • 被病毒注入脚本或劫持(尤其是 TP-Link、某些国产品牌);

建议:

  • 重启路由器 + 恢复出厂设置;
  • 再次配置合理的上网设置(如 DNS 用 8.8.8.8 + 1.1.1.1);
  • 设置管理员密码为复杂密码,防止再次劫持。

你现在先试试改 mac 的 DNS,应该马上能解决掉这个问题,然后再看是否要处理路由器的问题。我这边随时帮你跟进 💪