网络层协议与应用(二)

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: 网络层协议与应用(二)

2.2 ARP协议的介绍

下面来学习ARP协议的相关知识。

1.ARP概述

       在局域网中,交换机通过MAC地址进行通信,要获得目的主机的MAC地址就需要使用ARP协议将目的IP地址解析成目的MAC地址。所以,ARP(Address Resolution Protocol,地址解析协议)的基本功能是负责将一个已知的P地址解析成MAC地址,以便在交换机上通过MAC 地址进行通信。

       如图所示,假设PC1发送数据给PC2需要知道PC2的MAC地址,可是PC1是如何知道 PC2的MAC地址呢?它不可能把全世界的MAC地址全部记录下来,所以当PC1访问PC2之前就要询问PC2的P地址所对应的MAC地址是什么,这时就需要通过ARP请求广播实现。

       (1)如图所示,主机PC1想发送数据给主机PC2,它检查自己的ARP 缓存表,ARP缓存表是主机存储在内存中的一个IP地址和MAC地址一一对应的表。在Windows操作系统中可以使用arp-a命令来显示ARP缓存表。

       Windows10系统中ARP缓存表的格式如下。

       如果要查找的MAC地址不在表中,ARP会发送一个广播,从而找到目的地的MAC 地址。

       经查看PC1的ARP缓存表中没有PC2的MAC地址,这时PC1会初始化ARP请求过程(发送一

个ARP请求广播)用于发现目的地的MAC 地址。

       (2)主机PC1发送ARP请求信息,ARP请求是目的地址为MAC广播地址(FFFF-FF-FF-FF-FF)

的MAC地址广播帧,从而保证所有的设备都能够接收到该请求,在ARP请求信息中包括PC1的P

地址和 MAC 地址。

       (3)交换机收到广播地址后,发现为MAC地址广播,所以将数据帧从除了接收口之外的所有接

口转发出去。各主机接收到数据帧后,进行IP地址的比较,如果目标P地址与自己的IP地址不同,

则会丢弃这个数据包,而只有PC2这台主机会在自己的ARP表中缓存PC1的IP地址和MAC 地址的

对应关系,同时发送一个ARP应答,来告诉PC1自己的MAC地址(这个数据帧是单播)。

       (4)PC1在接收到这个回应的数据帧后,在自己的ARP表中添加PC2的IP地址和MAC 地址的对

应关系。在这个过程中,交换机已经学习到了PC1和PC2的MAC地址,之后传输数据时,PC1和PC2之间使用单播方式。

       其实,路由器像其他网络设备一样收发数据,也保存着一张将P地址映射到MAC 地址的ARP

缓存表。路由器连接不同的网络,而通常的网络只具有本网络内部的IP地址到MAC地址的映射信息,对于其他网络的信息知之甚少。在路由器上会建立与之相连接的所有网络的ARP表,显示将不同网络上的IP地址映射为MAC地址的对应情况。

2.Windows10操作系统主机ARP命令的使用

1)清除ARP缓存

       使用arp-a命令可以查看ARP缓存表,而要清除ARP缓存需要使用arp-d命令,具体操作如

下所示。

       在清除ARP缓存后,再显示ARP缓存会提示没有ARP条目。

2)ARP 绑定

       有些ARP病毒会自动向外发布ARP应答信息,而ARP应答中的IP地址是其他主机的IP地址,MAC地址是假的。当其他主机收到ARP应答后更新ARP表,最终导致网络中主机无法正常通信。

ARP绑定是将IP地址和相应主机的MAC地址进行绑定,是防止ARP攻击的有效方法,进行 ARP

绑定后,主机将不会处理收到的已绑定IP地址的ARP应答。

       使用arp-sip-addressmac-address命令对P地址和MAC地址进行绑定,该操作为临时性的,

重启系统后,绑定失效。

       在Windows10客户端主机上运行arp-s,若提示错误信息“ARP 项添加失败:拒绝访问”,如图所示,可以通过以下方法解决,

       首先运行命令netsh interface ipv4 show neighbors 查看网卡接口序号,如图所示。

        然后运行命令netsh interface ipv4 set neighbors 510.0.0.17824-e9-b3-10-e5-41绑定IP-MAC,其中的“5”是网卡接口序号,该操作可实现永久性绑定。当再次运行arp-a,发现类型已经是“静态”,如图所示。

       静态绑定的ARP条目默认将一直存在,即使系统重启也会存在,但可以使用命令“arp-d”清除;动态学习到的ARP条目有老化时间(默认为120s),在老化时间规定的时间内,没有收到任何该MAC地址主机的数据时就删除该条目。

       可以使用命令arp-d来删除所有ARP映射关系(包括静态绑定的ARP条目),也可以用arp-d[IP]来删除特定条目。

