Ubuntu 20.04 LTS下curl持续出现Connection timed out错误求助
Ubuntu 20.04 LTS下curl持续出现Connection timed out错误求助
看起来你遇到的是通用的curl网络连接问题,不是这个特定安装脚本的问题,我之前排查过类似的情况,给你几个可行的排查方向:
先确认网络连通性
先试试直接ping域名,看是否能正常解析到IP:ping raw.githubusercontent.com或者用telnet测试443端口是否能连通:
telnet raw.githubusercontent.com 443如果这两个命令都超时,说明要么域名解析失败,要么网络路由到GitHub节点存在问题。
检查并更换DNS服务器
Ubuntu 20.04默认用systemd-resolved管理DNS,有时候默认DNS解析raw.githubusercontent.com会出问题,可以换成公共DNS试试:- 先备份原DNS配置:
sudo cp /etc/resolv.conf /etc/resolv.conf.bak - 编辑resolv.conf文件:
sudo nano /etc/resolv.conf - 把里面的
nameserver行改成公共DNS,比如Google的8.8.8.8:nameserver 8.8.8.8 nameserver 8.8.4.4 - 保存退出后,再执行你的curl命令试试。如果是systemd-resolved管理的DNS,可能需要修改
/etc/systemd/resolved.conf,把DNS=字段改成DNS=8.8.8.8 8.8.4.4,然后重启服务:sudo systemctl restart systemd-resolved
- 先备份原DNS配置:
排查防火墙和代理设置
- 如果开启了UFW防火墙,可以临时关闭测试:
测试完记得重新开启:sudo ufw disablesudo ufw enable - 如果是在公司、校园网这类有代理的环境下,需要给curl设置代理:
设置完再执行你的curl命令。export http_proxy=http://你的代理地址:端口 export https_proxy=http://你的代理地址:端口
- 如果开启了UFW防火墙,可以临时关闭测试:
手动绑定raw.githubusercontent.com的IP
有时候网络环境会出现GitHub raw域名解析异常的情况,可以手动查询可用IP并绑定到hosts文件:- 用nslookup查询IP:
nslookup raw.githubusercontent.com - 编辑hosts文件:
sudo nano /etc/hosts - 添加一行(替换成你查到的可用IP):
185.199.108.133 raw.githubusercontent.com - 保存退出后再测试curl。
- 用nslookup查询IP:
可以先从第一个方向开始排查,有结果了随时反馈哦!
备注:内容来源于stack exchange,提问作者TECH HINDER




