在启动时ping转发器并且永不停止


0

我有一个无线中继器,由于某种原因喜欢一直进入睡眠模式,即使它不应该。制造商发誓这不是缺陷,当它起作用时,效果很好。

我注意到,当我连续ping它时,只要ping继续它就会保持清醒,给它2-3分钟没有ping,它会睡觉而不会醒来。

长话短说,我在办公室里有一个linux服务器,我想知道是否可以设置一个命令,一旦服务器启动就连续ping ip地址,并且在我关闭服务器之前永远不会停止。

我需要做些什么呢?

谢谢!

Answers:


2

这可以通过使用具有一些特定参数来ping的cron来实现。

创建一个名称可能是/etc/cron.d/ping-my-repeater的文件。对于内容,请选择以下之一。

如果每分钟一次就足够了,试试这个:

* * * * * root ping -n -c 1 -W 1 $REPEATER_IP_ADDRESS

如果需要每分钟两次,请尝试以下方法:

* * * * * root ping -n -c 2 -i 30 -W 1 $REPEATER_IP_ADDRESS

如果需要每15秒,请尝试以下方法:

* * * * * root ping -n -c 4 -i 15 -W 1 $REPEATER_IP_ADDRESS

-c 指定计数, -i 指定echo请求之间的间隔(以秒为单位)和 -W 指定等待每个回复的时间(以秒为单位)。 -n 仅表示数字输出,特别是抑制远程IP地址反向名称解析。 * * * * * 意味着每分钟执行一次命令,并且 root 是执行命令的用户。

未经远程主机所有者同意,请不要将此类内容指向未经物理控制的IP地址。

一旦您对它的工作感到满意,您就可以通过添加诸如的行来抑制生成的电子邮件输出

MAILTO=""

在文件的顶部。

这种方式的工作方式是ping发送一个ICMP echo请求并等待 -W 响应的秒数,然后是否应发送更多的回应请求等待 -i 发送另一个之前的秒数。所以第一个是立即发送的,第二个(例如)在第一个响应之后15秒被接收或超时,第三个是另一个15秒之后,第四个另一个15秒之后,总壁钟运行时间大约45秒。在下一分钟的顶部,再次启动ping并重复该过程。

您也可以启动ping,例如/etc/rc.local(您的系统上可能有不同的名称),跳过 -c N 选项,让ping无限期运行;但是,有时可能会在启动顺序中发挥不良影响,并且如果某些事情导致ping终止,除非您采取特定步骤来检查它是否会自动重启。


好吧,所以我制作了文件,如何运行它们?只需重启服务器?
JonYork

1
@JonYork cron应该自动接收添加的文件,假设它正在运行。稍等片刻,然后检查root的邮箱(或重定向到的任何邮箱)以进行输出。
a CVn
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.