ping 的使用方法

Catalogue
  1. 1. 常见用法
  2. 2. linux禁止Ping与开启Ping的方法
    1. 2.1. 内核参数设置
    2. 2.2. 防火墙设置

常见用法

1
2
3
4
5
6
7
ping -i 0.2 -c 30 -I 192.168.10.208 180.149.132.47 -q

-i 指定发送数据包时间间隔
-c 指定一共发送多少个数据包
-q指定直接显示程序的启动和最后结果
-I 网络界面:使用指定的网络界面送出数据包,即192.168.10.208是发出ping命令的主机IP地址,180.149.132.47是被ping的主机的IP地址
-w 等待指定时间后停止ping程序的执行。当试图测试不可达主机时此选项很有用,时间单位是秒。

linux禁止Ping与开启Ping的方法

Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A、内核参数,B、防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping。

当linux禁止Ping后,可通过tcping.exe指定端口ping通该机器

内核参数设置

  • 允许Ping设置
  1. 临时允许Ping操作的命令为:#echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all

  2. 永久允许Ping配置方法。

    1
    2
    3
    4
    5
    6
    7
    /etc/sysctl.conf 中增加一行

    net.ipv4.icmp_echo_ignore_all=1

    如果已经有net.ipv4.icmp_echo_ignore_all这一行了,直接修改=号后面的值即可的(0表示允许,1表示禁止)

    修改完成后执行sysctl -p使新配置生效
  • 禁止Ping设置
  1. 临时禁止Ping的命令为:#echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all
  2. 永久允许Ping配置方法
    1
    2
    3
    4
    5
    6
    7
    /etc/sysctl.conf 中增加一行

    net.ipv4.icmp_echo_ignore_all=0

    如果已经有net.ipv4.icmp_echo_ignore_all这一行了,直接修改=号后面的值即可的。(0表示允许,1表示禁止)

    修改完成后执行sysctl -p使新配置生效。

防火墙设置

注:此处的方法的前提是内核配置是默认值,也就是没有禁止Ping

这里以Iptables防火墙为例,其他防火墙操作方法可参考防火墙的官方文档。

  • 允许Ping设置

    1
    2
    3
    4
    5
    6
    7
    iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

    iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

    或者也可以临时停止防火墙操作的。

    service iptables stop
  • 禁止Ping设置

    1
    iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP

参考链接:Linux禁止ping以及开启ping的方法