现在的位置: 首页 > 综合 > 正文

什么是MAC地址及作用管理教程——What is the MAC address and role management tutorial

2017年12月15日 ⁄ 综合 ⁄ 共 17226字 ⁄ 字号 评论关闭

 

如果你是通过校园网或小区接入Internet,那么一定听说过MAC地址。什么是MAC地址,MAC地址在这种局域网环境中究竟起到什么作用?下面就来介绍一下MAC地址的知识,MAC地址和IP地址的区别以及MAC地址在实际应用中所涉及到的安全问题。

  一、基础知识

  如今的网络是分层来实现的,就像是搭积木一样,先设计某个特定功能的模块,然后把模块拼起来组成整个网络。局域网也不例外,一般来说,在组网上我们使用的是IEEE802参考模型,从下至上分为:物理层、媒体接入控制层(MAC),逻辑链路控制层(LLC)。

  标识网络中的一台计算机,一般至少有三种方法,最常用的是域名地址、IP地址和MAC地址,分别对应应用层、网络层、物理层。网络管理一般就是在网络层针对IP地址进行管理,但由于一台计算机的IP地址可以由用户自行设定,管理起来相对困难,MAC地址一般不可更改,所以把IP地址同MAC地址组合到一起管理就成为常见的管理方式。

  二、什么是MAC地址

  MAC地址就是在媒体接入层上使用的地址,也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。MAC地址与网络无关,也即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,都有相同的MAC地址,它由厂商写在网卡的BIOS里。MAC地址可采用6字节(48比特)或2字节(16比特)这两种中的任意一种。但随着局域网规模越来越大,一般都采用6字节的MAC地址。这个48比特都有其规定的意义,前24位是由生产网卡的厂商向IEEE申请的厂商地址,目前的价格是1000美元买一个地址块,后24位由厂商自行分配,这样的分配使得世界上任意一个拥有48MAC地址的网卡都有唯一的标识。另外,2字节的MAC地址不用网卡厂商申请。

  MAC地址通常表示为1216进制数,每216进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前616进制数08:00:20代表网络硬件制造商的编号,它由IEEE分配,而后316进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系列号。每个网络制造商必须确保它所制造的每个以太网设备都具有相同的前三字节以及不同的后三个字节。这样就可保证世界上每个以太网设备都具有唯一的MAC地址。

  三、IP地址与MAC地址的区别

  IP地址基于逻辑,比较灵活,不受硬件限制,也容易记忆。MAC地址在一定程度上与硬件一致,基于物理,能够标识具体。这两种地址各有好处,使用时也因条件而采取不同的地址。

四、为什么要用到MAC地址

  这是由组网方式决定的,如今比较流行的接入Internet的方式(也是未来发展的方向)是把主机通过局域网组织在一起,然后再通过交换机和Internet相连接。这样一来就出现了如何区分具体用户,防止盗用的问题。由于IP只是逻辑上标识,任何人都随意修改,因此不能用来标识用户;而MAC地址则不然,它是固化在网卡里面的。从理论上讲,除非盗来硬件(网卡),否则是没有办法冒名顶替的(注意:其实也可以盗用,后面将介绍)。

  基于MAC地址的这种特点,局域网采用了用MAC地址来标识具体用户的方法。注意:具体实现:在交换机内部通过的方式把MAC地址和IP地址一一对应,也就是所说的IPMAC绑定。

  具体的通信方式:接收过程,当有发给本地局域网内一台主机的数据包时,交换机接收下来,然后把数据包中的IP地址按照中的对应关系映射成MAC地址,转发到对应的MAC地址的主机上,这样一来,即使某台主机盗用了这个IP地址,但由于他没有这个MAC地址,因此也不会收到数据包。发送过程和接收过程类似,限于篇幅不叙述。

  综上可知,只有IP而没有对应的MAC地址在这种局域网内是不能上网的,于是解决了IP盗用问题。

  五、怎样获得自己的MAC地址

  MAC地址固化在网卡中的BIOS中,可以通过DOS命令取得。Win9x用户可以使用winipcfg命令,Win2k/XP用户可以使用ipconfig/all命令,其中用16进制表示的12位数就是MAC地址。
六、MAC地址涉及到的安全问题

  从上面的介绍可以知道,这种标识方式只是MAC地址基于的,如果有人能够更改MAC地址,就可以盗用IP免费上网了,目前网上针对小区宽带的盗用MAC地址免费上网方式就是基于此这种思路。如果想盗用别人的IP地址,除了IP地址还要知道对应的MAC地址。举个例子,获得局域网内某台主机的MAC地址,比如想得到局域网内名为TARGET主机的MAC地址,先用PING命令:PING
TARGET
,这样在我们主机上面的ARP表的缓存中就会留下目标地址和MAC映射的记录,然后通过ARP
A
命令来查询ARP表,这样就得到了指定主机的MAC地址。最后用ARP
-s IP
网卡MAC地址,命令把网关的IP地址和它的MAC地址映射起来就可以了。

2
如果要得到其它网段内的MAC地址,那么可以用工具软件来实现,我觉得Windows优化大师中自带的工具不错,点击系统性能优化系统安全优化附加工具集群Ping”,可以成批的扫出MAC地址并可以保存到文件。


  小知识:ARP(Address Resolution Protocol)是地址解析协议,ARP是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。ARP协议是通过IP地址来获得MAC地址的。
ARP
原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到BIP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机AIP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有BMAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依K交换机来进行,而是在本机上建立一个用来记录常用主机IPMAC映射表,即ARP表。
   
  七、如何修改自己的MAC地址

  MAC地址是固化在网卡中的,MAC地址具有唯一性,难道没有办法更改了么?不是的,我们完全不用修改EPROM的内容,而只通过修改存储单元的内容就能达到修改MAC地址的目的。例如在Windows中可以通过注册表来修改。

  在开始菜单的运行中输入regedit.exe,打开注册表编辑器,展开注册表到:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}子键,在子键下的000000010002等分支中查找DriverDesc(如果你有一块以上的网卡,就有00010002……在这里保存了有关你的网卡的信息,其中的DriverDesc的内容就是你的网卡的信息描述,比如我的网卡就是Intel
21041 based Ethernet Controller
),在这里假设你的网卡在0000子键。

  在0000子键下添加一个字符串,命名为“NetworkAddress”,键值为修改后的MAC地址,要求为连续的1216进制数。然后在“0000”子键下的NDI\params中新建一项名为NetworkAddress的子键,在该子键下添加名为“default”的字符串,键值为修改后的MAC地址。

  在NetworkAddress的子键下继续建立名为“ParamDesc”的字符串,其作用为指定NetworkAddress的描述,其值可为“MAC
Address”
。这样以后打开网络邻居的属性,双击相应的网卡就会发现有一个高级设置,其下存在MAC
Address
的选项,它就是你在注册表中加入的新项NetworkAddress,以后只要在此修改MAC地址就可以了。

  关闭注册表,重新启动,你的网卡地址已改。打开网络邻居的属性,双击相应网卡项会发现有一个MAC
Address
的高级设置项,用于直接修改MAC地址。

  当然,你还可以用工具软件来修改网卡的MAC地址,如MAC2001这款软件就可以达到我们的目的。

八、如何解决MAC地址带来的安全问题

  我们可以将IP地址和MAC地址捆绑起来来解决这个问题。进入“MS-DOS方式命令提示符,在命令提示符下输入命令:ARP
-s 10.88.56.72 00-10-5C-AD-72-E3
,即可把MAC地址和IP地址捆绑在一起。这样,就不会出现IP地址被盗用而不能正常使用网络的情况,可以有效保证小区网络的安全和用户的应用。

  注意:ARP命令仅对局域网的上网代理服务器有用,而且是针对静态IP地址,如果采用Modem拨号上网或是动态IP地址就不起作用。

  不过,只是简单地绑定IPMAC地址是不能完全的解决IP盗用问题的。作为一个网络供应商,他们有责任为用户解决好这些问题之的后,才交给用户使用,而不是把安全问题交给用户来解决。不应该让用户来承担一些不必要盗用的损失。

  作为网络供应商,最常用也是最有效的解决方法就是在IPMAC绑定的基础上,再把端口绑定进去,即IPMACPORT三者绑定在一起,端口(PORT)指的是交换机的端口。这就需要在布线时候做好端口定时管理工作。在布线时应该把用户墙上的接线盒和交换机的端口一一对应,并做好登记工作,然后把用户交上来的MAC地址填入对应的交换机端口,进而再和IP一起绑定,达到IPMACPORT的三者绑定。这样一来,即使盗用者拥有这个IP对应的MAC地址,但是它不可能同样拥有墙上的端口,因此,从物理通道上隔离了盗用者。

 

IPMAC地址绑定的好处和作用:

