您的位置:

fping命令完全详解

一、fping命令简介

fping是一个ping命令的增强版。ping命令用于测试与目标主机的连通性,但是有一些限制,比如ping命令只能测试一台主机,不能同时测试多台主机。而fping命令则可以支持多台主机同时测试,可以快速的探测一个ip地址范围内有哪些主机在线,这对于网络管理员来说是非常有用的。

二、fping命令的安装和基本用法

安装fping非常简单,只需要使用包管理器或从源码进行编译安装即可。下面是fping的基本用法:

    fping [-a|-A|-g|-G|-n|-r|-s|-S|-t|-u] [-c count] [-i interval] [-l] [-p timeout]
          [-b (size|addr)] [-B fwait] [-T ttl] [-Q flag] [targets...]

上述命令中,targets为待测试的ip地址或域名列表,可以使用以下的方式指定:

    target
    -f file, --file=file
    CIDR notation: ip/netmask
    hostname range notation: name[start-end]

三、fping命令选项详解

1、-a

使用-a选项可以列出在线的主机,将响应的ip地址列出。

    fping -a 192.168.1.0/24

上述命令将探测192.168.1.0/24网段内的所有主机,列出在线的主机。

2、-c

使用-c选项可以指定ping每个目标的次数。

    fping -c 5 192.168.1.1

上述命令将对192.168.1.1进行5次ping测试。

3、-g

使用-g选项可以探测一个ip地址范围内的在线主机。

    fping -g 192.168.1.0 192.168.1.255

上述命令将探测192.168.1.0到192.168.1.255的ip地址范围内的所有主机,并列出在线的主机。

4、-i

使用-i选项可以指定探测的间隔时间。

    fping -i 1000 192.168.1.1

上述命令将对192.168.1.1进行ping测试,每隔1000ms进行一次。

5、-n

使用-n选项可以禁用DNS反向解析,加快探测速度。

    fping -n 192.168.1.1

上述命令将对192.168.1.1进行ping测试,禁用DNS反向解析。

四、fping命令高级用法

1、测试域名列表

fping命令不仅可以测试ip地址,也可以测试域名。

    cat domain.txt | fping -a -f -

上述命令从文件domain.txt读取域名列表,fping逐个进行测试,并列出在线的域名。

2、测试网段内的在线主机

fping命令可以测试一个网段内的所有在线主机。

    for ip in $(seq 1 255); do fping -c 1 192.168.1.$ip 2>/dev/null | grep 'alive'; done

上述命令将测试192.168.1.1到192.168.1.255的所有ip地址,并列出在线ip地址。

3、通过fping测试ssh端口是否开放

fping命令可以配合nc命令测试端口是否开放。

    for ip in $(seq 1 255);do fping -c 1 192.168.1.$ip 2>/dev/null | grep 'alive' && nc -v -w 1 192.168.1.$ip 22 >/dev/null && echo "192.168.1.$ip: ssh port is open";done

上述命令将测试192.168.1.1到192.168.1.255范围内所有在线主机,如果22端口开放,则输出“192.168.1.x: ssh port is open”

总结

fping命令是一个非常强大的网络工具,可以快速的探测多个目标主机,帮助网络管理员快速的了解网络的情况。