Ping命令,大家都很熟悉,常用来测试局域网的连接状态。“Ping IP地址”是最常用的命令格式,但您是否注意到Ping命令中的IP地址?这里面有很多学问和讲究。在这里,笔者将介绍这些隐藏在Ping命令中的秘密。
“0”可以有条件地省略。
大家经常用‘ping 127 . 0 . 0 . 1’命令在这台机器上做循环测试,验证这台机器的TCP/IP协议套件是否安装正确。但是你发现了吗?使用命令“ping 127.1”可以获得相同的测试结果。其实‘ping 127.1’和‘ping 127 . 0 . 0 . 1’这两个命令是一样的,都是在进行环路测试。
为什么会这样?这是Ping命令应用中使用IP地址的技巧。众所周知,IP地址是由32位二进制数字组成的。为了方便大家记忆,每8位二进制数字都转换成十进制数字,这样就形成了一个由4个十进制数字组成的容易记忆的IP地址(如127.0.0.1)。由于Windows操作系统有自动填充“. 0”的功能,我可以把“127.0.0.1”改成“127.1”。
但是这个“. 0”的省略是有条件的,不能任意省略。在Ping命令的应用中,可以只省略IP地址最后一个十进制数字前出现的一个或多个“. 0”,例如“ping 127.0.0.1”命令可以改写为“ping 127.1”。
如果这一个或多个“. 0”在最后一部分没有十进制数字,而是在其他位置,则不能省略此“. 0”。例如,“ping 202.0.96.1”不能写成“ping 202.96.1”。这是因为‘ping 202 . 96 . 1’返回的结果是‘202 . 96 . 0 . 1’的回复报文,而不是‘202 . 0 . 96 . 1’的回复报文。
数字字符串而不是IP地址
在Ping命令中,您也可以使用数字字符串来代替IP地址。你相信吗?运行‘ping 3658906394’命令,会看到IP地址‘218 . 22 . 123 . 26’的返回信息。
为什么会这样?实际上,“3658906394”是IP地址“218.22.123.26”的另一种表示。当然,您可以用同样的方法Ping其他IP地址。
字符串是如何转换的?其实并不复杂。以IP地址‘218 . 22 . 123 . 26’为例。将IP地址转换成数字字符串的方法如下:首先将' 218.22.123.26 '转换成十六进制的' DA.16.7B.1A '然后去掉小数点,改为' DA167B1A '使用相同的方法将其他IP地址转换成数字字符串。
提示:在某些局域网环境中,使用“Ping digit string”命令可能会失败,并出现提示消息“Unknown host digit string ”,因为数字字符串被解析为主机名,而不是ip地址。
因此,网络管理员在掌握上述技巧后,在进行网络测试或维护时,可以熟练地使用‘省略号’法,可以减少Ping命令的字符输入,提高工作效率。同时,用数字串代替IP地址也可以迷惑好奇的普通用户,防止他们随意设置。