Ping命令的另一种使用方法

    xiaoxiao2025-08-30  48

    今天实习结束休息的时候无聊,于是便想看看机房有多少机器,IP是什么,有没有什么小漏洞。

    依次使用了netstat、ping、Telnet以后,不小心输入了这样一个东西

    当时按下回车以后,心里想的是这样肯定是要报错,不会执行下去的。没有想到居然看到了结果。然后再看IP是【0.0.0.5】,就在疑惑为什么会是5,不应该是错误吗?

    然后又尝试了几个不同的结果。结果如下:

    到了这里我们就可以发现,直接输入数字并不是一种错误的输入方式,反而可以得到正确的结果。那么我们就应该分析一下具体的运算规律。

    首先我们尝试几种特殊的值:

    【1】

    【255】

    【256】

    这里我们发现

    1. 当输入的数值小于256时,就相当于输入的IP最后一段的数值,其他各位均为0.

    2. 当输入的数值大于256时,就相当于输入的IP为输入数值除以256,如果有余数则余数为IP最后一段的数值。即:输入数据为256,得到的IP为:0.0.1.0。

    随后我们依次尝试【256*256】【256*256*256】

    【256*256】:65536

    【256*256*256】:16777216

    到这里我们发现一个256代表完整的一段IP地址。

    那么如果想要尝试Ping :192.168.1.1

    我们需要输入的数据便是1+256*1+168*256*256+192*256*256*256

    即1+256+11010048+3221225472=3232235777

    测试结果如下:

    这里我们得到了正确的结果。

    查了一下Ping的帮助,发现并没有相应的解释,我们可以大胆的猜测一下,Windows本身就是通过这种办法来实现的Ping。理由是什么呢,更高效?具体的原因就需要继续的研究了。

    谢谢支持!

    可以联系我进行交流。Renhanlinbsl@163.com

    2015.5.4

    16:28

    转载请注明原文地址: https://ju.6miu.com/read-1302132.html
    最新回复(0)