无线连接时如何知道路由器是否可以上网

无线连接时如何知道路由器是否可以上网

在 Windows 中,当您通过无线连接时,它会告诉您是否可以访问互联网。在 ubuntu 中,我已经连接到路由器,但我不知道路由器是否连接到互联网?!

在 ubuntu 上如何知道路由器是否已连接到互联网

答案1

您可能正在查看 Windows 上的“网络和共享中心”,它会显示您是否有互联网,如屏幕下方所示。但这并不总是一种可靠的方法。例如,在我的大学网络上,有些计算机显示没有互联网,但我可以正常上网。 在此处输入图片描述

heemayl 已经提到了ping命令,它是任何系统(Windows 或 Linux)上的基本网络测试工具,并且用于命令行;该应用程序cmd在 Windows 和terminalubuntu 或任何其他 Linux 发行版以及 Mac 上可用。如果您可以ping -c4 google.com并得到响应,则说明您已连接到互联网。

还有另一种方法,图形化,使用gnome-nettool,这是一个将网络实用程序全部整合到图形界面中的应用程序。想法是一样的,ping 实用程序用于测试您是否有来自互联网的响应;还有 traceroute,它将显示您是否可以通过路由器 ip 地址访问互联网。

另一种方法是通过 Unity Lenses 和 Scopes。还记得当你搜索某些文件时输入 dash 时,你会得到来自亚马逊的建议吗?好吧,这意味着这些建议来自互联网,对吧?就我个人而言,我已禁用这些功能,因此无法对此进行详细说明。

但实际上,命令行工具更可靠,更好,许多 Linux 用户强烈建议你使用这些工具

答案2

在终端中运行此命令:

[[ $(ping -c4 google.com) ]] 2>~/ping_check.txt && echo "I have Internet" || echo "I don't have Internet"

例如:

$ [[ $(ping -c4 google.com) ]] 2>~/ping_check.txt && echo "I have Internet" || echo "I don't have Internet"
I have Internet

这使用基本的ping实用程序将 ICMP ECHO_REQUEST 数据包发送到远程主机并从远程主机获取 ECHO_REPLY(google.com在本例中)。如果主机处于启动状态(并且两端的防火墙都允许 ICMP),您将从远程主机收到响应,否则不会。

这行代码还有一个额外的好处,错误信息(STDERR)将被保存在你的主目录中的一个文件中~/ping_check.txt。如果你没有网络,那么你可以检查文件内容并了解原因。

编辑:命令解释:

该命令分为三部分:

  • [[ $(ping -c4 google.com) ]] 2>~/ping_check.txt将 ping“google.com”4 次,2>~/ping_check.txt并将命令中的任何错误消息保存在文件中,~/ping_check.txt以便您稍后检查是否存在潜在问题。由于我们只关心命令的成功或失败,因此ping -c4 google.com我们将其放在 bash 关键字中[[]],这样$? = 0如果命令成功,它将返回 true,$? != 0如果命令失败,它将返回 false。

  • 然后我们有相当简单的命令,只有前一个命令返回成功时它echo "I have Internet"才会打印,这是由确保的。表示只有前一个命令()成功时才会运行下一个命令。I have Internet&&&&ping

  • 下一部分echo "I don't have Internet"后面有||.||表示仅当前一个命令成功时才会运行下一个命令($? != 0)。 因此,仅当命令返回失败I don't have Internet时才会打印。ping

相关内容