IPMAC地址知识:

如果你是通过校园网或小区接入Internet,那么一定听说过MAC地址。什么是MAC地址,MAC地址在这种局域

网环境中究竟起到什么作用?下面就来介绍一下MAC地址的知识,MAC地址和IP地址的区别以及MAC地址在实际应用中所涉及到的安全问题。

一、基础知识

如今的网络是分层来实现的,就像是搭积木一样,先设计某个特定功能的模块,然后把模块拼起来组成整个网络。局域网也不例外,一般来说,在组网上我们使用的是IEEE802参考模型,从下至上分为:物理层、媒体接入控制层(MAC),逻辑链路控制层(LLC)。

标识网络中的一台计算机,一般至少有三种方法,最常用的是域名地址、IP地址和MAC地址,分别对应应用层、网络层、物理层。网络管理一般就是在网络层针 对IP地址进行管理,但由于一台计算机的IP地址可以由用户自行设定,管理起来相对困难,MAC地址一般不可更改,所以把IP地址同MAC地址组合到一起
管理就成为常见的管理方式。

二、什么是MAC地址

MAC地址就是在媒体接入层上使用的地址,也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。MAC地址与网络无关,也即无论将带有这个地址的硬件(如网卡、集线器、路由器等)接入到网络的何处,都有相同的MAC地址,它由厂商写在网卡的BIOS里。MAC地址可采用6字节(48
特)或2字节(16比特)这两种中的任意一种。但随着局域网规模越来越大,一般都采用6字节的MAC地址。这个48比特都有其规定的意义,前24位是由生 产网卡的厂商向IEEE申请的厂商地址,目前的价格是1000美元买一个地址块,后24位由厂商自行分配,这样的分配使得世界上任意一个拥有48MAC
地址的网卡都有唯一的标识。另外,2字节的MAC地址不用网卡厂商申请。

MAC地址通常表示为1216进制数,每216进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前616进制数08:00:20代表网络硬件制造商的编号,它由IEEE分配,而后316进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系
列号。每个网络制造商必须确保它所制造的每个以太网设备都具有相同的前三字节以及不同的后三个字节。这样就可保证世界上每个以太网设备都具有唯一的MAC
地址。

三、IP地址与MAC地址的区别

IP地址基于逻辑,比较灵活,不受硬件限制,也容易记忆。MAC地址在一定程度上与硬件一致,基于物理,能够标识具体。这两种地址各有好处,使用时也因条件而采取不同的地址。

四、为什么要用到MAC地址

这是由组网方式决定的,如今比较流行的接入Internet的方式(也是未来发展的方向)是把主机通过局域网组织在一起,然后再通过交换机和 Internet相连接。这样一来就出现了如何区分具体用户,防止盗用的问题。由于IP只是逻辑上标识,任何人都随意修改,因此不能用来标识用户;而 MAC地址则不然,它是固化在网卡里面的。从理论上讲,除非盗来硬件(网卡),否则是没有办法冒名顶替的(注意:其实也可以盗用,后面将介绍)。

基于MAC地址的这种特点,局域网采用了用MAC地址来标识具体用户的方法。注意:具体实现:在交换机内部通过的方式把MAC地址和IP地址一一对应,也就是所说的IPMAC绑定。

具体的通信方式:接收过程,当有发给本地局域网内一台主机的数据包时,交换机接收下来,然后把数据包中的IP地址按照中的对应关系映射成MAC地址,转发到对应的MAC地址的主机上,这样一来,即使某台主机盗用了这个IP地址,但由于他没有这个MAC地址,因此也不会收到数据包。发送过程和接收过
程类似,限于篇幅不叙述。

综上可知,只有IP而没有对应的MAC地址在这种局域网内是不能上网的,于是解决了IP盗用问题。

五、怎样获得自己的MAC地址

MAC地址固化在网卡中的BIOS中,可以通过DOS命令取得。Win9x用户可以使用winipcfg命令,Win2k/XP用户可以使用ipconfig/all命令,其中用16进制表示的12位数就是MAC地址。

六、MAC地址涉及到的安全问题

