当前位置: 首页 > news >正文

华为hcia——Datacom实验指南——三层交换和ARP的工作原理

什么是三层交换

三层交换是指连接在同一台三层交换机上,不同vlan用户,不同网段ip,通过vlanif接口进行数据交换。

什么是ARP协议

通过网络层的ip地址解析成数据链路层的mac地址。

说白了就是通过目标ip地址去问他对应的mac地址是多少。

ARP学习条件

ARP协议只会学习同一个网段下的mac地址,不会跨网段学习,因为在平时的跨网段通信,基本流程是主机发送给网关,网关再去进行跨网段操作,所以不需要也没必要去学习其他网段的mac地址。

ARP表

ARP表分为静态和动态表,静态表是管理员手动配置的,动态表是由接受到的ARP数据包对源mac地址源ip地址进行学习,动态表保存在缓存中,设备重启就会清除,且表项有老化时间(华为默认1200秒),静态表项优先级高于动态表项,当同一个ip地址既有动态表项又有静态表项,优先选择静态表项,动态表项会被覆盖,不会起到作用。

三层交换基本流程

三层交换仅局限于源设备和目的设备在职责所在的网段均直连在同一个三层交换机上,否则需要进行ip路由实现。

首先源设备和目的设备在不同网段下,所以它们之间的交流要通过网关进行,也就是交换机的vlanif接口进行,所以源设备会发送一个ARP请求询问当前网关地址是多少,然后交换机收到后会进行ARP学习,源mac地址和源ip学习,然后给主机发送一个ARP回应报文,源设备收到报文后进行ARP学习,然后开始发送ICMP协议的ping报文,

交换机收到源设备发送的ping报文后,发现目的mac地址是自己,但是目的ip地址是其他网段的,所以可以判断出需要进行三层交换,所以交换机会查找三层转发表,发现没有。

网关就会把数据送到cpu进行ip表查找,然后发现目的设备的网段的直连路由表,从对应的vlanif2网关接口发送出去一个泛洪的数据,这个时候源mac地址是当前的vlanif2接口,目的mac地址是目的设备的mac地址,ip还是源设备和目的设备的,然后目的设备收到ARP报文后学习到了当前网段vlanif2的mac地址之后回复一个ARP响应包,vlanif2学习到了目的设备的mac地址和ip地址后,再把从源设备发出来的ping报文发送给目的报文,目的设备收到报文后又回复一个ping报文回去,这样就完成以一次ping指令。

实验开始

第一步搭建环境

第二步配置pc

pc2就ip地址配置成192.168.2.10,网关是192.168.2.1

第三步配置交换机。

system-view
sysname LSW1
vlan batch 10 20
interface ethernet 0/0/1
port link-type access
port default vlan 10
quit
interface ethernet 0/0/2
port link-type access
port default vlan 20
quit
interface vlan 10
ip address 192.168.1.1 24
quit
interface vlan 20
ip address 192.168.2.1 24
quit

第四步ping测试

分析

抓取pc1的数据流量。

第一步发送ARP报文

pc1发送一个广播ARP报文询问网关vlanif1的mac地址

第二步回复ARP报文

网关vlanif1收到后回复一个ARP告诉pc1mac地址,pc1收到报文后进行ARP学习网关vlanif1的mac地址

第三步发送ping报文

pc1发送ICMP的ping报文给pc2.

我们发现源mac地址是pc1的目的mac地址是网关vlanif1的地址,源ip是pc1的但是目的ip却是pc2的不是网关vlanif的,所以交换机就判断这是一个三层转发,交给cpu进行路由查找。

第四步交换机查表

交换机通过查找ip路由表发现vlanif2和目的ip同一个网段,然后就通过vlanif2进行泛洪转发出去。

第五步发送和响应ARP报文

同理,pc2收到ARP报文后学习到vlanif2网关的mac地址然后回应一个ARP给vlanif2进行学习pc2的ARP学习。

第六步,相应ping报文。

同理ip地址是pc1和pc2,但是源mac地址是pc2,目的mac地址是vlanif2的mac地址,然后通过交换机把数据通过vlanif1进行发送给pc1,这个时候ip地址没变,源mac地址变成vlanif1的目的mac地址变成pc1.

结束

相关文章:

  • 【愚公系列】《AI Agent技术、应用与商业》003-Al Agent 的分类方式
  • 【从零开始学习计算机科学】计算机组成原理(七)存储器与存储器系统
  • 系统架构的评估的系统的质量属性
  • Go本地缓存设计与实现
  • [微服务设计]1_微服务
  • Liunx——动静态库
  • AXI接口总结
  • 蓝桥杯备赛-差分-推箱子
  • 虚幻基础:动画系统
  • 推荐一款好用在线免费软件工具箱-传道软件箱
  • PostgreSQL - Windows PostgreSQL 下载与安装
  • Facebook 与信息传播:塑造新闻和媒体的新生态
  • 前端计算精度保卫战:Vue3中big.js的加减乘除实战指南
  • 深度学习系列80:Pike-RAG解析
  • C#工业上位机实时信号边沿检测实现
  • 【前端】【nuxt】几种在 Nuxt 客户端使用console的方式
  • 基于vue框架的在线考试系统的设计与实现l9385(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • python编写的一个打砖块小游戏
  • Leetcode做题记录----1
  • 数据结构:有序表的插入
  • 上海国际电影节将于6月3日公布排片表,6月5日中午开票
  • 今晚油价下调,加满一箱油将省9元
  • 印军称中国向巴基斯坦提供防空系统协助,外交部:中方十分重视与印、巴两国关系
  • 推开“房间”的门:一部“生命存在的舞台” 史
  • 15年全程免费,内蒙古准格尔旗实现幼儿园到高中0学费
  • 美国务卿与以色列总理通话,讨论加沙局势