网络嗅探器的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘要:随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。

Internet 的安全已经成为亟待解决的问题。

多数黑客入侵成功并植入后门后的第一件事就是选择一个合适当前网络的嗅探器,以获得更多的受侵者的信息。

嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。

网络嗅探器就是利用计算机的网络接口截获其他计算机的数据报文的一种工具,而且它与一般的键盘捕获程序不同。

键盘捕获
程序捕获在终端上输入的键值,而嗅探器捕获的则是真实的网络报文.
关键词: Internet;网络嗅探器;网络数据包;网络报文;
目录
1 引言 (1)
1.1 开发背景 (1)
1.2 开发意义 (1)
2 系统分析 (2)
2.1 设计概述 (2)
2.1.1 实现目标 (2)
2.1.2 开发环境 (2)
2.2 开发相关技术简介 (2)
2.2.1 C# 语言简介 (2)
2.2.2 嗅探技术简介 (3)
2.2.3 TCP/IP 协议 (4)
2.2.4 数据包简介 (6)
2.3 可行性分析 (7)
3 详细设计 (8)
3.1 设计原理 (8)
3.2 功能说明 (11)
3.3 系统实施 (11)
3.4 系统测试 (13)
4 论文总结 (16)
5 参考文献 (17)
6 致谢 (17)
第一章引言
1.1开发背景
随着各种新的网络技术的不断出现、应用和发展,计算机网络的应用越来越广泛,其作用也越来越重要。

但是由于计算机系统中软硬件的脆弱性和计算机网
络的脆弱性以及地理分布的位置、自然环境、自然破坏以及人为因素的影响,不仅增加了信息存储、处理的风险,也给信息传送带来了新的问题。

计算机网络安全问题越来越严重,网络破坏所造成的损失越来越大。

Internet的安全已经成为亟待解决的问题。

多数黑客入侵成功并植入后门后的第一件事就是选择一个合
适当前网络的嗅探器,以获得更多的受侵者的信息。

嗅探器是一种常用的收集有用数据的方法,可以作为分析网络数据包的设备。

网络嗅探器就是利用计算机的
网络接口截获其他计算机的数据报文的一种工具,而且它与一般的键盘捕获程序不同。

键盘捕获程序捕获在终端上输入的键值,而嗅探器捕获的则是真实的网络报文 . 如果把网络嗅探器放置于网络节点处,对网络中的数据帧进行捕获的一种被
动监听手段,是一种常用的收集有用数据的方法,可以分析各种信息包并描述出网络的结构和使用的机器,由于它接收任何一个在同一网段上传输的数据包,所以也就存在着捕获密码、各种信息、秘密文档等一些没有加密的信息的可能性。

这成为黑客们常用的扩大战果的方法,用来夺取其他主机的控制权。

当然嗅探器的正当用处主要是网络管理人员分析网络的流量,以便找出所关心的网络中潜在的问题。

例如,假设网络的某一段运行得不是很好,报文的发送比较慢,而我们
又不知道问题出在什么地方,此时就可以用嗅探器截获网络中的数据包,分析问题的所在。

[1]
1.2开发意义
本次毕业设计是基于 C#的网络嗅探器的设计与实现,由于本人能力上的限
度,只是对抓取到的本机在网络中的通信数据 , 比如说协议类型,源、目的地址和
端口、数据包的大小等加以分析,而无法做到像 Sniffer 或者影音神探那种成熟的嗅探器所拥有的强大功能。

作为从事网络技术方面的人员来说,要想有效地利用它、防范它,就得深入地学习、分析网络嗅探技术。

最为重要的是,对于网络嗅探器的设计与实现,使我对网络通信,数据传输和网络信息安全等有了切身的体会与融入,同时也是对大学四年的学以致用,不断提高自我的一种有效途径。

第二章系统分析
2.1设计概述
基于 C#的网络嗅探器的设计与实现,首先就是要设定好实现的目标,确定
开发的环境。

有个合理的设计目标使得在设计过程中不茫然,思路更清楚。

而一个好的开发环境对提高开发的效率同样起着很重要的作用。

