arp协议:通过ip找mac(交换机不能识别ip)

arp解析表: mac 和 ip 的映射关系

arp协议: 通过ip找到mac,可以减少广播的频率,减少主机的损耗.

arp协议: 能够完成,依靠交换机一次广播,一次单播放完成的;

传输层: 端口 + 数据信息

网络层: ip + 端口 + 数据信息

链路层: mac + ip + 端口 + 数据信息

物理层: 二进制的字节流

第一步,把这个数据包发送给交换机,交换机自己只识别mac,不识别ip

第二步,交换机开始拆包,最多拆二层,找到mac,如果找不到,重新打包,开始全FF广播

第三步,每一台主机都会收到数据包,每一台主机开始拆解,直接走到网络层

网络层拆开ip头,发现自己不是该ip,自动放弃,没有响应.一台满足条件.把自己的mac

和自己的ip进行返回,响应给交换机

第四步,交换机把mac和ip [单播]给原主机,交换机更新自己的mac表[接口和mac的对应关系]

源主机 和 其他分主机都去更新arp解析表

下一次源主机如果在需要找该ip,不需要交换机广播,直接通过交换机单播给目标主机即可

广域网执行过程(路由器): 根据ip找Mac地址

如果要发送这个数据信息

需要通过osi七层模型进行打包(封装)

第一步,通过传输层,基于原数据 前面加上tcp头部(原端口,目标端口)

第二步,通过网络层,基于上一层数据,前面加上ip头(原ip,目标ip)

第三步,通过链路层,基于上一层数据,前面加上mac头(原mac,网关mac)

第四步,把这个数据包变成二进制字节流,通过电信号把字节流发送出去

第五步.网关eth0接受之后,开始拆包,(与交换机最大区别,是交换机拆2层,路由器拆3层)

拆到ip头部时,打开路由表,找网段对应的网关是谁,发现eth1 => 192.168.2.0 符合条件,找到了

把拆的包重新打包,注意这时候,mac头数据进行更新,原mac改成eth1这个网关的mac,目标mac 改

成全FF广播地址,把这个包给eth1,然后开始广播

第六步,所有这个网关对应的机器全都可以收到,每一台机器都开始拆包,物理层,链路层都能拆,但是到了

网络层拆ip头的时,只有一台机器符合条件,剩下多余机器自动舍弃,没有回应,符合条件的机器,可

以看到数据内容,并且可以回发数据,直接建立连接

.

(3)arp协议的更多相关文章

  1. 浅谈ARP协议以及应用

    0. 前言 本章主要简单的介绍ARP的协议格式,主机如何发送和处理ARP报文,以及免费ARP. 1. ARP协议原理 ARP,全称Address Resolution Protocol,地址解析协议, ...

  2. 6410实现网卡(DM9000A)收发功能及ARP协议实现

    1. 网卡硬件结构(DM9000A) 网卡的实质就是MAC通过MII接口控制PHY的过程. MAC主要负责数据帧的构建.数据差错检查.传送控制等. PHY是物理接口收发器,属于物理层,当它收到MAC过 ...

  3. Lvs原理及部署之ARP协议

    1.什么使ARP协议 ARP协议,全称"Address Resolution Protocol" ,中文名是地址解析协议,使用ARP协议可实现通过IP地址获得对应的物理地址(MAC ...

  4. 计算机网络(2)-----ARP协议

    ARP协议(Address Resolution Protocol) 概念 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/I ...

  5. ARP协议

    ARP协议就是一个获取对方MAC地址的协议,ARP协议它是一个网络层的协议,它的作用是通过ARP request报文来获得对方的MAC地址,ARP报文里面发送的内容大概是192.168.1.20你的M ...

  6. ARP协议格式、ARP运行机制入门学习

    相关学习资料 http://baike.baidu.com/view/149421.htm?fromtitle=ARP%E5%8D%8F%E8%AE%AE&fromid=1742212& ...

  7. ARP缓存表的构成ARP协议全面实战协议详解、攻击与防御

    ARP缓存表的构成ARP协议全面实战协议详解.攻击与防御 1.4.3  ARP缓存表的构成 在局域网的任何一台主机中,都有一个ARP缓存表.该缓存表中保存中多个ARP条目.每个ARP条目都是由一个IP ...

  8. ARP协议详解

    ARP协议:地址解析协议,将IP地址映射到MAC地址. ARP缓存:每个主机都有存储IP地址和MAC地址的缓冲区.每条记录最长生存时间为10分钟,如果一条记录2分钟没有使用,则会被删除.如果始终在使用 ...

  9. TCP/IP详解学习笔记(3)-IP协议,ARP协议,RARP协议

    把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数 ...

  10. Networking - ARP 协议

    ARP 协议概述 ARP(Address Resolution Protocol),即地址解析协议,用于把 IP 地址映射到物理地址.网段上的每台主机都维护着一个被称为 ARP Table 或 ARP ...

随机推荐

  1. localforage调用setItem时出现DOMException错误的解决方法

    今天使用localforage时出现下面的错误: Uncaught (in promise) DOMException transaction.onabort.transaction.onerror ...

  2. 用php实现斐波那契数列,如: 1, 1, 2, 3, 5, 8, 13, 21, 34。用数组求出第20个数的值。

    <?php //用数组 function fib($n){ $array = array(); $array[0] = 1; $array[1] = 1; for($i=2;$i<$n;$ ...

  3. gRPC 在 Python中的应用

    python -m grpc_tools.protoc --proto_path=. --python_out=. --grpc_python_out=. hello.proto 简介 在python ...

  4. 论文阅读(Lukas Neumann——【ICCV2017】Deep TextSpotter_An End-to-End Trainable Scene Text Localization and Recognition Framework)

    Lukas Neumann——[ICCV2017]Deep TextSpotter_An End-to-End Trainable Scene Text Localization and Recogn ...

  5. 解决Linux 环境 GLIBCXX_3.4.15' not found问题

    升级Centos系统之后,运行filezilla时,出现如下错误的提示信息: ./filezilla: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15 ...

  6. Linux基础命令---iostat显示设备状态

    iostat iostat指令用来显示cpu状态,系统IO设备的状态,以及相关磁盘和NFS使用状态.iostat命令通过观察设备相对于其平均传输速率的活动时间来监视系统输入/输出设备负载.iostat ...

  7. Git抽取版本之间的差异,打包解压

    patch.sh文件代码 #!/bin/bash MY_SAVEIFS=$IFS #IFS=$(echo -en "\n\b") IFS=$'\n' build_dir=" ...

  8. NI_NUMERICHOST" is not exported by the Socket module "getaddrinfo" is not expo

    [root@Server3 ~]# masterha_check_repl --conf=/etc/masterha/app1.cnf "NI_NUMERICHOST" is no ...

  9. 随手记一 2018/04/23 Ajax基础了解

    1.什么是ajax? 主要目的是用来实现客户端和服务器之间的异步通信,实现页面的局部刷新 2.同步和异步! 同步:当多个线程同时向一个数据发送请求时,必须是A先执行完毕才可以给B,会出现阻塞的情况,但 ...

  10. 关于IIS的4月26日笔记

    常用命令: 31. regedit.exe----注册表 48. msconfig.exe---系统配置实用程序  80. services.msc---本地服务设置 93. regedit.exe- ...