网络传输中的三张表

1. 概述

先来说下网络通信中的三张表都是什么吧:

  1. ARP缓存表(一般由主机产生)
  2. MAC地址表(一般由交换机中产生)
  3. 路由表(一般由路由器产生)

2. 三张表的整体说明

2.1 网络传输基本拓扑图

在这里插入图片描述

2.2 ARP协议及ARP缓存表

ARP(Address Resolution Protocol)其实是地址解析协议。 ARP是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间(由此生成了ARP缓存表),下次请求时直接查询ARP缓存以节约资源。
由于ARP是建立在网络中各个主机互相信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存,由此会产生如下问题:

  1. 攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,从而构成ARP欺骗

2.2.1 ARP表的产生

  1. 假如现在PC1需要向PC2发送一个数据包,此时会产生如下行为:
    1. PC1组建网络包,数据包中的内容包含源MAC、源IP、目的MAC及目的IP,但是PC1现在仅知道PC2的目标IP
    2. 此时PC1会发送一个ARP数据包同时将目的地址填写为FF:FF:FF:FF:FF:FF,进行广播主要目的就是找到PC2的MAC地址
    3. 当交换机收到PC1发送的ARP包时,会向除GE 0/0/1接口外的其他所有接口转发此数据包(广播)
    4. 路由器和PC2收到ARP包根据IP判断是不是发给自己的,若是则返回一个ARP包(包含自己的MAC地址),若不是则不处理(路由器本身不会进行MAC地址的广播操作)
    5. 在PC2回复ARP包后,交换机根据具体的目的MAC地址进行数据转发(单播)
    6. PC1收到包后将包中的源MAC地址填写到要发送数据包的目的MAC地址中,并将对应的目的IP和目的MAC存起来,存储这些信息的地方就是ARP缓存表
  2. 假如PC1需要向公网发送数据包时,产生如下行为:
    1. 前面几个步骤与上述的前三个步骤类似,但ARP数据包的目标IP会是网关的IP(出外网一般会走网关,此处为路由器IP)
    2. 当路由器收到数据包后,发现是发给自己的,此时路由器会返回给PC1一个ARP包,并将自己的MAC地址给PC1
    3. PC1收到后将路由器的MAC地址封装到TCP包(也可以是别的)中后,发给路由器
    4. 路由器收到后根据最终请求的外网IP进行下一跳的处理,在转发的同时会将TCP包中必要的地址信息进行转换

2.2.2 ARP检测IP地址冲突

将自己的IP地址当作目的IP地址,通过组播/广播发出,若收到回应则说明IP地址存在冲突

2.3 交换机及MAC地址表

2.3.1 交换机的作用

在网络传输中经常会使用到交换机,交换机(网桥)是数据链路层上的设备,用于将同一个子网的多个节点连接在一起,没有进/出口之分。它只能处理MAC地址,不能处理IP地址。也就是说,它对接收到的数据包,只负责解析MAC地址并查询对应的端口,然后发送出去,而不会判断进出端口的数据是否属于同一个网络。

2.3.2 交换机的转发行为

  1. 泛洪(Flooding),也称广播
  2. 转发(Forwarding),也称单播
  3. 丢弃(Discarding)

2.3.3 交换机的工作原理

如果进入交换机的是一个单播帧,则交换机会去MAC地址表中查找这个帧的目的MAC地址
	1. 如果查找不到MAC地址,则交换机执行泛洪操作
	2. 如果查到了这个MAC地址,则比较这个MAC地址在MAC地址表中对应的端口是不是这个帧进入交换机的端口。
		1. 如果不是则交换机执行转发操作
		2. 如果是则交换机执行丢弃操作
如果进入交换机的是一个广播帧,则交换机不会去查MAC地址表,而是直接执行泛洪操作
如果进入交换机的是一个组播帧,则交换机需要查询组播MAC地址表再转发

2.3.4 MAC地址表的产生

在ARP缓存表的产生过程中第三及第五步的过程中产生(内网传输的case下)

2.4 路由器及路由表

路由器(Router)是用于连接多个逻辑上分开的网络,所谓逻辑网络是代表一个单独的网络或者一个子网。当数据从一个子网传输到另一个子网时,可通过路由器来完成。路由器主要有路由及转发功能,这两个功能主要对应两张信息存储表路由表(RIB Router Information Base)及转发表(FIB Forward Information Base),转发表是基于路由表而生成的,下面主要介绍路由表。

  1. 路由表主要信息
    在这里插入图片描述
  2. 路由表的产生
    1. 直连路由(链路层协议发现的路由):当把接口的IP配置完毕开启后,会自动形成直连路由条目
    2. 间接路由:需要手工静态或动态进行配置

欢迎转载QAQ~

欢迎大家关注「CoderPro」公众号,请大家多多支持、多多关照/(ㄒoㄒ)/~~
在这里插入图片描述

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值