2.1.1实现目标
实现一个简单的网络嗅探器。

具备以下功能:
1、实现一个简洁的易操作的计算机操作用户界面
2、实现抓取数据包的功能
3、实现暂停抓取数据包的功能
4、实现清空列表的功能
5、实现显示数据包详细信息的显示功能
2.1.2开发环境
Microsoft Visual Studio 2005,Windows XP
2.2开发相关技术简介
本节将对本设计中用到的一些主要技术进行简单的介绍。

2.2.1 C#语言简介
C#是微软于 2000 年提出的一种源于 C++、类似于 Java 的面向对象编程语言,适合于分布式环境中的组件开发。

C# 是专门为 .NET 设计的,也是 .NET 编程的首选语言。

C#的产生是因为微软在 .NET 上需要一种类 Java 的语言,而 Java 本身却不能胜任这一需求。

C#太像 C++了,以至于它很难给人带来体验新事物时的那种兴奋。

不过,绝大部分的 C++开发者将会因为 C#保留了 C++中大部分其喜欢的、强大的、令人激动的功能而选择使用它。

C#通过避免一般的编程错误和自动资源管理,使得 C#的稳定性得到了极大的增强。

另外, C#语言功能强大且可以实现对象之间的转换,轻松实现各种对象转换成字符串。

鉴于以上种种,我选用
C#作为我本次设计的开发语言。

[2]
2.2.2嗅探技术简介
数据在网络上是以很小的称为帧(Frame)的单位传输的,帧由几部分组成,不同的部分执行不同的功能。

帧通过特定的称为网络驱动程序的软件进行成型,
然后通过网卡发送到网线上,通过网线到达它们的目的机器,在目的机器的一端执行相反的过程。

接收端机器的以太网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。

就是在这个传输和接收的过程中,存在安全方面的问题。

每一个在局域网( LAN)上的工作站都有其硬件地址,这些地址惟一地表示了网络上的机器(这一点与 Internet 地址系统比较相似)。

当用户发送一个数据包时,这些数据包就会发送到 LAN上所有可用的机器。

[3]
图示:一个简单的局域网组成
在一般情况下,网络上所有的机器都可以“听”到通过的流量,但对不属于
自己的数据包则不予响应(换句话说,工作站 A 不会捕获属于工作站 B 的数据,而是简单地忽略这些数据)。

嗅探器工作在网络的底层,在网络上监听数据包来获取敏感信息。

从原理上来说,在一个实际的系统中,数据的收发是由网卡来完成的,网卡接收到传输来的数据,网卡内的单片程序接收数据帧的目的 MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断该不该接收,认为该接收就接收后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了,计算机根本就不知道。

对于网卡来说一般有四种接收模式:
a)广播方式:该模式下的网卡能够接收网络中的广播信息。

b)组播方式:设置在该模式下的网卡能够接收组播数据。

c)直接方式:在这种模式下,只有目的网卡才能接收该数据。

d)混杂模式:在这种模式下的网卡能够接收一切通过它的数据,而不管该数据是否是传给它的。

首先,在以太网中是基于广播方式传送数据的,也就是说,所有的物理信号都要经过我的机器。

其次,如果某个工作站的网络接口处于混杂模式 , 那么它就可
以捕获网络上所有的数据包和帧。

Sniffor 程序是一种利用以太网的特性把网络适配卡(NIC,一般为以太网卡)置为混杂模式状态的工具,一旦网卡设置为这种模式,它就能接收传输在网络上的每一个信息包 , 而不管该数据是否传给它的。

[4]
2.2.3 TCP/IP协议
因特网是一个发展非常活跃的领域。

在1968 年,它的早期研究成果开始崭露头角,后来便出现了它的前身 ARPANET,ARPANET为表现因特网特性的试验
平台做出了重大贡献, 1973 年,因特网正式面世。

从那时起,关于因特网的研究
和努力就一直没有间断过,其中大部分努力都是围绕着被称为网络的一个新型赛博空间所需要的标准而进行的。

因特网协议及其标准与世界上任何其他事物的结构不同,它总是由一些机构或专业人士中的个人首先提出的。