从上面的介绍可以知道,这种标识方式只是MAC地址基于的,如果有人能够更改MAC地址,就可以盗用IP免费上网了,目前网上针对小区宽带的盗用MAC地 址免费上网方式就是基于此这种思路。如果想盗用别人的IP地址,除了IP地址还要知道对应的MAC地址。举个例子,获得局域网内某台主机的MAC地址,比
如想得到局域网内名为TARGET主机的MAC地址,先用PING命令:PING TARGET,这样在我们主机上面的ARP表的缓存中就会留下目标地址和MAC映射的记录,然后通过ARP
A
命令来查询ARP表,这样就得到了指定主机的MAC地址。最后用ARP -s IP
网卡MAC地址,命令把网关的IP地址和它的MAC地址映射起来就可以了。

如果要得到其它网段内的MAC地址,那么可以用工具软件来实现,我觉得Windows优化大


师中自带的工具不错,点击系统性能优化”→“系统安全优化”→“附加工具”→“集群Ping”,可以成批的扫出MAC地址并可以保存到文件。

小知识:ARP(Address Resolution Protocol)是地址解析协议,ARP是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP
具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。ARP协议是 通过IP地址来获得MAC地址的。

ARP原理:郴 鰽要向主机B发送报文,会查询本地的ARP缓存表,找到BIP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带
主机AIP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的
IP
地址,于是向A主机发回一个ARP响应报文。其中就包含有BMAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发
送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依靠交换机来进行,而是在本机上建立一个用来记录常用主机IPMAC映射表,即ARP表。

 

七、如何修改自己的MAC地址

MAC地址是固化在网卡中的,MAC地址具有唯一性,难道没有办法更改了么?不是的,我们完全不用修改EPROM的内容,而只通过修改存储单元的内容就能达到修改MAC地址的目的。例如在Windows中可以通过注册表来修改。

开始菜单的运行中输入regedit.exe,打开注册表编辑器,展开注册表到:HKEY_LOCAL_MACHINE\System\
CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}

键,在子键下的000000010002等分支中查找DriverDesc(如果你有一块以上的网卡,就有00010002……在这里保存了有关你
的网卡的信息,其中的DriverDesc的内容就是你的网卡的信息描述,比如我的网卡就是Intel
21041 based Ethernet Controller
),在这里假设你的网卡在0000子键。

0000子键下添加一个字符串,命名为“NetworkAddress”,键值为修改后的MAC地址,要求为连续的1216进制数。然后在
“0000”
子键下的NDI\params中新建一项名为NetworkAddress的子键,在该子键下添加名为“default”的字符串,键值为修
改后的MAC地址。

NetworkAddress的子键下继续建立名为“ParamDesc”的字符串,其作用为指定NetworkAddress的描述,其值可为
“MAC Address”
。这样以后打开网络邻居的属性,双击相应的网卡就会发现有一个高级设置,其下存在MAC
Address
的选项,它就是你在注册表中加入的新项NetworkAddress,以后只要在此修改MAC地址就可以了。

关闭注册表,重新启动,你的网卡地址已改。打开网络邻居的属性,双击相应网卡项会发现有一个MAC Address的高级设置项,用于直接修改MAC地址。

当然,你还可以用工具软件来修改网卡的MAC地址,如MAC2001这款软件就可以达到我们的目的。

八、如何解决MAC地址带来的安全问题

我们可以将IP地址和MAC地址捆绑起来来解决这个问题。进入“MS-DOS方式命令提示符在命令提示符下输入命令:ARP
-s
10.88.56.72 00-10-5C-AD-72-E3
,即可把MAC地址和IP地址捆绑在一起。这样,就不会出现IP地址被盗用而不能正常使用网络的情况,可以有效保证小
区网络的安全和用户的应用。

注意:ARP命令仅对局域网的上网代理服务器有用,而且是针对静态IP地址,如果采用Modem拨号上网或是动态IP地址就不起作用。

不过,只是简单地绑定IPMAC地址是不能完全的解决IP盗用问题的。作为一个网络供应商,他们有责任为用户解决好这些问题之的后,才交给用户使用,而不是把安全问题交给用户来解决。不应该让用户来承担一些不必要盗用的损失。

作为网络供应商,最常用也是最有效的解决方法就是在IPMAC绑定的基础上,再把端口绑定进去,即IPMACPORT三者绑定在一起,端口
PORT)指的是交换机的端口。这就需要在布线时候做好端口定时管理工作。在布线时应该把用户墙上的接线盒和交换机的端口一一对应,并做好登记工作,然
后把用户交上来的MAC地址填入对应的交换机端口,进而再和IP一起绑定,达到IPMACPORT的三者绑定。这样一来,即使盗用者拥有这个IP对应
MAC地址,但是它不可能同样拥有墙上的端口,因此,从物理通道上隔离了盗用者。