3.Cisco设备的ARP命令

1)查看ARP缓存表

       使用showarp命令显示ARP缓存表,具体操作如下所示。

       其中,Age表示ARP条目存在的时间,“-”表示始终存在。

2)清除ARP 表

       使用cleararp-cache命令清除ARP缓存表。

3) ARP 绑定

       使用arpip-addressmac-addressarpa命令绑定ARP条目,具体操作如下所示。

4.ARP 原理演示

       如图所示,这是一个对等网的环境,PC1和PC2第一次通信,因此在通信双方的ARP缓存中不会有彼此的IP-MAC地址的映射。

具体实验步骤如下。

       (1)用arp-a命令查看PC1和PC2的ARP缓存,具体操作如下所示,

       (2)在PC1上pingPC2的P地址,之后用arp-命令查看ARP缓存信息,具体操作如下所示。

       在PC1的ARP缓存中显示了PC2的IP-MAC地址的对应关系,这是由于在ping命令发送数据之前,PC1先通过ARP请求获得了PC2的MAC地址。

3. ICMP 协议

       作为网络管理员,必须知道网络设备之间的连接状况,因此就需要有一种机制来侦测或通知网络设备之间可能发生的各种各样的情况,这就是ICMP协议的作用。ICMP协议(Internet Control MessageProtocol)的全称是“Internet控制消息协议”,主要用于在IP网络中发送控制消息,提供可能发生在通信环境中的各种问题的反馈。通过这些反馈信息管理员就可以对所发生的问题做出判断,然后采取适当的措施去解决。

3.1 ICMP的主要功能介绍

       ICMP 是一个“错误侦测与回馈机制”,通过IP数据包封装,用来发送错误和控制消息,其目的是使管理员能够掌握网络的连通状况,例如,在图中,当路由器收到一个不能被送到最终目的

地的数据包时,路由器会向源主机发送一个ICMP主机不可达的消息。

       ICMP协议属于网络层协议(也有高于网络层协议的说法),因为传输ICMP信息时,要先封装网

络层的IP报头,再交给数据链路层,即ICMP报文对应IP层的数据,如图所示。

3.2 ICMP的基本使用

       在网络中。ICMP协议的使用是靠各种命令来实现的。下面以ping命令为例,介绍ping命令的使用及返回的信息。

       ping命令的基本格式如下所示。

       其中的[]中的参数为可选参数。

1.ping命令的返回信息

       在检查网络连通性时,ping命令是用得最多的。当我们ping一台主机时,本地计算机发出的就

是一个典型的ICMP数据包,用来测试两台主机是否能够顺利连通。ping命令能够检测两台设备间

的双向连通性,即数据包能够到达对端,并能够返回,如图所示。

1)连通的应答

       如图所示,从返回的信息可知,从源主机向目标主机共发送了4个32字节的包,而目标主机回应了4个32字节的包,包没有丢失,源主机和目标主机之间的连接正常,除此以外,可以根据“时间”来判断当前的联机速度,数值越低,速度越快,在最后两行还有一个总结,如果发现丢包很严重,则可能是线路不好造成的丢包,那就要检查线路或更换网线了;最后一行是“往返行程”时间的最小值,平均值、最大值,它们的单位都是ms(毫秒)。

2)不能建立连接的应答

       如果两台主机之间不能建立连接,那么ICMP也会返回相应的信息,如图所示。

        如图所示,ICMP返回信息为“无法访问目标主机”,说明两台主机之间无法建立连接,可能

是因为没有正确配置网关等参数。由于找不到去往目标主机的“路”,因此显示“无法访问目标主机”。

3)应答为未知主机名

       由于网络中可能存在的问题很多,因此返回的ICMP信息也很多。如图所示,ICMP返回信息为“找不到主机”说明DNS无法进行解析。

4)连接超时的应答

       如图所示,返回信息为“请求超时”,说明在规定的时间内没有收到返回的应答消息。

        如果目标计算机启用了防火墙的相关设置,即使网络正常可能也会返回“请求超时”信息。关于防火墙的知识将在后续课程中介绍。

       在路由器上也广泛使用ICMP协议来检查设备之间的连接及运行情况。如果没有ICMP 协议,那看到的就只是一些单纯的设备的堆叠,至于它们的工作情况则一无所知。所以ICMP协议对于管理网络设备,监控网络状态等都有着非常重要的作用。

2.ping 命令的常用参数

       在Windows操作系统中,默认情况下发送4个ping包,如果在ping命令后面加上参数“一t”,如图所示,系统将会一直不停地ping下去。

-a

       在Windows系统上,在ping命令中加入“-a”参数,可以返回对方主机的主机名,如图所示。