为了了解新的协议
是如何出现并最终成为标准的,应该首先熟悉缩写词RFC,即Request for Comment。

它的发展变迁过程要追溯到 1 9 6 9 年,起因是由于因特网的成员过于
分散。

正如这个词的字面意思所示,这些文档是一些实用文档、方法、测试结果、
模型甚至完整的规范。

因特网社会的成员可以阅读,也可以把意见反馈给RFC,
如果这些想法(或基本原理)被社会接受,就有可能成为标准。

在因特网
社会中关于R F C 的用法( M O)以及如何操作并没有太大的变化。

1969 年,当时只有一个网络,整个社会不超过一百位专业人员;随着因特网的飞速发展,因特网不但需要一个机构来集中和协调这些成果,并且需要制定一个最低要求的准则,至少能在成员之间进行有效的通信并取得相互了解。

1974 年前后,摆在ARPANET面前的形势很清晰了,通信联络需要进一步扩展,它需要的不仅是要能
容纳成倍增加的通信媒体,而且要了解早已存在于群组中的许多领域的意义。

这个领域需要一个管理者。

大约在1977 年,随着作为因特网实验备忘录(IEN)一部分的许多实验的进行,著名的T C P / I P协议获得了发展的动力。

没过多久(1986 年),为了 RFC讨论的需要,需要建立一个由工程技术人员组成的、对标准的发展负责的工作机构,以便有效地引导因特网的发展成长,这样,因特网工
程工作组
(INENG)成立了。

今天,因特网工程部(IETF)和因特网研究部(TRTF)成为对因特网近期工程需求和远期研究目标负责、并担负重任的两个工作组。

这两个组织曾直接隶属于国际网络执行委员会(IAB),现在属于因特网协会(1992 年成立),这个协会最终也是为因特网技术的发展负责的。

但是,如果你是一个因特网上的常客,可能对缩略词IAB 并不满意,的确,在 IAB 的逐步发展并走向成熟过程中, IAB 将它的名字改为“ Internet Architecture Board ”(由“ Activities ”改为“ Architecture ”),因为 I A B
在因特网发展的运作方面并没起多大作用。

谈到 RFC标准,那么首先考虑到的应
该是 RFC733。

如果有关于标准的想法或对因特网有益的新技术,可以把它作为RFC提交给因特网社会。

作为 IAB 成员之一的 RFC编辑,决定着 RFC的发表,对任一正式文档, RFC都有一种确定的风格和格式。

[5]
现今因特网上用到的主要协议有:用户数据报协议( UDP),次要文件传输协议(TFTP),网际协议( IP ),因特网控制报文协议 (ICMP),传输控制协议(TCP),地址转换协议 (ARP),虚终端协议 (Telnet) ,反向地址转换协议 (RARP),外部网关协议 (EGP)版本 2,引导协议 (BootP) ,路由信息协议 (RIP) ,距离向量多播路由协议 (DVMRP)。

下面对其中的 4 个协议做一些简单的介绍:
① IP : 网际协议 IP 是 TCP/IP 的心脏,也是网络层中最重要的协议。

IP 层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层 ---TCP 或 UDP层;相反, IP 层也把从 TCP或 UDP层接收来的
数据包传送到更低层。

IP 数据包是不可靠的,因为 IP 并没有做任何事情来确认数
据包是按顺序发送的或者没有被破坏。

IP 数据包中含有发送它的主机的地址
(源地址)和接收它的主机的地址(目的地址)。

高层的 TCP和 UDP服务在接收数据包时,通常假设包中的源地址是有效的。

也可以这样说, IP 地址形成了许多服务的认证基础,这些服务相信数据包是从
一个有效的主机发送来的。

IP 确认包含一个选项,叫作 IP source routing ,可以用来指定一条源地址和目的地址之间的直接路径。

对于一些TCP和UDP的服务来说,使用了该选项的 IP 包好象是从路径上的最后一个系统传递过来的,而不
是来自于它的真实地点。

这个选项是为了测试而存在的,说明了它可以被用来欺
骗系统来进行平常是被禁止的连接。