我想通过上面的介绍大家对MAC地址也有些了解吧!提醒大家
应该学以致用,千万不要用来整别人啊

 

 

Mac地址修改办法

一,清清楚楚了解网卡MAC地址

  MAC地址作为网卡的唯一标识在一般情况下是不能够随意修改的,任何一个网卡都有一个MAC地址,他的长度是48位,在初始时这个地址是由网卡制造商烧录进去的,理论上MAC地址全球都是唯一的,不会出现冲突问题。

  不过由于操作系统的特殊性,我们可以通过一些参数进行修改,让操作系统识别的网卡MAC地址呈现我们希望的数值,从而实现了修改MAC地址的目的。在实际使用过程中修改MAC地址主要出现了应对病毒和一些与MAC绑定服务的突破限制上。

  那么我们通过什么指令来查询本机MAC地址呢?首先我们进入到操作系统中,通过开始”->“运行,输入CMD后回车进入命令提示窗口。接下来在命令提示窗口中输入ipconfig
/all
指令,在显示的信息中会看到如下提示。

  Physical Address. . . . . . . . .
00-08-02-6B-A3-1A后面跟的00-08-02-6B-A3-1A地址就是网卡的MAC地址。

  二,网卡参数入手修改MAC地址

  下面笔者就要依次介绍从不同方面修改网卡MAC地址的方法了,首先是从网卡参数入手修改MAC地址,这个方法是最简单最直接的办法,只需要通过鼠标点击就可轻松完成。

  第一步:进入到桌面系统,在网上邻居图标上点鼠标右键,选择属性。

  第二步:在打开的属性窗口中我们找到本地连接图标,然后在其上点鼠标右键,继续选择属性,这样将打开网卡属性窗口。

  第三步:我们在网卡属性窗口中点右上角的配置按钮,直接打开网卡具体配置信息,我们点选高级标签,在其下找到本地管理的地址一栏,在其右边选择,然后输入你要修改的网卡MAC地址信息即可,记得是12位的数字,例如111111111111。修改完毕后我们点确定按钮让更改生效。这样我们的网卡MAC地址就被成功修改为111111111111了。

  当然这种方法并不适合于所有种类的网卡,对于某些网卡特别是具备自身管理功能的网卡来说才可以使用此方法。当然判断方法也很简单那就是在网卡属性的高级标签中能够找到本地管理的地址的话就能够修改MAC地址信息,如果找不到那么就无法通过此方法实现修改MAC地址的目的了。一般来说笔记本电脑的网卡还有一些品牌机的网卡都可以通过此方法修改MAC地址。

  三,通过注册表修改网卡MAC地址信息

  如果我们的网卡不具备管理参数的功能的话,我们就只能够通过注册表来实现修改MAC地址信息的目的了。下面笔者一步步的介绍。

  第一步:首先确认网卡的设备范例ID或者是网卡描述,关于此信息我们可以从设备管理器中查看网卡名称。(如图4)

  第二步:然后通过开始->运行->输入regedit后回车进入到注册表编辑器中。

  第三步:接下来在注册表中

  HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass000010002等主键下,查找 DriverDesc,内容为你要修改的网卡的描述,如“intel(R)
Pro/100 VE network connection”
。 例如笔者在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass3下看到了DriverDesc内容为“intel(R) Pro/100 VE network connection”

  第四步:在0003下添加一个字符串,命名NetworkAddress,其值设为你要修改的MAC地址(注意地址还是连续写)。如笔者填写的111111111111

  第五步:然后到其下Ndiparams中添加一项名为NetworkAddress的主键,在该主键下添加名为default的字符串,其值是你要设的MAC地址,要连续写,如111111111111

  小提示

  实际上这只是设置在后面提到的高级属性中的初始值,实际使用的 MAC地址还是取决于在第四步中提到的NetworkAddress参数,这个参数一旦设置后,以后高级属性中的值就是NetworkAddress给出的值而非default默认值。

  第六步:在NetworkAddress的主键下继续添加名为ParamDesc的字符串,其作用为指定NetworkAddress主键的描述,其值可自己命名,如“ Network Address ”,这样在网卡的高级属性中就会出现Network
Address
选项。继续添加名为 Optional 的字符串,其值设为“1”,这样以后当你在网卡的高级属性中选择Network Address项时,右边会出现不存在选项。

  第七步:重新启动你的计算机,打开网络邻居的属性,双击相应网卡项会发现有一个Network Address的高级设置项,可以用来直接修改 MAC
