arp 基本功能
地址解析协议(英语:Address Resolution Protocol,缩写:ARP)是一个通过解析网络层地址来找寻数据链路层地址的网络传输协议,它在IPv4中极其重要。ARP最初在1982年的RFC 826(征求意见稿)[1]中提出并纳入互联网标准STD 37。ARP也可能指是在多数操作系统中管理其相关地址的一个进程。
ARP是通过网络地址来定位MAC地址。 ARP已经在很多网路层和数据链接层之间得以实现,包括IPv4、Chaosnet、DECnet和Xerox PARC Universal Packet(PUP)使用IEEE 802标准, 光纤分布式数据接口, X.25,帧中继和异步传输模式(ATM),IEEE 802.3和IEEE 802.11标准上IPv4占了多数流量。
在IPv6中邻居发现协议(NDP)用于代替地址解析协议(ARP)。
基本功能
OSI 七层模型中tcp/ip 协议簇解决应用层、传输层、网络层问题,以太网
在TCP/IP协议中,传输层只关心目标主机的IP地址+端口地址(因为这两元素唯一的确定一个传输层的包要交互的目的地,也即目标主机上的哪个应用程序,比如udp包或者tcp包)。网络层会对传输层的包进行封装形成ip包,网络层只关心目标机器的IP地址,并根据这个ip地址寻址到网络上的目的机器。在以太网中,ip数据包又是被封装在以太网帧中,经过物理层(也就是网卡)发送到网络上,以太网帧又是根据MAC地址来寻址到目的机器的网卡的(局域网中的所有机器的网卡都会接收到这个帧,而只有该帧头部中的目的MAC地址与自己网卡的MAC地址匹配时,才会向网络协议栈交付该帧中的数据包,否则网卡就会丢弃该帧)。因此,同一局域网中的一台主机要和另一台主机或者交换机,路由器等进行网络通信时,必须要知道与本机用网线连接上的,目标设备那边的那个网络接口的MAC地址(也就是网卡的地址)。这就导致在以太网中使用IP协议向下传递IP包时,IP包被包含在以太网帧中,以太网帧是有自己的格式的,在帧头部就需要填充目的机器MAC地址,而此时从ARP表里面没有查询到目的ip地址对应的MAC地址,因此主机会暂存这个ip数据包,由于主机刚连接到这个局域网时或者重启之后,是不知道目的方的MAC地址的,如果要向目的机器发送一个ip包,就需要先知道目的机器的MAC地址,于是需要一种方法,根据目的主机的IP地址,获得其MAC地址,这个方法就是通过发送一个叫做arp请求的数据包(arp数据包也是被包含在以太网帧中的,发送时,帧头部中的目的mac地址填写为0xffffffff,表示在本地局域网上广播,这样属于该局域网的所有机器接收到一个广播帧的时候都会向协议栈递交这个帧中的数据包,这里是arp数据包)广播到该局域网中,而仅当某台机器的IP地址与该arp请求中的要询问的ip地址相同时,那台机器就才会向发送方返回一个arp回应数据包,这个回应包中就包含了先前要询问的机器的IP地址 + MAC地址,本地主机接收到这个回应的arp数据包后,会提取ip地址和mac地址,记录到一个叫做arp的表的表项中,这样就把目的主机的ip地址和mac地址对应关系记录下来了,随即找到先前由于缺少目的mac地址而暂存的数据包,并用以太网帧封装它,用该arp表项中的mac地址来填充帧头部中的MAC地址域,当这个帧被发送到局域网中之后,目标机器网卡接收到这个帧之后,判断该MAC地址和自己的MAC地址相同,就会向上层协议栈递交这个帧中的数据包,从而数据得以交付,而其他主机检测到MAC地址与本机不同,会把这个帧丢弃。这就是ARP协议要做的事情。
另外,当发送主机和目的主机不在同一个局域网中时,即便知道对方的MAC地址,两者也不能直接通信,必须经过路由器进行ip层的转发才可以,因为路由器把这个局域网进行了链路层上的隔离(除非进行网络层次的显示转发,否则路由器不会把一个局域网中的以太网帧自动的转发到另一个局域网或者外网中去,如果可以自动转发,可以想象有多可怕,无效的广播帧可能像洪水一样淹没整个网络,使得网络瘫痪,这也就是路由器的基本功能之一,隔离网络),所以此时,发送主机会把一个网关ip地址作为目的ip地址(这个是ip层决定的),那么通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为委托ARP或ARP代理(ARP Proxy)。
在点对点链路中不使用ARP,实际上在点对点网络中也不使用MAC地址,因为在此类网络中分别已经获取了对端的IP地址。
arp 基本功能的更多相关文章
- 密码分析:使用 Ettercap 和 它的 ARP 毒化功能来嗅探流量
vim /etc/etterconf 将 ec_uid 和 ec_gid 改为 0 需要取消下面的 IPTABLES 行的注释.它在靠近文件末尾的 LINUX 一节 ettercap -G Shift ...
- 【转】宽带路由器应用(三)—ARP欺骗防护功能的使用
在局域网中,通信前必须通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址).ARP协议对网络安全具有重要的意义.通过伪造IP地址和MAC地址实现ARP欺骗,对网络的正常传输和安全都是一个很 ...
- 详述网络中ARP安全的综合功能
组网图形 ARP安全简介 ARP(Address Resolution Protocol)安全是针对ARP攻击的一种安全特性,它通过一系列对ARP表项学习和ARP报文处理的限制.检查等措施来保证网络设 ...
- 转载《遭受arp攻击怎么办》
ARP(Address Resolution Protocol,地址解析协议)协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的进行.ARP攻击仅能在以太网(局 域网如: ...
- 1-12 ARP协议
ARP(Address Resolution Protocol)地址解析协议,负责将相应的IP地址解析成MAC地址. 在局域网中,网络中实际传输的是‘帧’,帧里面包含了目的主机的MAC.ARP就是用来 ...
- 《TCP/IP详解卷1:协议》第4章 ARP:地址解析协议-读书笔记
章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...
- 第四章:ARP 地址解析协议
网络接口有一个硬件地址,48bit的值,在硬件层次上进行的数据帧交换必须有正确的接口地址.tcp/ip有自己的地址,32bit的IP地址. 但是知道主机的IP地址并不能让内核发送一帧数据给主机.内核( ...
- 浅谈局域网ARP攻击的危害及防范方法(图)
浅谈局域网ARP攻击的危害及防范方法(图) 作者:冰盾防火墙 网站:www.bingdun.com 日期:2015-03-03 自 去年5月份开始出现的校内局域网频繁掉线等问题,对正常的教育教 ...
- 网络地址到物理地址的映射(ARP)
网络的互连首先要解决的问题就是网络地址到物理地址的映射,以太网接口分配的是一个48位的物理地址,而IP地址却只有32位,因此无法将它编码到IP地址中.有人建议可以构建一个中央数据库存储所有网络中的网络 ...
- 网络层和arp协议
1:arp协议功能:获取mac地址 ----------------------在同一个局域网:发送端mac 接收端mac(FF:FF:FF:FF:FF:FF:FF) 源IP 目标IP 数据 - ...
随机推荐
- SAP 结构转JSON
*使用方式 jsonstr = zui2_json=>serialize( data = ls_in compress = abap_true pretty_name = zui2_json=& ...
- 1996. 游戏中弱角色的数量 (Medium)
问题描述 1996. 游戏中弱角色的数量 (Medium) 你正在参加一个多角色游戏,每个角色都有两个主要属性: 攻击 和 防御 .给你一个二维整数数组 properties ,其中 properti ...
- ue4 启动顺序
GameMode PlayerController Actor Level https://www.cnblogs.com/fjz13/p/6133795.html
- 2022-4-6内部群每日三题-清辉PMP
1.产品负责人一直听取一个项目干系人的意见,远远超过其他项目干系人.敏捷管理专业人士应该怎么做? A.允许这名干系人和产品负责人自己解决问题. B.与这名干系人安排一次私人会议,以澄清他们的需求. C ...
- Google Chrome 离线安装包官方下载
我们参照 Google Chrome帮助中的<下载和安装 Google Chrome>,在这里找到官方最新版离线安装包的下载地址:备用 Chrome 安装程序,历史版本请通过版本号的方式下 ...
- 【北邮人论坛帖子备份】【FAQ】给今年国企求职学弟学妹的一点建议
目录 主要内容 补充--[心得][校招]面向国企秋招的一些体会 补充--[心得]回馈论坛,某toca的小弟金融类央企秋招过程中的一点点 主要内容 时间:Fri Feb 19 23:00:33 2021 ...
- css/js使用小技巧记录
1.白底小图标换色 .iconBox { position: relative; width: 19px; height: 19px; overflow: hidden; // 隐藏原本颜色的图片 . ...
- 【LeetCode】——分割回文串II
继续与动态规划斗智斗勇... 132. 分割回文串 II - 力扣(LeetCode) (leetcode-cn.com) 分析:记f[i]表示将字符串s[0:i]分割的最小次数.我们需要将列举出在[ ...
- Jmeter七、jmeter中的参数化
参数化是为了更好的模拟真实的业务场景 CSV data set config组件 1.更容易使用和理解 2.适合大参数量场景 3.设置方便灵活 EOF=end of file 没有找到文件 comma ...
- Java中double保留2位小数(精度丢失)的两种方式
Java中double保留2位小数(精度丢失)的两种方式 在我们日常开发中,使用double数据类型进行计算,偶尔会出现精度丢失的情况,例如实际结果是0.75,就可能出现0.7500000000000 ...