那么,许多依靠IP 源地址做确认的服务将
产生问题并且会被非法入侵。

②TCP: 如果IP 数据包中有已经封好的TCP数据包,那么IP 将把它们向‘上’传送到 TCP层。

TCP将包排序并进行错误检查,同时实现虚电路间的连接。

TCP
数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可
以被重传。

TCP将它的信息送到更高层的应用程序,例如 Telnet 的服务程序和客户程序。

应用程序轮流将信息送回 TCP层, TCP层便将它们向下传送到 IP 层,设备驱动程序和物理介质,最后到接收方。

面向连接的服务(例如Telnet 、 FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。

DNS在某些情况下使用TCP(发送和接收域名数据库),但使用 UDP传送有关单个主机的信息。

③ UDP:UDP与 TCP位于同一层,但对于数据包的顺序错误或重发。

因此,
UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询---应答的服务,例如 NFS。

相对于 FTP或 Telnet ,这些服务需要交换的信息量较小。

使用 UDP的服务包括 NTP(网落时间协议)和 DNS(DNS也使用 TCP)。

欺骗 UDP包比欺骗 TCP包更容易,因为 UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与 UDP相关的服务面临着更大的危险。

④ ICMP: ICMP与 IP 位于同一层,它被用来传送 IP 的的控制信息。

它主要是用来提供有关通向目的地址的路径信息。

ICMP 的‘ Redirect ’信息通知主机通向其他系统的更准确的路径,而‘ Unreachable ’信息则指出路径有问题。

另外,如果路径不可用了, ICMP可以使 TCP连接‘体面地’终止。

PING是最常用的基于ICMP的服务。

[6]
2.2.4数据包简介
“包” (Packet) 是TCP/IP 协议通信传输中的数据单位,一般也称“数据包”。

有人说,局域网中传输的不是“帧”(Frame) 吗?没错,但是 TCP/IP 协议是工作在 OSI 模型第三层 ( 网络层 ) 、第四层 ( 传输层 ) 上的,而帧是工作在第二层( 数据链路层 ) 。

上一层的内容由下一层的内容来传输,所以在局域网中,“包”是包含在“帧”里的。

OSI(Open System Interconnection,开放系统互联)模型是由国际标准化组织 (ISO) 定义的标准,它定义了一种分层体系结构,在其中的
每一层定义了针对不同通信级别的协议。

OSI 模型有 5 层, 1 到 5 层分别是:物理层、数据链路层、网络层、传输层、应用层。

OSI 模型在逻辑上可分为两个部分:低层的 1 至 3 层关注的是原始数据的传输;高层的 4 至 5 层关注的是网络下的应用程序。

我们可以用一个形象一些的例子对数据包的概念加以说明:我们在邮局邮寄产品时,虽然产品本身带有自己的包装盒,但是在邮寄的时候只用产品原包装盒来包装显然是不行的。

必须把内装产品的包装盒放到一个邮局指定的专用纸箱里,这样才能够邮寄。

这里,产品包装盒相当于数据包,里面放着的产品相当于可用的数据,而专用纸箱就相当于帧,且一个帧中只有一个数据包。

“包”听起来非常抽象,那么是不是不可见的呢?通过一定技术手段,是可以感知到数据包的存在的。

比如在 Windows2000 Server 中,把鼠标移动到任务栏右下角的网卡图标上 ( 网卡需要接好双绞线、连入网络 ) ,就可以看到“发送:××包,收到:××包”的提示。

(详见下图)
通过数据包捕获软件,也可以将数据包捕获并加以分析。

就是用网络嗅探器捕获数据包,可以查看捕获到的数据包的 MAC地址、 IP 地址、协议类型端口号等细节。

通过分析这些数据,网管员就可以知道网络中到底有什么样的数据包在活动了。

数据包的结构非常复杂,不是三言两语能够说清的,在这里主要了解一下它的关键构成就可以了,这对于理解 TCP/IP 协议的通信原理是非常重要的。

数据包主要由“目的 IP 地址”、“源 IP 地址”、“净载数据”等部分构成。

数据包的结构与我们平常写信非常类似,目的 IP 地址是说明这个数据包是要发给谁的,相当于收信人地址;源 IP 地址是说明这个数据包是发自哪里的,相当于发
信人地址;而净载数据相当于信件的内容。

正是因为数据包具有这样的结构,安装了 TCP/IP 协议的计算机之间才能相互通信。

我们在使用基于 TCP/IP 协议的网络时,网络中其实传递的就是数据包。

比如说当你上网打开网页,这个简单
的动作,就是你先发送数据包给网站,它接收到了之后,根据你发送的数据包
的 IP 地址,返回给你网页的数据包,也就是说,网页的浏览,实际上就是数
据包的交换。

理解数据包,对于网络管理的网络安全具有至关重要的意义。

2.3可行性分析
可行性研究 (Feasibility Study) 是通过对项目的主要内容和配套条件,如市场
需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系
[7] 统分析方法。

可行性研究应具有预见性、公正性、可靠性、科学性的特点。

当然这次论文的可行性研究并没有上述的如此意义重大,只是理清整个系统分析和设计的大致过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。

它的目的不是解决问题,而是确定问题是否值得去解决。

当然在现
7
阶段这样的信息安全背景下,网络嗅探器的研究与使用的价值是毋庸置疑的。

不仅可以有效地诊断网络状况,更可以为信息安全战打攻坚战。

第三章详细设计
3.1设计原理
嗅探器是如何工作的?如何窃听网络上的信息?网络的一个特点就是数据
总是在流动中,从一处到另外一处,而互联网是由错综复杂的各种网络交汇而成的,也就是说 : 当你的数据从网络的一台电脑到另一台电脑的时候,通常会经过
大量不同的网络设备, ( 我们用 tracert命令就可以看到这种路径是如何进行
的 ) 。

如果传输过程中,有人看到了传输中的数据,那么问题就出现了——这就
好比我们用手机给人发了一条短信,结果除了发送对象以外,还发到别人的手机
上了一样,这样说或许还不是很可怕,要是传送的数据是企业的机密文件呢,或
[8]
是用户的信用卡帐号和密码呢?
嗅探侦听主要有两种途径,一种是将侦听工具软件放到网络连接的设备或者放到可以控制网络连接设备的电脑上, ( 比如网关服务器,路由器 ) ——当然要实现
这样的效果可能也需要通过其他黑客技术来实现 : 比如通过木马方式将嗅探器发给
某个网络管理员,使其不自觉的为攻击者进行了安装。

另外一种是针对不安全的
局域网 ( 采用交换 HUB实现 ) ,放到个人电脑上就可以实现对整个局域网的侦听,
这里的原理是这样的 : 共享 HUB获得一个子网内需要接收的数据时,并不是直接发
送到指定主机,而是通过广播方式发送到每个电脑,对于处于接受者地位的电脑
就会处理该数据,而其他非接受者的电脑就会过滤这些数据,这些操作与电脑操
作者无关,是系统自动完成的,但是电脑操作者如果有意的话,就可以将那些原
本不属于他的数据打开,这就是安全隐患!
以太网的数据传输是基于“共享”原理的:所有的同一本地网范围内的计算
机共同接收到相同的数据包。

这意味着计算机直接的通讯都是透明可见的。

正是
因为这样的原因,以太网卡都构造了硬件的“过滤器”。

这个过滤器将忽略掉一
切和自己无关的网络信息。

事实上是忽略掉了与自身MAC地址不符合的信息。

嗅探程序正是利用了这个特点,它主动的关闭了这个过滤器,也就是前面提
到的设置网卡“混杂模式”。

因此,嗅探程序就能够接收到整个以太网内的网络
数据了信息了。

[9]
什么是以太网的 MAC地址( MAC:Media Access Control),由于大量的计算机在以太网内“共享“数据流,所以必须有一个统一的办法用来区分传递给不
同计算机的数据流的。

这种问题不会发生在拨号用户身上,因为计算机会假定一切数据都由你发送给 MODEM,然后通过电话线传送出去。

可是,当你发送数据到以太网上的时候,你必须弄清楚,哪台计算机是你发送数据的对象。

的确,现在有大量的双向通讯程序出现了,看上去,他们好像只会在两台机器内交换信息,可是你要明白,以太网的信息是共享的,其他用户,其实一样接收到了你发送的
[10]
数据,只不过是被过滤器给忽略掉了。

举例一下,很多的小型局域网计算机用户都为实现文件和打印共享,安装了“ NetBEUI”因为它不是基于 TCP/IP 协议的,所以来自于网络的黑客一样无法得知他们的设备情况。

基于 Raw协议,传输和接收都在以太网里起着支配作用。

你不能直接发送一个 Raw数据给以太网,你必须先做一些事情,让以太网能够理解你的意思。

这有点类似于发短信的方法,你不可能直接把一条短信直接发送出
去,你还要输入对方的手机号码才可以发送,同样的网络上的传输数据也是一个道理。

[11]
以下是一个帮助我们理解数据传送的简单图示:
_________
/.........\
/..Internet.\
+-----+ +----+.............+-----+
用户 A -----路由.............用户 B
+-----+ ^ +----+.............+-----+
\.........../
\---------/
+------+
嗅探器
+------+
用户 A IP地址: 192.168.1.10
用户 B IP地址: 192.168.1.1
现在知道用户 A 要于用户 B 进行计算机通讯,用户 A 需要为 192.168.1.10 到用户 B 192.168.1.1的通讯建立一个IP 包。

这个 IP 包在网络上传输,它必
须能够穿透路由器。

因此,用户 A 必须首先提交这个包给路由器。

由每个路由器考查目地 IP 地址然后决定传送路径。

用户 A 所知道的只是本地与路由连接和用户 B的 IP 地址。

用户 A 并不清楚网络的结构情况和路由走向。

用户A 必须告诉路由器准备发送数据包的情况,以太网数据传输结构大概是这样的:
+--+--+--+--+--+--+
目标 MAC
+--+--+--+--+--+--+
源 MAC
+--+--+--+--+--+--+
0x0800
+--+--+-----------+
IP包
+--+--+--+--+-----+
CRC校验
+--+--+--+--+
理解一下这个结构,用户 A 的计算机建立了一个数据包假设它由 100 个字节的长度(假设一下, 20 个字节是 IP 信息, 20 个字节是 TCP信息,还有 60 个字节为传送的数据)。

现在把这个数据包发送给以太网 , 放 14 个字节在目的 MAC
地址之前,源 MAC地址还要置一个 0x0800 的标记,他指示出了 TCP/IP 栈后的数据结构。

同时,也附加了 4 个字节用于做 CRC校验( CRC校验用来检查传输数据的正确性)。

现在发送数据到网络,所有在局域网内的计算机通过适配器都能够发现这个
数据包,其中也包括路由适配器,嗅探器和其他一些机器。

通常,适配器都具有
一块芯片用来做结构比较的,检查结构中的目地 MAC地址和自己的 MAC地址,如果不相同,则适配器会丢弃这个结构。

这个操作会由硬件来完成,所以,对于计
算机内的程序来说,整个过程时毫无察觉的。

当路由器的以太网适配器发现这个结构后,它会读取网络信息,并且去掉前14 个字节,跟踪 4 个字节。

查找 0x0800 标记,然后对这个结构进行处理(它将根据网络状况推测出下一个最快路由节点,从而最快传送数据到预定的目标地
址)。

设想,只有路由机器能够检查这个结构,并且所有其他的机器都忽略这个结构,则嗅探器无论如何也无法检测到这个结构的。

MAC地址的格式是什么?以太网卡的MAC地址是一组 48 比特的数字,这48 比特分为两个部分组成,前面的 24 比特用于表示以太网卡的厂商ID,后面的 24 比特是一组序列号,是由厂商进行分派的,就像我们身份证上的号码一样具有全
球唯一性。

这样可以担保没有任何两块网卡的 MAC地址是相同的(当然可以通过
特殊的方法实现)。

如果出现相同的地址,将发生问题,所有这一点是非常重要
的。

这 24 比特被称之为 OUI( Organizationally Unique Identifier)。

相关文档
最新文档