地址或恢复原来的地址(选中不存在)

  通过此方法实际上是为无法通过网卡参数入手修改MAC地址方法修改MAC地址网卡添加此功能,通过这种方法添加后我们原本在网卡配置参数中没有本地管理的地址的话也可以出现,从而轻松修改网卡的MAC地址。

 

 

常用网络命令

Ping

Ping是个使用频率极高的实用程序,用于确定本地主机是否能与另一台主机交换(发送与接收)数据报。根据返回的信息,你就可以推断TCP/IP参数是否设置得正确以及运行是否正常。需要注意的是:成功地与另一台主机进行一次或两次数据报交换并不表示TCP/IP配置就是正确的,你必须执行大量的本地主机与远程主机的数据报交换,才能确信TCP/IP的正确性。

简单的说,Ping就是一个测试程序,如果Ping运行正确,你大体上就可以排除网络访问层、网卡、MODEM的输入输出线路、电缆和路由器等存在的故障,从而减小了问题的范围。但由于可以自定义所发数据报的大小及无休止的高速发送,Ping也被某些别有用心的人作为DDOS(拒绝服务攻击)的工具,前段时间Yahoo就是被黑客利用数百台可以高速接入互联网的电脑连续发送大量Ping数据报而瘫痪的。

按照缺省设置,Windows上运行的Ping命令发送4ICMP(网间控制报文协议)回送请求,每个32字节数据,如果一切正常,你应能得到4个回送应答。

Ping能够以毫秒为单位显示发送回送请求到返回回送应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络连接速度比较快。Ping还能显示TTLTime
To Live
存在时间)值,你可以通过TTL值推算一下数据包已经通过了多少个路由器:源地点TTL起始值(就是比返回TTL略大的一个2的乘方数)-返回时TTL值。例如,返回TTL值为119,那么可以推算数据报离开源地址的TTL起始值为128,而源地点到目标地点要通过9个路由器网段(128-119);如果返回TTL值为246TTL起始值就是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--如果收到4个应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISPDNS会有问题)。

ping localhost--localhost是个作系统的网络保留名,它是127.0.0.1的别名,每太计算机都应该能够将该名字转换成该地址。如果没有做到这一带内,则表示主机文件(/Windows/host)中存在问题。

ping www.yahoo.com--对这个域名执行Pin
...
地址,通常是通过DNS
服务器如果这里出现故障,则表示DNS服务器的IP地址配置不正确或DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置DNS服务器了)。顺便说一句:你也可以利用该命令实现域名对IP地址的转换功能。

如果上面所列出的所有Ping命令都能正常运行,那么你对你的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示你所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。

Ping命令的常用参数选项
ping IP -t--
连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断。
ping IP -l 2000--
指定Ping命令中的数据长度为2000字节,而不是缺省的32字节。

ping IP -n--执行特定次数的Ping命令。

 

 

Netstat

 Netstat用于显示与IPTCPUDPICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

如果你的计算机有时候接受到的数据报会导致出错数据删除或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。

netstat
的一些常用选项:

netstat -s--本选项能够按照各个协议分别显示其统计数据。如果你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。

netstat -e--本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。

netstat -r--本选项可以显示关于路由表的信息,类似于后面所讲使用route
print
命令时看到的信息。除了显示有效路由外,还显示当前有效的连接。

netstat -a--本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。

netstat -n--显示所有已建立的有效连接。

Netstat的妙用

经常上网的人一般都使用ICQ的,不知道你有没有被一些讨厌的人骚扰得不敢上线,想投诉却又不知从和下手?其实,你只要知道对方的IP,就可以向他所属的ISP投诉了。但怎样才能通过ICQ知道对方的IP呢?如果对方在设置ICQ时选择了不显示IP地址,那你是无法在信息栏中看到的。其实,你只需要通过Netstat就可以很方便的做到这一点:当他通过ICQ或其他的工具与你相连时(例如你给他发一条ICQ信息或他给你发一条信息),你立刻在DOS
Prompt
下输入netstat -nnetstat
-a
就可以看到对方上网时所用的IPISP域名了。甚至连所用Port都完全暴露了,如果你想给他一些教训,这些信息已经足够……

IPConfig

