Ping
From upnb游本网--笔记本电脑知识库(笔记本wiki)--您身边的电脑词典
PING (Packet Internet Grope)
ping是DOS命令,因特网包探索器,一般用于检查网络是否通畅或者网络连接速度。Ping发送一个ICMP回声清求消息给目的地并报告是否收到所希望的ICMP回声应答。ping成功只能保证本机与目标主机间存在一条连通的物理路径。
目录 |
工作原理
它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。
使用
下面就来看看它的一些常用的操作。先看帮助,在DOS窗口中键入:ping /? 回车,出现如图。所示的帮助画面。
在此,我们只掌握一些基本的很有用的参数就可以了。
- -t 表示将不间断向目标IP发送数据包,直到我们强迫其停止。试想,如果你使用100M的宽带接入,而目标IP是56K的小猫,那么要不了多久,目标IP就因为承受不了这么多的数据而掉线,呵呵,一次攻击就这么简单的实现了。
- -l size 值由size来指定。 定义发送数据包的大小,默认为32字节,我们利用它可以最大定义到65500字节。结合上面介绍的-t参数一起使用,会有更好的效果。
- -n count 值由count来指定。 定义向目标IP发送数据包的次数,默认为3次。如果网络速度比较慢,3次对我们来说也浪费了不少时间,因为现在我们的目的仅仅是判断目标IP是否存在,那么就定义为一次。
说明一下,如果-t 参数和 -n参数一起使用,ping命令就以放在后面的参数为标准,比如“ping IP -t -n 3”,虽然使用了-t参数,但并不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主机域名,这样就可以得到主机的IP。
-a 以IP地址格式来显示目标主机的网络地址 ;
下面我们举个例子来说明一下具体用法,如图。
这里time=321ms表示从发出数据包到接受到返回数据包所用的时间是321毫秒,从这里可以判断网络连接速度的大小 。从TTL的是数据包的存活时间,如果因为网络故障(拥堵、服务器瘫痪、路由失效等),造成本数据包在规定时间内未到达目的地时,本数据包失效 。
禁止ping入就是: 禁止别人用PING命令探测你的机器是否开机!
使用技巧
按照缺省设置,Windows上运行的Ping命令发送3个ICMP(网间控制报文协议)回送请求,每个32字节数据,如果一切正常,我们应能得到3个回送应答。 Ping能够以毫秒为单位显示发送回送请求到返回回送应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络连接速度比较快。Ping还能显示TTL(Time To Live存在时间)值,我们可以通过TTL值推算一下数据包已经通过了多少个路由器:源地点TTL起始值(就是比返回TTL略大的一个2的乘方数)-返回时TTL值。例如,返回TTL值为119,那么可以推算数据报离开源地址的TTL起始值为128,而源地点到目标地点要通过9个路由器网段(128-119);如果返回TTL值为246,TTL起始值就是256,源地点到目标地点要通过9个路由器网段。
通过Ping检测网络故障的典型次序
正常情况下,当我们使用Ping命令来查找问题所在或检验网络运行情况时,我们需要使用许多Ping命令,如果所有都运行正确,我们就可以相信基本的连通性和配置参数没有问题;如果某些Ping命令出现运行故障,它也可以指明到何处去查找问题。下面就给出一个典型的检测次序及对应的可能故障:
- ping 127.0.0.1 这个Ping命令被送到本地计算机的IP软件,该命令永不退出该计算机。如果没有做到这一点,就表示TCP/IP的安装或运行存在某些最基本的问题。
- ping 本机IP 这个命令被送到我们计算机所配置的IP地址,我们的计算机始终都应该对该Ping命令作出应答,如果没有,则表示本地配置或安装存在问题。出现此问题时,局域网用户请断开网络电缆,然后重新发送该命令。如果网线断开后本命令正确,则表示另一台计算机可能配置了相同的IP地址。
- ping 局域网内其他IP 这个命令应该离开我们的计算机,经过网卡及网络电缆到达其他计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正确。但如果收到0个回送应答,那么表示子网掩码(进行子网分割时,将IP地址的网络部分与主机部分分开的代码)不正确或网卡配置错误或电缆系统有问题。
- ping 网关IP 这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够作出应答。
- ping 远程IP 如果收到3个应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP的DNS会有问题)。
- ping localhost localhost是个作系统的网络保留名,它是127.0.0.1的别名,每太计算机都应该能够将该名字转换成该地址。如果没有做到这一带内,则表示主机文件(/Windows/host)中存在问题。
- ping www.xxx.com(如www.yesky.com 天极网) 对这个域名执行Ping www.xxx.com 地址,通常是通过DNS 服务器 如果这里出现故障,则表示DNS服务器的IP地址配置不正确或DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置DNS服务器了)。顺便说一句:我们也可以利用该命令实现域名对IP地址的转换功能。
- 如果上面所列出的所有Ping命令都能正常运行,那么我们对自己的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示我们所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。
Ping命令的常用参数选项
- ping IP Ct 连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断。
- ping IP -l 3000 指定Ping命令中的数据长度为3000字节,而不是缺省的32字节。
- ping IP Cn 执行特定次数的Ping命令。
防止被别人ping
用高级设置法预防Ping
- 默认情况下,所有Internet控制消息协议(ICMP)选项均被禁用。如果启用ICMP选项,您的网络将在 Internet 中是可视的,因而易于受到攻击。
- 如果要启用ICMP,必须以管理员或Administrators 组成员身份登录计算机,右击“网上邻居”,在弹出的快捷菜单中选择“属性”即打开了“网络连接”,选定已启用Internet连接防火墙的连接,打开其属性窗口,并切换到“高级”选项页,点击下方的“设置”,这样就出现了“高级设置”对话窗口,在“ICMP”选项卡上,勾选希望您的计算机响应的请求信息类型,旁边的复选框即表启用此类型请求,如要禁用请清除相应请求信息类型即可。
用网络防火墙阻隔Ping
- 使用防火墙来阻隔Ping是最简单有效的方法,现在基本上所有的防火墙在默认情况下都启用了ICMP过滤的功能。在此,以金山网镖2003和天网防火墙2.50版为蓝本来说明。
- 对于使用金山网镖2003的网友,请用鼠标右击系统托盘中的金山网镖2003图标,在弹出的快捷菜单中选择“实用工具”中的“自定义IP规则编辑器”,在出现的窗口中选中“防御ICMP类型攻击”规则,消除“允许别人用ping命令探测本机”规则,保存应用后就发挥效应。
- 如果您用的是天网防火墙,在其主界面点击“自定义IP规则”,然后不勾选“防止别人用ping命令探测”规则,勾选“防御ICMP攻击”规则,然后点击“保存/应用”使IP规则生效。
启用IP安全策略防Ping
- IP安全机制(IP Security)即IPSec 策略,用来配置 IPSec 安全服务。这些策略可为多数现有网络中的多数通信类型提供各种级别的保护。您可配置 IPSec 策略以满足计算机、应用程序、组织单位、域、站点或全局企业的安全需要。可使用 Windows XP 中提供的“IP 安全策略”管理单元来为 Active Directory 中的计算机(对于域成员)或本地计算机(对于不属于域的计算机)定义 IPSec 策略。
- 在此以WINDOWS XP为例,通过“控制面板”—“管理工具”来打开“本地安全策略”,选择IP安全策略,在这里,我们可以定义自己的IP安全策略。一个IP安全过滤器由两个部分组成:过滤策略和过滤操作。要新建IP安全过滤器,必须新建自己的过滤策略和过滤操作,右击窗口左侧的“IP安全策略,在本地机器”,在弹出的快捷菜单中选择“创建IP安全策略”,单击“下一步”,然后输入策略名称和策略描述。单击“下一步”,选中“激活默认响应规则”复选项,单击“下一步”。开始设置响应规则身份验证方式,选中“此字符串用来保护密钥交换(预共享密钥)”选项,然后随便输入一些字符(后面还会用到这些字符的),单击“下一步”,就会提示已完成IP安全策略,确认选中了“编辑属性”复选框,单击“完成”按钮,会打开其属性对话框。
- 接下来就要进行此新建安全策略的配置。在“Goodbye Ping 属性”对话窗口的“规则”选项页中单击“添加”按钮,并在打开安全规则向导中单击“下一步”进行隧道终结设置,在这里选择“此规则不指定隧道”。单击“下一步”,并选择“所有网络连接”以保证所有的计算机都Ping不通。单击“下一步”,设置身份验证方式,与上面一样选择第三个选项“此字符串用来保护密钥交换(预共享密钥)”并填入与刚才上面相同的内容。单击“下一步”即打开“IP筛选器列表”窗口,在“IP筛选器列表”中选择“新IP筛选器列表”,单击右侧的“编辑”,在出现的窗口中点击“添加”,单击“下一步”,设置“源地址”为“我的IP地址”,单击“下一步”,设置“目标地址”为“任何IP地址”,单击“下一步”,选择协议类型为ICMP,单击“完成”后再点“确定”返回如图9的窗口,单击“下一步”,选择筛选器操作为“要求安全”选项,然后依次点击“下一步”、“完成”、“确定”、“关闭”按钮保存相关的设置返回管理控制台。
- 最后在“本地安全设置”中右击配置好的“Goodbye Ping”策略,在弹出的快捷菜单中选择“指派”命令使配置生效。
经过上面的设置,当其他计算机再Ping该计算机时,就不再Ping通了。但如果自己Ping本地计算机,仍可Ping通。在Windows 2000中操作基本相同。
修改TTL值防Ping
- 许多入侵者喜欢用TTL值来判断操作系统,他们首先会Ping一下你的机子,如看到TTL值为128就认为你的系统为Windows NT/2000,如果TTL值为32则认为目标主机操作系统为Windows 95/98,如果为TTL值为255/64就认为是UNIX/Linux操作系统。既然入侵者相信TTL值所反应出来的结果,那么我们不妨修改TTL值来欺骗入侵者,达到保护系统的目的。方法如下:
- 打开Windows自带的“记事本”程序,编写如下所示的批处理命令:
@echo REGEDIT4>>ChangeTTL.reg @echo.>>ChangeTTL.reg @echo [HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpipParameters]>>ChangeTTL.reg @echo DefaultTTL=dword:000000ff>>ChangeTTL.reg @REGEDIT /S /C ChangeTTL.reg
- 另存为以.bat为扩展名的批处理文件,点击这个文件,你的操作系统的缺省TTL值就会被修改为ff,即十进制的255,即把你的操作系统人为地改为UNIX系统了!
- DefaultTTL=dword:000000ff是用来设置系统缺省TTL值的,如果你想将自己的操作系统的TTL值改为其它操作系统的ICMP回显应答值,请改变DefaultTTL的键值,要注意它的键值为16进制。
如何禁止别人ping自己的主机(2000自带)
我的电脑-控制面板-管理工具-本地安全策略-ip安全策略
- 这是2000给我们的配置ip管理的工具,我这里只说一下如何禁止别人ping我的主机。
- 共有四个步骤:
- 建立禁ping 规则
- 建立禁止/允许规则
- 把这两个规则联系在一起
- 指派
- 详细:
- 右击ip安全策略-管理ip筛选器表和筛选器操作-ip筛选器列表-添加:名称:ping;描述:ping;(勾选“使用添加向导”),---添加-下一步:指定源/目的ip ,协议类型(icmp),下一步直至完成,关闭此对话框。
- 管理ip筛选器表和筛选器操作-管理筛选器操作-添加(勾选“使用添加向导”)-下一步:名称:refuse;描述:refuse--下一步:阻止-下一步直至完成。
- 右击ip安全策略-创建ip安全策略-下一步:名称:禁止ping;--下一步:取消激活默认响应规则-下一步:选中选中“编辑属性“-完成。然后再“禁止ping属性“上-添加(勾选“使用添加向导”)-下一步直至“身份验证方法”;选第三项,输入共享字串-下一步:在ip筛选器列表里选“ping--下一步:选“refuse-下一步到完成。这是你在“本地安全设置“右侧会看到“禁止ping“这条规则,但是现在他还没有起作用。
- 右击“禁止ping“--指派。 这回一条禁止别人ping自己的机器的ip策略完成了。
赶快找个机器试试,自己的机器不行。会提示:请求超时(timeout).
- 以上只是一条小得的ip过滤。你可以自己制作其他的ip策略。
