Fping – Linux的高性能Ping工具

fping是一个小型命令行工具,用于向网络主机发送ICMP回应请求,类似于ping,但在ping多个主机时性能要高得多。

Fping程序类似于ping(ping是通过ICMP(网络控制信息协议InternetControl Message Protocol)协议回复请求以检测主机是否存在)。Fping与ping不同的地方在于,fping可以在命令行中指定要ping的主机数量范围,也可以指定含有要ping的主机列表文件。

与ping要等待某一主机连接超时或发回反馈信息不同,fping给一个主机发送完数据包后,马上给下一个主机发送数据包,实现多主机同时ping。如果某一主机ping通,则此主机将被打上标记,并从等待列表中移除,如果没ping通,说明主机无法到达,主机仍然留在等待列表中,等待后续操作。

Fping类似于ping,但比ping强大。Fping与ping不同的地方在于,fping可以在命令行中指定要ping的主机数量范围,也可以指定含有要ping的主机列表文件。

与ping要等待某一主机连接超时或发回反馈信息不同,fping给一个主机发送完数据包后,马上给下一个主机发送数据包,实现多主机同时ping。如果某一主机ping通,则此主机将被打上标记,并从等待列表中移除,如果没ping通,说明主机无法到达,主机仍然留在等待列表中,等待后续操作。

例如,使用fping,我们可以指定完整的网络范围( 192.168.0.1/24 )。 它会向主机发送Fping请求,并以循环方式移动到另一个目标主机。 与ping不同,Fping基本上用于编写脚本。

fping工具的参数说明:

参数

说明

-a Lists targets that responded

显示可ping通的目标

-A Lists targets by address instead of hostname

将目标以ip地址的形式显示

-b <num> Sends <num> bytes of data per ICMP packet (default 56)

ping 数据包的大小。(默认为56)

-B <f> Tells fping to wait <f> times longer for a reply after each successive failed request (default 1.5)

设置指数反馈因子到f

-c <num> Number of Pings to send to each target (default 1)

ping每个目标的次数 (默认为1)

-C <num> Same as above but prints additional statistics for each host

同-c,返回的结果为冗长格式

-e Displays elapsed time on return packets

显示返回数据包所费时间

-f <file> Reads the target list from <file> (use “-” for standard input) (only if no -g specified)

从文件获取目标列表( – 表示从标准输入)(不能与 -g 同时使用)

-g Tells fping to generate a target list by specifying the start and end address (ex. ./fping -g 192.168.1.0 192.168.1.255) or an IP/subnet mask (ex. ./fping -g 192.168.1.0/24)

通过指定开始和结束地址来生成目标列表(例如:./fping –g 192.168.1.0 192.168.1.255)或者一个IP/掩码形式(例如:./fping –g 192.168.1.0/24)

-i <num> Interval (in milliseconds) to wait between Pings (default 25)

设置ip的TTL值 (生存时间)

-l Sends Pings forever

循环发送ping

-m Pings multiple interfaces on target host

ping目标主机的多个网口

-n Displays targets by name (-d is equivalent)

将目标以主机名或域名显示(等价于 -d )

-p <num> Interval (in milliseconds) between Pings to an individual target (in looping and counting modes, default 1000)

对同一个目标的ping包间隔(毫秒) (在循环和统计模式中,默认为1000)

-q Doesn’t show per-target/per-Ping results

安静模式(不显示每个目标或每个ping的结果)

-Q <num> Same as -q, but show summary every <num> seconds

同-q, 但是每n秒显示信息概要

-r <num> When a host doesn’t respond, retries the host <num> times (default 3)

当ping失败时,最大重试次数(默认为3次)

-s Displays summary statistics

打印最后的统计数据

-t <num> Timeout (in milliseconds) for individual targets (default 500)

单个目标的超时时间(毫秒)(默认500)

-u Displays targets that are unreachable

显示不可到达的目标

-v Displays version number

显示版本号

如何在Linux系统中安装Fping

在大多数Linux发行版中,可以使用包管理工具从默认包存储库安装包fping

# sudo apt install fping  [On Debian/Ubuntu]
# sudo yum install fping  [On CentOS/RHEL]
# sudo dnf install fping  [On Fedora 22+]
# sudo pacman -S fping    [On Arch Linux]

或者,您可以使用以下命令从源包安装最新版本的fping ( 4.0 )。

$ wget https://fping.org/dist/fping-4.0.tar.gz
$ tar -xvf fping-4.0.tar.gz
$ cd fping-4.0/
$ ./configure
$ make && make install

让我们看一些Fping命令及其示例。

1. Fping多个IP地址

以下命令将同时显示多个IP地址,它将显示状态为活动或无法访问。

# fping 50.116.66.139 173.194.35.35 98.139.183.24
50.116.66.139 is alive
173.194.35.35 is unreachable
98.139.183.24 is unreachable

2. Fping IP地址范围

以下命令将指定指定范围的IP收件人。 使用以下输出,我们将响应请求发送到IP地址范围并获得我们想要的回复。 退出后还显示累积结果。

# fping -s -g 192.168.0.1 192.168.0.9
192.168.0.1 is alive
192.168.0.2 is alive
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.3
ICMP Host Unreachable from 192.168.0.2 for ICMP Echo sent to 192.168.0.4
192.168.0.3 is unreachable
192.168.0.4 is unreachable
8      9 targets
2 alive
2 unreachable
0 unknown addresses
4 timeouts (waiting for response)
9 ICMP Echos sent
2 ICMP Echo Replies received
2 other ICMP received
0.10 ms (min round trip time)
0.21 ms (avg round trip time)
0.32 ms (max round trip time)
4.295 sec (elapsed real time)

3.使用不同选项填充完整网络

使用上述命令,它将ping整个网络并重复一次( -r 1 )。

# fping -g -r 1 192.168.0.0/24

4.从文件中读取目标列表

我们创建了一个名为fping.txt的文件,其IP地址( 173.194.35.3598.139.183.24 )到fping。

# fping < fping.txt
173.194.35.35 is alive
98.139.183.24 is alive

5.显示Fping版本

执行命令检查Fping版本。

# fping -v
fping: Version 4.0
fping: comments to [email protected]

那些想要获得有关Fping命令选项的更多信息的人请查看手册页。 还请求在您的环境中尝试Fping命令,并通过下面的评论框与我们分享您的经验。

 fping的主要参数有以下两个:

-a:只显示存活主机;

-u:只显示不存活主机;

-l:循环ping

-g:通过指定起始地址与终止地址产生目标列表

目标IP地址的输入方式:

fping IP1 IP2 IP3 ...;

fping -f filename;

fping -g IP1 IP2(IP1地址开始范围,IP2地址结束范围);

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论