IPConfig实用程序和它的等价图形用户界面——Windows
95/98
中的WinIPCfg可用于显示当前的TCP/IP配置的设置值。这些信息一般用来检验人工配置的TCP/IP设置是否正确。但是,如果你的计算机和所在的局域网使用了动态主机配置协议(Dynamic
Host Configuration Protocol
DHCP--Windows NT下的一种把较少的IP地址分配给较多主机使用的协议,类似于拨号上网的动态IP分配),这个程序所显示的信息也许更加实用。这时,IPConfig可以让你了解你的计算机是否成功的租用到一个IP地址,如果租用到则可以了解它目前分配到的是什么地址。了解计算机当前的IP地址、子网掩码和缺省网关实际上是进行测试和故障分析的必要项目。

最常用的选项:

ipconfig--当使用IPConfig时不带任何参数选项,那么它为每个已经配置了的接口显示IP地址、子网掩码和缺省网关值

ipconfig /all--当使用all选项时,IPConfig能为DNSWINS服务器显示它已配置且所要使用的附加信息(如IP地址等),并且显示内置于本地网卡中的物理地址(MAC)。如果IP地址是从DHCP服务器租用的,IPConfig将显示DHCP服务器的IP地址和租用地址预计失效的日期(有关DHCP服务器的相关内容请详见其他有关NT服务器的书籍或询问你的网管),其输出信息见图6的下半部分。

ipconfig /releaseipconfig
/renew--
这是两个附加选项,只能在向DHCP服务器租用其IP地址的计算机上起作用。如果你输入ipconfig
/release
,那么所有接口的租用IP地址便重新交付给DHCP服务器(归还IP地址)。如果你输入ipconfig
/renew
,那么本地计算机便设法与DHCP服务器取得联系,并租用一个IP地址。请注意,大多数情况下网卡将被重新赋予和以前所赋予的相同的IP地址。

如果你使用的是Windows 95/98,那么你应该更习惯使用winipcfg而不是ipconfig,因为它是一个图形用户界面,而且所显示的信息与ipconfig相同,并且也提供发布和更新动态IP地址的选项如果你购买了Windows
NT Resource Kit
NT资源包),那么Windows
NT
也包含了一个图形替代界面,该实用程序的名字是wntipcfg,和Windows
95/98
winipcfg类似。

ARP地址转换协议)

ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址。实用arp命令,你能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容。此外,使用arp命令,也可以用人工方式输入静态的网卡物理/IP地址对,你可能会使用这种方式为缺省网关和本地服务器等常用主机进行这项作,有助于减少网络上的信息量。

按照缺省设置,ARP高速缓存中的项目是动态的,每当发送一个指定地点的数据报且高速缓存中不存在当前项目时,ARP便会自动添加该项目。一旦高速缓存的项目被输入,它们就已经开始走向失效状态。例如,在Windows
NT
网络中,如果输入项目后不进一步使用,物理/IP地址对就会在210分钟内失效。因此,如果ARP高速缓存中项目很少或根本没有时,请不要奇怪,通过另一台计算机或路由器的ping命令即可添加。所以,需要通过arp命令查看高速缓存中的内容时,请最好先ping
此台计算机(不能是本机发送ping命令)。

常用命令选项:

arp -aarp
-g--
用于查看高速缓存中的所有项目。-a-g参数的结果是一样的,多年来-g一直是UNIX平台上用来显示ARP高速缓存中所有项目的选项,而Windows用的是arp
-a
-a可被视为all,即全部的意思),但它也可以接受比较传统的-g选项。

arp -a IP--如果你有多个网卡,那么使用arp
-a
加上接口的IP地址,就可以只显示与该接口相关的ARP缓存项目。

arp -s IP
物理地址——你可以向ARP高速缓存中人工输入一个静态项目。该项目在计算机引导过程中将保持有效状态,或者在出现错误时,人工配置的物理地址将自动更新该项目。

arp -d IP--使用本命令能够人工删除一个静态项目。

看到这里,你也许已经有些累了……其实对于一般用户来说也已经足够——你可以用ipconfigping命令来查看自己的网络配置并判断是否正确、可以用netstat查看别人与你所建立的连接并找出ICQ使用者所隐藏的IP信息、可以用arp查看网卡的MAC地址——这些已足已让你丢掉菜鸟的头衔。如果你并不满足,那就硬着头皮(下面的内容可能有些枯燥)继续Follow
me......

Tracert

当数据报从你的计算机经过多个网关传送到目的地时,Tracert命令可以用来跟踪数据报使用的路由(路径)。该实用程序跟踪的路径是源计算机到目的地的一条路径,不能保证或认为数据报总遵循这个路径。如果你的配置使用DNS,那么你常常会从所产生的应答中得到城市、地址和常见通信公司的名字。Tracert是一个运行得比较慢的命令(如果你指定的目标地址比较远),每个路由器你大约需要给它15秒钟
Tracert
的使用很简单,只需要在tracert后面跟一个IP地址或URLTracert会进行相应的域名转换的。Tracert一般用来检测故障的位置,你可以用tracert
IP
在哪个环节上出了问题,虽然还是没有确定是什么问题,但它已经告诉了我们问题所在的地方,你也就可以很有把握的告诉别人——某某出了问题。

Route

大多数主机一般都是驻留在只连接一台路由器的网段上。由于只有一台路由器,因此不存在使用哪一台路由器将数据报发表到远程计算机上去的问题,该路由器的IP地址可作为该网段上所有计算机的缺省网关来输入。

但是,当网络上拥有两个或多个路由器时,你就不一定想只依赖缺省网关了。实际上你可能想让你的某些远程IP地址通过某个特定的路由器来传递,而其他的远程IP则通过另一个路由器来传递。

在这种情况下,你需要相应的路由信息,这些信息储存在路由表中,每个主机和每个路由器都配有自己独一无二的路由表。大多数路由器使用专门的路由协议来交换和动态更新路由器之间的路由表。但在有些情况下,必须人工将项目添加到路由器和主机上的路由表中。Route就是用来显示、人工添加和修改路由表项目的。

一般使用选项:

route print--本命令用于显示路由表中的当前项目,在单路由器网段上的输出结果如图12,由于用IP地址配置了网卡,因此所有的这些项目都是自动添加的。
route add--
使用本命令,可以将信路由项目添加给路由表。例如,如果要设定一个到目的网络209.98.32.33的路由,其间要经过5个路由器网段,首先要经过本地网络上的一个路由器,器IP202.96.123.5,子网掩码为255.255.255.224,那么你应该输入以下命令:

route add 209.98.32.33 mask 255.255.255.224 202.96.123.5 metric 5

route change--你可以使用本命令来修改数据的传输路由,不过,你不能使用本命令来改变数据的目的地。下面这个例子可以将数据的路由改到另一个路由器,它采用一条包含3个网段的更直的路径:
route add 209.98.32.33 mask 255.255.255.224 202.96.123.250 metric 3
route delete--
使用本命令可以从路由表中删除路由。例如:route delete 209.98.32.33

NBTStat

NBTStatTCP/IP上的NetBIOS统计数据)实用程序用于提供关于关于NetBIOS的统计数据。运用NetBIOS,你可以查看本地计算机或远程计算机上的NetBIOS名字表格。

常用选项:

nbtstat -n--显示寄存在本地的名字和服务程序
nbtstat -c--
本命令用于显示NetBIOS名字高速缓存的内容。NetBIOS名字高速缓存用于寸放与本计算机最近进行通信的其他计算机的NetBIOS名字和IP地址对。
nbtstat -r--
本命令用于清除和重新加载NetBIOS名字高速缓存。
nbtstat -a IP--
通过IP显示另一台计算机的物理地址和名字列表,你所显示的内容就像对方计算机自己运行nbtstat
-n
一样
nbtstat -s IP--
显示实用其IP地址的另一台计算机的NetBIOS连接表。

Net

Net命令有很多函数用于实用和核查计算机之间的NetBIOS连接。这里我只介绍最常用的两个:net
view
net use

net view UNC--运用此命令,你可以查看目标服务器上的共享点名字。任何局域网里的人都可以发出此命令,而且不需要提供用户ID或口令。UNC名字总是以\开头,后面跟随目标计算机的名字。例如,net
view \\lx
就是查看主机名为lx的计算机的共享点(见图15)。

net use
本地盘符目标计算机共享点——本命令用于建立或取消到达特定共享点的映像驱动器的连接(如果需要,你必须提供用户ID或口令)。例如,你输入net
use f: \lxmp3
就是将映像驱动器F:连接到\lxmp3共享点上,今后你直接访问F:就可以访问\lxmp3共享点,这和你右击我的电脑选择映射网络驱动器类似。

 

Nslookup

用于查找 DNS
名称或 IP 地址。

在命令提示符下,键入
nslookup、一个空格和 IP 地址或名(如
nslookup microsoft.com),然后按 Enter

 

抱歉!评论已关闭.