-l

       一般情况下,ping包的大小为32字节,有时为了检测大数据包的通过情况,可以使用参数改变ping包的大小,如图所示,ping包的大小为10000字节。

相关文章
|
9天前
|
域名解析 存储 网络协议
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
本文详细介绍了IP协议报头结构及其各字段的功能,包括版本、首部长度、服务类型、总长度、标识、片偏移、标志、生存时间(TTL)、协议、首部检验和等内容。此外,还探讨了IP地址的网段划分、特殊IP地址的应用场景,以及路由选择的大致流程。最后,文章简要介绍了DNS协议的作用及其发展历史,解释了域名解析系统的工作原理。
46 5
深入解析网络通信关键要素:IP 协议、DNS 及相关技术
|
4天前
|
网络协议 安全 物联网
探索未来网络:IPv6的演进与应用
本文深入探讨了互联网协议第6版(IPv6)的发展历程、技术特点以及在各领域的应用前景。通过对IPv4面临的问题进行分析,阐明了IPv6出现的必要性及其在地址空间扩展、安全性提升和自动配置等方面的显著优势。结合当前技术趋势和应用案例,展望了IPv6在未来网络中的发展潜力,为相关领域的研究和实践提供了参考。
|
4天前
|
并行计算 安全 网络协议
探索未来网络:量子互联网的原理与应用
本文深入探讨了量子互联网的基本概念、技术原理及其潜在应用。通过对量子纠缠、量子叠加和量子隐形传态等核心概念的解释,文章展示了量子互联网如何利用量子力学特性来实现超高速、超高安全性的通信。此外,还讨论了量子互联网在金融、医疗、国防等领域的应用前景,以及当前面临的技术挑战和未来的发展方向。
用MASM32按Time Protocol(RFC868)协议编写网络对时程序中的一些有用的函数代码
用MASM32按Time Protocol(RFC868)协议编写网络对时程序中的一些有用的函数代码
|
9天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其应用
【9月更文挑战第24天】本文将深入探讨深度学习中的一种重要模型——卷积神经网络(CNN)。我们将通过简单的代码示例,了解CNN的工作原理和应用场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息。
29 1
|
12天前
|
缓存 算法 物联网
基于AODV和leach协议的自组网络平台matlab仿真,对比吞吐量,负荷,丢包率,剩余节点个数,节点消耗能量
本系统基于MATLAB 2017b,对AODV与LEACH自组网进行了升级仿真,新增运动节点路由测试,修正丢包率统计。AODV是一种按需路由协议,结合DSDV和DSR,支持动态路由。程序包含参数设置、消息收发等功能模块,通过GUI界面配置节点数量、仿真时间和路由协议等参数,并计算网络性能指标。 该代码实现了节点能量管理、簇头选举、路由发现等功能,并统计了网络性能指标。
133 73
|
4天前
|
网络协议 物联网 5G
探索未来网络:IPv6的演进与应用
本文深入探讨了互联网协议第六版(IPv6)的发展背景、技术特性及其在现代网络中的应用。通过分析IPv4面临的地址枯竭问题,阐述了IPv6作为解决方案的重要性和紧迫性。文章详细介绍了IPv6相较于IPv4的改进之处,如更大的地址空间、简化的包头格式、增强的组播支持等,并探讨了IPv6在实际部署中遇到的挑战及应对策略。通过对IPv6过渡技术和双栈技术的讨论,揭示了其在促进下一代互联网发展中的关键作用。此外,文章还展望了IPv6在未来网络安全、物联网整合以及新兴技术中的应用前景,强调了掌握IPv6技术对于把握未来互联网发展趋势的重要性。
|
1天前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【9月更文挑战第31天】本文旨在通过浅显易懂的语言和直观的比喻,为初学者揭开深度学习中卷积神经网络(CNN)的神秘面纱。我们将从CNN的基本原理出发,逐步深入到其在图像识别领域的实际应用,并通过一个简单的代码示例,展示如何利用CNN进行图像分类。无论你是编程新手还是深度学习的初学者,这篇文章都将为你打开一扇通往人工智能世界的大门。
|
3天前
|
SQL 安全 算法
网络安全的盾牌与剑:漏洞防御与加密技术的实战应用
【9月更文挑战第30天】在数字时代的浪潮中,网络安全成为守护信息资产的关键防线。本文深入浅出地探讨了网络安全中的两大核心议题——安全漏洞与加密技术,并辅以实例和代码演示,旨在提升公众的安全意识和技术防护能力。
|
3天前
|
机器学习/深度学习 算法 搜索推荐
图神经网络综述:模型与应用
图神经网络综述:模型与应用
下一篇
无影云桌面