标签: ping

traceroute 如何解析名称?

在编写脚本时,我想通过我给它的计算机名称(例如“selenium-rc”)来引用一台机器。我无法使用“selenium-rc” ping 它,所以我尝试了以下命令来查看是否识别了该名称。

> traceroute 192.168.235.41
traceroute to 192.168.235.41 (192.168.235.41), 64 hops max, 52 byte packets
 1  selenium-rc (192.168.235.41)  0.545 ms  0.241 ms  0.124 ms
Run Code Online (Sandbox Code Playgroud)

好的,traceroute“找到”了这个名字。如何?下一个 ...

> traceroute selenium-rc
traceroute: unknown host selenium-rc
Run Code Online (Sandbox Code Playgroud)

嗯……这里的查找机制肯定不一样,因为主机是未知的。我假设这是使用系统名称解析过程,而第一个示例是使用特定于 traceroute 的过程。正确的?

然后当我稍后回来时......

> traceroute 192.168.235.41
traceroute to 192.168.235.41 (192.168.235.41), 64 hops max, 52 byte packets
 1  minint-q4e8i52.mycorp.net (192.168.235.41)  0.509 ms  0.206 ms  0.136 ms
Run Code Online (Sandbox Code Playgroud)

好吧,不同的结果。“selenium-rc”名称在机器本身上没有改变,但 traceroute 名称解析过程必须包括某种优先级,并且现在给出由网络上的另一个系统/服务分配的可能更权威的结果。(不幸的是,我假设它是一个我无法控制的动态名称,因此它在脚本中没有用。)

有人可以解释结果吗?

networking hostname ping

11
推荐指数
1
解决办法
4万
查看次数

主机无法访问,我不明白为什么

我无法打开特定网站。这是一个由我们公司托管的网站,我知道它已经上线了。但是,这些是我的症状:

VARIABLES:
host.com - the website I can not open
x.x.x.x - the IP of host.com
192.168.0.121 - the IP of my local machine
192.168.0.1 - the gateway IP that gives access to internet
Run Code Online (Sandbox Code Playgroud)
  • 如果我转到浏览器并打开http://host.com,则会出现错误(无法在 Firefox 中连接;页面在 Chrome 中不可用)
  • 如果我运行ping host.com,它会返回:
PING host.com (x.x.x.x) 56(84) bytes of data.
From 192.168.0.121 icmp_seq=1 Destination Host Unreachable
From 192.168.0.121 icmp_seq=2 Destination Host Unreachable
From 192.168.0.121 icmp_seq=3 Destination Host Unreachable
Run Code Online (Sandbox Code Playgroud)

请注意,这192.168.0.121是我自己机器的IP。

  • traceroute 也会惨遭失败:
$ traceroute host.com 
traceroute to …
Run Code Online (Sandbox Code Playgroud)

networking internet ping

10
推荐指数
2
解决办法
13万
查看次数

我的 Ping 命令似乎永远不会完成。这是否意味着它正在成功?

我正在 ping 一个远程 IP。我对 Ping 命令知之甚少。当我 ping IP 时,它一直在继续……我没有使用-t 选项

Me$ ping 137.30.124.104
PING 137.30.124.104 (137.30.124.104): 56 data bytes
64 bytes from 137.30.124.104: icmp_seq=0 ttl=62 time=3.378 ms
64 bytes from 137.30.124.104: icmp_seq=1 ttl=62 time=3.825 ms
64 bytes from 137.30.124.104: icmp_seq=2 ttl=62 time=4.882 ms
64 bytes from 137.30.124.104: icmp_seq=3 ttl=62 time=1.822 ms
64 bytes from 137.30.124.104: icmp_seq=4 ttl=62 time=4.572 ms
....
64 bytes from 137.30.124.104: icmp_seq=290 ttl=62 time=3.273 ms
Run Code Online (Sandbox Code Playgroud)

这是否意味着它成功地ping IP?或者它正在尝试失败并再次尝试?我如何让它停止?

networking ping

10
推荐指数
1
解决办法
1万
查看次数

Shell 命令/脚本来查看主机是否还活着?

我试图找出更多方法来查看给定主机是否已启动,仅使用 shell 命令(主要是 bash)。理想情况下,它将能够使用主机名和 IP 地址。现在,我所知道的唯一本地方式是 ping,可能已集成到此处描述的脚本中。还有其他想法吗?

hostname shell-script ping

10
推荐指数
2
解决办法
4万
查看次数

如何记录互联网连接中断

