IP地址和物理地址的区别,为什么要用这两种地址
MAC地址也叫物理地址、硬件地址或链路地址,由网络设备制造商生产时写在硬件内部。IP地址与MAC地址在计算机里都是以二进制表示的,IP地址是32位的,而MAC地址则是48位的。MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前6位16进制数08:00:20代表网络硬件制造商的编号,它由IEEE(电气与电子工程师协会)分配,而后3位16进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系列号。只要你不去更改自己的MAC地址,那么你的MAC地址在世界是惟一 IP地址是英文Internet Protocol 的缩写,意思是“网络之间互连的协议”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。
**************************************************8
MAC地址和IP地址的区别
介绍一下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位由厂商自行分配,这样的分配使得世界上任意一个拥有48位MAC 地址的网卡都有唯一的标识。另外,2字节的MAC地址不用网卡厂商申请。 MAC地址通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20:0A:8C:6D就是一个MAC地址,其中前6位16进制数08:00:20代表网络硬件制造商的编号,它由IEEE分配,而后3位16进制数0A:8C:6D代表该制造商所制造的某个网络产品(如网卡)的系列号。每个网络制造商必须确保它所制造的每个以太网设备都具有相同的前三字节以及不同的后三个字节。这样就可保证世界上每个以太网设备都具有唯一的MAC 地址。 三、IP地址与MAC地址的区别 IP地址基于逻辑,比较灵活,不受硬件限制,也容易记忆。MAC地址在一定程度上与硬件一致,基于物理,能够标识具体。这两种地址各有好处,使用时也因条件而采取不同的地址。 四、为什么要用到MAC地址 这是由组网方式决定的,如今比较流行的接入Internet的方式(也是未来发展的方向)是把主机通过局域网组织在一起,然后再通过交换机和 Internet相连接。这样一来就出现了如何区分具体用户,防止盗用的问题。由于IP只是逻辑上标识,任何人都随意修改,因此不能用来标识用户;而 MAC地址则不然,它是固化在网卡里面的。从理论上讲,除非盗来硬件(网卡),否则是没有办法冒名顶替的(注意:其实也可以盗用,后面将介绍)。 基于MAC地址的这种特点,局域网采用了用MAC地址来标识具体用户的方法。注意:具体实现:在交换机内部通过“表”的方式把MAC地址和IP地址一一对应,也就是所说的IP、MAC绑定。 具体的通信方式:接收过程,当有发给本地局域网内一台主机的数据包时,交换机接收下来,然后把数据包中的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缓存表,找到B的IP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个 ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依靠交换机来进行,而是在本机上建立一个用来记录常用主机IP-MAC映射表,即ARP表。 七、如何修改自己的MAC地址 MAC地址是固化在网卡中的,MAC地址具有唯一性,难道没有办法更改了么?不是的,我们完全不用修改EPROM的内容,而只通过修改存储单元的内容就能达到修改MAC地址的目的。例如在Windows中可以通过注册表来修改。 在“开始”菜单的“运行”中输入regedit.exe,打开注册表编辑器,展开注册表到:HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}子键,在子键下的0000,0001,0002等分支中查找DriverDesc(如果你有一块以上的网卡,就有0001,0002……在这里保存了有关你的网卡的信息,其中的DriverDesc的内容就是你的网卡的信息描述,比如我的网卡就是Intel 21041 based Ethernet Controller),在这里假设你的网卡在0000子键。 在0000子键下添加一个字符串,命名为“NetworkAddress”,键值为修改后的MAC地址,要求为连续的12个16进制数。然后在 “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命令仅对局域网的上网代理服务器(server网络资源)有用,而且是针对静态IP地址,如果采用Modem拨号上网或是动态IP地址就不起作用。 不过,只是简单地绑定IP和MAC地址是不能完全的解决IP盗用问题的。作为一个网络供应商,他们有责任为用户解决好这些问题之的后,才交给用户使用,而不是把安全问题交给用户来解决。不应该让用户来承担一些不必要盗用的损失。 作为网络供应商,最常用也是最有效的解决方法就是在IP、MAC绑定的基础上,再把端口绑定进去,即IP-MAC-PORT三者绑定在一起,端口(PORT)指的是交换机的端口。这就需要在布线时候做好端口定时管理工作。在布线时应该把用户墙上的接线盒和交换机的端口一一对应,并做好登记工作,然后把用户交上来的MAC地址填入对应的交换机端口,进而再和IP一起绑定,达到IP-MAC-PORT的三者绑定。这样一来,即使盗用者拥有这个IP对应的MAC地址,但是它不可能同样拥有墙上的端口,因此,从物理通道上隔离了盗用者。
IP地址和物理地址的区别,为什么要用这两种地址相关推荐
- linux内存管理---虚拟地址、逻辑地址、线性地址、物理地址的区别(一)
分析linux内存管理机制,离不了上述几个概念,在介绍上述几个概念之前,先从<深入理解linux内核>这本书中摘抄几段关于上述名词的解释: 一.<深入理解linux内核>的解释 ...
- DHCP两种地址池与中继的理解与应用【eNSP实现】
1. 基于接口地址池的DHCP 随着网络规模的扩大和网络复杂程度的提高,计算机数量超过可分配的IP地址情况将会经常出现,DHCP[Dynamic Host Configuration Protocol ...
- epoll nio区别_【总结】两种 NIO 实现:Selector 与 Epoll
我想用这个话题小结下最近这一阶段的各种测试和开发.其实文章的内容主要还是想总结一下 NIO Socket ,以及两种不同操作系统实现 NIO 的方式, selector 和 epoll . 问题应该从 ...
- 连接MySQL和连接文件夹区别_JDBC与JNDI这两种连接方式有什么区别?
配置 JNDI绑定 此处绑定的数据源是以 DBCP 为实现.首先必须将数据库驱动(这里用了MYSQL数据库)和DBCP所需要的 Jar 包复制到 Jetty 根目录的 lib 目录下.DBCP主要需要 ...
- get post请求区别_网页常见的两种请求方式Get和Post
除了获取网页还有哪些网络请求的知识需要我们掌握呢? 我们请求网页,平时看到的是浏览器访问,实际在实现中会有不同的请求方式的,那么请求网页的方式最常用到的是Get和Post. Get和Post的区别 当 ...
- Xilinx 的FFT IP核使用方法(配置为FFT 、IFFT两种模式)
IP配置 Configuration 配置通道数和FFT长度 时钟频率以及数据吞吐速率 FFT的结构选择 Srteaming , 可以对数据进行流水处理 Radix-4 , 基4的迭代算法,使用资源比 ...
- php json 数组 区别,PHP实战:JSON两种结构之对象和数组的理解
<PHP实战:JSON两种结构之对象和数组的理解>要点: 本文介绍了PHP实战:JSON两种结构之对象和数组的理解,希望对您有用.如果有疑问,可以联系我们. JSON简介 PHP实战JSO ...
- python调用hive与java调用区别_Python操作Hive的两种方法总结
方法一:使用PyHive库pip install sasl pip install thrift pip install thrift-sasl pip install PyHive Python脚本 ...
- android两种广播注册区别,Android 注册广播的两种方式对比
Android 注册广播的两种方式对比 1.常驻型广播 常驻型广播,当你的应用程序关闭了,如果有广播信息来,你写的广播接收器同样的能接受到, 他的注册方式就是在你的应用程序中的AndroidManif ...
最新文章
- Plugin Error
- Hadoop 2.x的DistributedCache无法工作的问题
- Netty入门之Netty的基本介绍和IO模型
- 访问域名不走dns服务问题排查,报错could not resolve host
- 阿里资深技术工程师: 程序员怎样快速成长?
- 牛客 - 动物森友会(二分+最大流)
- bcd编辑工具Linux,​快启动pe系统工具之BCD编辑工具各个功能详细介
- .Net开发环境配置[OS/IIS/VS...]
- 08_drain a node on the swarm
- [Windows Phone 7]开发分享图片的插件(2)
- 用python实现的的手写数字识别器
- [转贴]在C#中应用哈希表(Hashtable)
- 全球10大开放源代码项目
- SMbus和I2C异同, PMBUS
- 完全掌握加密解密实战超级手册
- 单片机入门 - 模电、数电与单片机
- 正则匹配emjio表情
- 【Python+OpenCV+PyTorch】基于Python的连连看自动操作器
- Eclipse中将package,folder,source folder相互转换
- c语言程序书写时,C语言程序书写规范
热门文章
- StrictMode ——安卓严苛模式
- win10系统的计算机C盘在哪,Win10系统C盘哪些文件可以删除,教您
- (Android学习)android:exported 属性
- oracle中update子查询,UPDATE语句-简单形式-子查询形式
- 有你的地方就是年——请查收你的春节烟花(零点定时跳转)
- 新年必备烟花模拟器-附源码
- **TP-LINK三层交换的配置,多网段互相访问并上网 型号:交换机TPLINK(TL-SG5218) 路由器TPLINK(TL-ER6220G)**
- tensorflow || 滑动平均的理解--tf.train.ExponentialMovingAverage
- 字符的表示方法:点阵字库和矢量字库
- HTML(二)列表与表格的使用