在 Windows 上无法在 Bash 中 ping

在 Windows 上无法在 Bash 中 ping

当我尝试运行时:

ping www.google.com

我收到以下错误:

ping: icmp open socket: Permission denied

运行并sudo没有什么区别。

答案1

更新:此问题已修复,因为Windows 10 创意者更新(2017 年 4 月)。Windows 上的 Bash 不再需要管理员权限来执行 ping 命令。

“Windows TCP/IP 堆栈需要管理员权限才能打开 RAW 套接字以采取安全措施”[来源]。 看MSDN 帖子。这仅适用于 使用的 ICMP 等低级网络协议ping

以管理员身份运行“Windows 上的 Bash”shell 应该允许 ping 命令工作。只需右键单击其快捷方式并选择选项:

选择“以管理员身份运行”作为 Bash 开始菜单快捷方式

这只对使用这些权限打开的单个会话有效。

如果其他命令也无法连接到互联网(例如) apt-getwget那么你可能还需要查看Windows 子系统(Linux)中 Internet 访问不起作用

答案2

它之前不起作用,因为正如@Silveri 的回答所指出的那样,它需要 ICMP 协议,在早期版本中没有实现

从版本 14352 开始,它变成了为具有管理员权限的控制台启用

从版本 14926 开始,它变成了为没有管理员权限的控制台启用

相关内容