一旦我的树莓派连接到互联网,我就需要执行一个脚本。但是我想知道是否有比每分钟左右 ping Google 更好的方法。

我的问题是我的 Internet 连接在白天断开了 1-2 次,因此我需要一种方法来记录此类事件。
这只是白天的 ADSL 掉线,我一直在寻找某种方式来记录它何时发生,即使我没有注意到。我想我会按照建议设置一个脚本。

ip monitoring ping

10
推荐指数
2
解决办法
2万
查看次数

为什么我可以通过部分IP地址访问服务器?

在我的网络中,我有一个 IP 地址为 10.0.0.15 的服务器。偶然地,我发现命令:ping 10.0.15导致

64 bytes from 10.0.0.15: icmp_seq=1 ttl=64 time=9.09 ms
Run Code Online (Sandbox Code Playgroud)

...所以正确的服务器响应 ping。即使我尝试:ping 10.15我也得到了可比较的结果。此外,到部分地址的 telnet 也按预期工作。但是,SSH 失败。为什么发送到部分地址的数据包会到达正确的服务器?

linux networking ip ping telnet

10
推荐指数
1
解决办法
665
查看次数

无法ping通广播

我们在 Fedora 13 上运行了四台连接到集线器(是集线器而不是交换机)的计算机。它们是使用来自最近离开我们回学校的同事的图像安装的,它们可能已设置为以某种方式阻止使用广播,但我们想继续使用这个图像。我们已经使用 ifconfig(我们也尝试过 ip addr add)将每台计算机的静态 IP 设置为 10.0.1.11/24 到 10.0.1.14/24,使用这些设置我们似乎无法 ping 广播,这确实是正确设置为 10.0.1.255,使用 tcpdump 我们除了从调用 ping 请求的计算机发出的 ping 请求外,我们什么也看不到。有没有人有任何想法或者我完全错过了什么?

linux networking ip ping

9
推荐指数
2
解决办法
1万
查看次数

尝试编写一个 shell 脚本来远程测试服务器,但是当我注销时它一直在 else 语句中

尝试在这里编写一个 shell 脚本,它不断测试我的服务器并在它出现故障时给我发送电子邮件。

问题是,当我从 ssh 连接注销时,尽管&在命令末尾运行它,例如./stest01.sh &,它会自动落入 else 并不间断地向我发送邮件,直到我再次登录并杀死它。

#!/bin/bash
while true; do
    date > sdown.txt ;
    cp /dev/null pingop.txt ;
    ping -i 1 -c 1 -W 1 myserver.net > pingop.txt &
    sleep 1 ;
    if
        grep "64 bytes" pingop.txt ;
    then
        :
    else
        mutt -s "Server Down!" myemail@address.com < sdown.txt ;
        sleep 10 ;
    fi
done
Run Code Online (Sandbox Code Playgroud)

linux grep shell-script ping bourne-shell

9
推荐指数
1
解决办法
939
查看次数

用于检查主机可用性的 Bash ping 脚本文件

我正在尝试在一个文件中编写一个 bash 脚本,当运行时开始 ping 主机直到它可用,当主机变得可访问时它运行一个命令并停止执行,我尝试编写一个但脚本继续 ping 直到计数结束,

另外,我需要将该进程置于后台,但如果我运行带有美元 ( $) 符号的脚本,它仍会在前台运行,

#!/bin/bash
ping -c30 -i3 192.168.137.163
if [ $? -eq 0 ]
then /root/scripts/test1.sh
exit 0
else echo “fail”
fi
Run Code Online (Sandbox Code Playgroud)

bash exit ping oracle-linux

8
推荐指数
2
解决办法
21万
查看次数

ping:只显示结果

ping 时是否可以只显示毫秒数而不是整个结果页面?

我想检查我的服务器是否在线,所以我想返回“OK xyz ms”或“FAIL”。我目前正在这样做:

#!/bin/sh
ergebnis=$(ping -qc1 google.com) 
ok=$?
avg=$(echo -e "$ergebnis"  | tail -n1 | awk '{print $4}' | cut -f 2 -d "/")

if [ $ok -eq 0 ]
then
        echo "OK $avg ms"
else
        echo "FAIL"
fi
Run Code Online (Sandbox Code Playgroud)

但是,这使用了相当多的管道,并且由于我经常运行此命令来监视我的服务器,我想知道是否有“更智能”的方法。我也担心当 ping 命令失败时我的管道可能无法正常工作。

shell ping

8
推荐指数
2
解决办法
2万
查看次数