AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 37954
Accepted
Oxwivi
Oxwivi
Asked: 2011-04-30 04:01:22 +0800 CST2011-04-30 04:01:22 +0800 CST 2011-04-30 04:01:22 +0800 CST

检测互联网连接

  • 772

在 Windows 上,如果由于某种原因没有 Internet 连接并且与网络的连接非常好,则通知区域的网络图标上会显示一个小图标。有没有办法在 Ubuntu 上做同样的事情?

即使这不是必需的,我只想知道有什么方法可以找到互联网连接是否丢失。

请不要 ping x网站,我遇到过一些 DNS 中断和 ping 失败的情况,这可能是由于 DNS 停机时间,而不是互联网连接。

更新

感谢所有这些有趣的答案。我这个问题的实际目的是知道是否有一种方法可以知道我在本地级别的连接状态(机器和 AP 之间的连接),这就是为什么我说no ping to x website please。Alain 提到的 LAN 私有地址很接近。如果我可以诊断出来,我可以排除 AP/网络问题,然后继续诊断与我的 ISP 的实际连接。

networking
  • 5 5 个回答
  • 32950 Views

5 个回答

  • Voted
  1. Best Answer
    koanhead
    2011-06-01T14:48:22+08:002011-06-01T14:48:22+08:00

    该命令ip link show显示可用接口的状态。至少需要将其中一个接口列为 UP,以便您拥有任何连接。

    该命令ip neigh show显示本地链接状态,如下所示:

    192.168.0.1 dev eth0 lladdr 00:15:e9:ec:cc:80 REACHABLE
    

    您至少需要一个 REACHABLE 才能访问网络。

    该命令ip addr show显示所有接口及其 IP 地址。

    一旦有了本地 IP 地址和邻居的 IP 地址,您就可以使用 ping 或其他工具来验证本地 IP 连接。

    • 4
  2. user1974
    2011-06-01T06:43:01+08:002011-06-01T06:43:01+08:00

    我认为您正在寻找的简短答案是 command dig,但让我告诉您我使用的所有命令,FWIW。我的经验是用我的电脑、无线路由器和电缆调制解调器调试一个简单的家庭网络设置。

    首先我从 开始dig website,它进行 DNS 查找。

    LAN 和 DHCP 如果 dig 超时,那么我可能没有正确连接到 LAN。对于有线连接,我只检查调制解调器上的闪烁灯。我不知道检查那个的命令。对于无线连接,我使用iwconfig并检查 ESSID 值,确保将其设置为我的网络。

    一旦您检查了硬件部分,检查 LAN 连接的另一件事是 DHCP。我检查ifconfig(类似于 Windows ipconfig)以查看我是否有 IP 地址。eth0 是您的有线连接,而 wlan0 是您的无线连接。查看第二行标记为“inet addr”的值。那是IP地址。拥有 192.168.xx 或 10.0.xx 形式的 IP 地址意味着我已连接到我的 LAN,并且我正在从路由器获取 IP 地址。

    DNS 和 Internet 如果 dig 返回响应,但它是空的,那么我可能已连接到我的无线路由器(即 LAN),但我的 Internet 连接(即调制解调器)有问题。我将登录路由器的 Web 界面并尝试在那里调试问题。或者,我将我的电脑直接插入调制解调器,并重新检查上面的命令(dig和ifconfig。注意,ip地址不应该像上面描述的那样)

    已连接但仍无法正常工作 最后,如果 dig 返回至少一个 ip 地址(大多数小型网站只有一个 ip,而像 google 这样的大网站有多个 ip),那么我认为我至少已连接并且 DNS 正在工作。问题一定存在于互联网某处。

    然后,我将mtr website用作更全面的 ping。mtr 与 windows tracert 命令相同;它与所有中间节点一起对网站进行 ping 操作,并在终端上以实时可视方式显示它,从而向我展示我在互联网上遇到问题的地方。

    希望这有用!

    • 2
  3. deleted
    2011-06-12T22:22:00+08:002011-06-12T22:22:00+08:00

    我使用了一个名为 wmnetmon 的小实用程序(在存储库中)。它的 CPU 友好且非常可定制。它使用的屏幕空间非常小,或者您可以使用 Swallower Meta-Applet 将其停靠在面板上。设置它可能看起来需要做很多工作,但并不难。我在最后包含了我的配置以帮助您入门。我的设置监控我的 LAN 和 Internet 连接。我使用的是 10.04,不确定它是否适用于 11.04。

    wmnetmon
    在面板或桌面上

    描述 - 一个停靠应用程序,它将为每个受监控的服务显示一个 LED。绿色 LED 表示服务已启动并正在运行,而红色 LED 闪烁则表示服务未正确响应。

    选项

    wmnetmon [-d] [-t] [-y] [-r] [-c] [-h]

    -h 显示选项摘要。

    -d 打开调试模式

    -c 使用指定的配置文件代替 $HOME/.wmnetmonrc

    -t :以秒为单位指定轮询时间。默认为 30 秒

    -y :指定在打开黄色 LED 之前等待回复的时间量。默认为 60 秒

    -r :与上面的红色(闪烁)LED 相同。默认值为 200 秒。

    编辑 .wmnetmonrc(在用户目录中)并启动 wmnetmon。对于响应的主机/服务,LED 将很快变为绿色,对于不响应的主机/服务,指示灯将关闭或开始闪烁红色。您可以指定它是闪烁还是关闭。在前一种情况下,如果您在 rc 文件中配置命令,将执行该命令。这非常适合播放声音。每当您指向某个特定的 LED 时,相应的描述就会出现在应用程序的顶部。如果您右键单击它,主机/服务将变为静音,并且当该特定系统失败时不会执行任何命令。您也可以在 rc 文件中配置它以在静音时停止监视它。如果这样做,LED 将关闭,否则将变为紫色或蓝色,通知您系统是否正常工作。

    我的启动选项设置为(根据需要编辑).........

    wmnetmon -t 10 -y 2 -r 2
    

    我的配置(根据需要编辑).........

    # WMNetMonrc for Version 0.1c/d
    #
    # Please change this file and copy it to your home directory and name it
    # .wmnetmonrc
    #
    #
    # D line
    # Format - D:[w|d][i|m]
    # Example - D:dm
    #  - This line specifies the default behaviour of wmnetmonrc
    #    The flags are:
    #
    #    w -> Warn when hosts/services stop responding. This is the default
    #         behaviour. The led will turn red and flash, and (if specified)
    #         an  external command will be executed.
    #
    #    d -> Don't warn. Led will be off if host/service stops responding.
    #
    #    i -> Ignore host/service (stop monitoring it) when muted. The led 
    #         will be blue.
    #
    #    m -> Mute host/service (don't execute external program) but keep on
    #         monitoring it. The led will be blue if the host/service 
    #         responds or purple if it does not. This is the default.
    #
    D:dm
    #
    #
    # P Line
    # Format: P:[<path>]<command> [<args>]
    # Example: P:/usr/bin/play
    #  - This line specifies the program that will be run on special events.
    #    * ONE LAST PARAMETER will be passed on to this program according to
    #    event type, and will be specified in other configuration lines.
    #
    # P:/usr/bin/play
    #
    # S Line
    # Format: S:<argument>
    # Example: S:Siren.wav
    #  - This is the argument will be passed to the program specified when 
    #    hosts/services stop responding. 
    #
    # S:Siren.wav
    #
    #
    # H Line
    # Format: H:[tcp|udp/<servicename/portnumber>@]<host_ip_or_fqdn>:<hostname>[:flags]
    # Examples: H:127.0.0.1:localhost:id
    #           H:tcp/smtp@127.0.0.1:sendmain on localhost:w
    #           H:udp/27500@192.168.0.3:quake time
    #       H:foo.bar.net:foobar
    #
    #
    #  - This is the most important line. Just add the hosts/services you 
    #    want to monitor. The flags are the same as for D line.
    H:192.168.0.1:dsl:wi
    H:192.168.10.1:router:wi
    H:192.168.10.2:test:
    H:192.168.10.100:localhost:
    H:192.168.10.111:dave:wi
    H:192.168.10.112:family:wi
    H:192.168.10.113:media1:wi
    H:192.168.10.114:media2:wi
    H:192.168.10.115:n770a:wi
    H:192.168.10.116:n770b:wi
    H:192.168.10.117:localhost:
    H:192.168.10.118:localhost:
    H:192.168.10.119:localhost:
    H:192.168.10.120:localhost:
    H:8.8.8.8:google:wi
    H:8.8.4.4:google:wi
    #
    # end
    
    • 0
  4. Marky
    2011-04-30T05:04:19+08:002011-04-30T05:04:19+08:00

    您使用的是哪个 Ubuntu 版本?在 Meerkat 和 Lynx 上,NetworkManager Applet显示在顶部面板的右侧,即指示器所在的位置。默认情况下它应该在那里。我没有安装提到的任何不包含网络小程序的版本。

    如果你在那里找不到它,你一定是错误地删除了它。您可以通过右键单击顶部面板并选择添加到面板再次添加它,您将在其中找到可供选择的小程序列表。选择合适的。

    现在根据您的图标主题,没有连接的指示图标会有所不同。尝试点击小程序并选择断开连接,看看会发生什么。当没有 Internet 连接时,它会显示该图标,并会显示一条消息,表明您的连接已丢失。

    • -1
  5. desgua
    2011-05-31T16:11:57+08:002011-05-31T16:11:57+08:00

    我知道观察“请不要 ping x 网站”,以及“有什么方法”的问题。但是如果我们不测试,我们怎么能说互联网是否可用呢?(这是问的问题,我知道)。好吧,这是一种方式,我会尽快(如果)找到其他方式。

    我们可以制作一个脚本,向您(在终端)显示 ping 某个可靠服务器的 Internet 连接状态。我需要研究如何使其成为面板通知。

    剧本:

    #!/bin/bash
    #
    # 这个脚本会检查你是否
    #可以上网
    #
    # 由德斯瓜
    #
    #######################################
    而 [ "$var1" != "end" ]
    做
    pingtime=$(ping -w 1 8.8.8.8 | grep ttl)
    如果 [ "$pingtime" = "" ]
    然后
       pingtimetwo=$(ping -w 1 74.125.91.105 | grep ttl)
       如果 [ "$pingtimetwo" = "" ]
       然后
           清除 ; 回声“向下”
       别的
           清除 ; 回声“向上”
       菲
    别的
        清除 ; 回声“向上”
    菲
    睡觉 2
    完毕
    
    • -1

相关问题

  • 如何设置 VLAN 转发?

  • 如何将主机 Ubuntu 上的 VPN (tun0) 网络适配器映射到 VirtualBox 来宾 Windows?

  • 如何限制下载/上传带宽?

  • 如何通过 Windows 网络共享文件?

  • 面板小程序以文本形式显示当前网络流量?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    我需要什么命令来解压缩/提取 .tar.gz 文件?

    • 8 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Martin Hope
    EmmyS 我需要什么命令来解压缩/提取 .tar.gz 文件? 2011-02-09 14:50:41 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve