解决ROS2安装过程中无法连接raw.githubusercontent.com的问题
在安装ROS2时,许多开发者可能会遇到一个常见问题:执行sudo curl
命令下载密钥时,出现**"Failed to connect to raw.githubusercontent.com port 443"**的报错。这一问题通常由DNS解析失败或网络限制导致。本文将详细介绍如何通过修改系统hosts文件解决这一问题。
问题描述
在终端中运行以下命令时:
bash
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc -o /usr/share/keyrings/ros-archive-keyring.gpg
系统会报错:
Failed to connect to raw.githubusercontent.com port 443 after 17 ms: Couldn't connect to server
这意味着系统无法正确解析raw.githubusercontent.com
的IP地址,或网络连接被阻止。
解决步骤
1. 查询域名对应的IP地址
访问 IP Address查询网站,在搜索栏中输入raw.githubusercontent.com
,点击搜索。结果如下
网站会返回当前域名对应的IP地址(例如:185.199.108.133
)。
注意:IP地址可能因地区或时间变化,请以实际查询结果为准。
2. 修改系统hosts文件
打开终端,使用以下命令编辑hosts文件:
bash
sudo nano /etc/hosts
在文件末尾添加一行,格式为:
[查询到的IP地址] raw.githubusercontent.com

3. 保存并退出
- 保存文件 :按下
Ctrl + O
,回车确认文件名。 - 退出编辑器 :按下
Ctrl + X
。
4. 验证连接
重新执行最初的curl命令,若配置正确,密钥将成功下载,安装流程可继续。
注意事项
操作风险 :修改系统文件需谨慎,建议提前备份/etc/hosts
。