首页 > 编程知识 正文

同一个vlan不同网段怎么通讯,一个vlan多个ip段

时间:2023-05-06 21:29:18 阅读:162111 作者:3673

通过使用路由器可以实现VLAN之间的通信。 当路由器使用多个臂实现VLAN之间的通信时,路由器的接口资源非常困难,当VLAN数量非常大时,使用多个臂进行路由的方法不可行,扩展性也不高。 路由器采用单臂方式实现VLAN间通信时,单臂可扩展性强,经济实惠,是比多臂路由更好的选择。 但是,对于单臂路由,(1)路由器和交换机之间的链路必须承载所有VLAN之间的通信数据,因此负载非常大。 特别是当VLAN数量非常大且VLAN之间的通信流量非常大时,此链路将成为一种负担。 )2)单臂链路也没有冗余,如果链路发生故障,VLAN之间的通信也将无法正常进行。 使用第3层交换机也能够进行VLAN之间的通信,这也可以优化上述问题。 第3层交换机第3层交换机不仅提供第2层交换机的所有功能,还支持路由功能。 第3层交换机除了第2层接口外,还具有第3层接口。 VLAN (VLAN接口) VLAN接口是一个非常重要的三层接口,它是一个逻辑接口,物理上不存在。 通过在三层交换机上创建VLAN,可以将交换机的物理接口(例如GE0/0/1 )添加到VLAN中。 这些物理接口都是两层接口。 同时,您也可以将与此VLAN对应的VLANIF或与此VLAN对应的三层接口放置在交换机上。 第3层接口可以与此VLAN中的设备进行第2层通信。 并且,VLANIF作为第3层接口,具有路由功能,能够进行IP地址构成,但是,通常,该IP地址为VLAN内装置的默认网关地址。 在下图所示的网络拓扑中:

交换机具有两个VLAN,分别是VLAN 10和VLAN20,物理接口GE0/0/1、GE0/0/2和GE0/0/3都被配置为访问类型,其中GE0/0/1和GE0/0/3是gess类型0 VLANIF 10配置IP地址192.168.10.254,VLANIF 20配置IP地址192.168.20.254。 每个VLAN中的PC将默认网关地址配置为相应VLAN的VLANIF IP地址。 由于交换机配置了VLAN IF接口,因此三层交换机既有交换模块,也有路由模块。

在三层交换机中,同网段的两层数据交换是PC1向PC2发送数据的例子,大致过程如下。

(1) PC1构建单播数据帧:

PC1上层协议生成的数据载荷到达网络层,数据载荷被封装在IP报头中,在IP报头中,源IP地址为192.168.10.1,目的地IP地址为192.168.10.1 数据加载封装在IP报头中后,发送到网卡,然后进行数据链路层封装,封装在以太网数据帧中。 该数据帧的源MAC地址是PC1的网卡MAC地址,目标MAC地址是与名为192.168.10.2的IP地址相对应的MAC地址。 PC1试图查询ARP表以查找相应的ARP表项,但由于最初没有与PC1的ARP表相对应的表项,因此PCl发送广播ARP Request以请求PC2的MAC地址。 )2)交换机处理从PC1发射的广播ARP请求数据帧:

当ARP Request广播数据帧到达交换机的GE0/0/1接口时,按下VLAN10上的标签。 交换机读取数据帧的报头,发现这是一个广播数据帧。 在这种情况下,可以执行以下三种操作:

a .将接收到的ARP Request广播数据帧泛洪到参与VLAN10的所有端口,

b .对数据帧进行解封装,并将数据帧中的源Mac地址、VLAN10、GE0/0/1作为新的Mac地址表条目

交换机还通过数据帧报头中的“类型”字段发现帧中封装了ARP消息,将数据帧解封装并发送到其ARP协议模块。 ARP模块发现此ARP消息请求一个名为192.168.10.2的IP地址的MAC地址,并直接忽略此数据帧,因为此IP地址不是它的所有者。 3 ) PC2处理洪泛所获得的广播ARP请求数据帧:

因为交换机正在VLAN10中洪泛由PC1发送的ARP请求,PC2接收该数据帧并记录相应的ARP表项(PC1的IP地址和Mac地址),以及ARP请求block )4)交换机处理PC2响应的单播ARP Reply数据帧:

交换器接收该数据帧,解析数据帧的头,使数据帧中的源Mac地址、VLAN10、GE0/0/2成为新的Mac地址表项目,另解析数据帧的头后,进行Mac (5)通过找到与所目的地Mac地址相关联的外出接口,以及从PC-1发来的广播ARP Request消息中所学到的Mac地址表条目,将数据帧显示为(5) PC-1是由交换机传递的单钥

PC1接收该ARP Reply,分析数据帧以知道与192.168.10.2相对应的MAC地址,生成相应的ARP表条目(PC2的IP地址和MAC地址)以使PC1能够进行通信(6)交换机处理从PC1发送的单播数据帧:

因为交换机接收到该数据帧,发现这是单播数据帧,所以在MAC地址表中检查目的地MAC地址,找到了匹配的表项后(PC2回复的ARP Reply消息学习的MAC地址)

项),将该帧从GE0/0/2接口发出。

(7)PC2处理交换机传递的单播数据帧:

PC2收到这个数据帧后,解析以太网头部,发现目的Mac地址正是自己网卡的Mac地址,通过数据帧头部的“类型”字段发现该帧内封装着一个IP数据报将IP数据报上送IP协议栈,继续继续IP头部,发现目的IP地址也是自己网卡的IP地址,通IP数据报头部中的“协议”字段发现数据报内还封装上层应用协议的数据将上层应用协议的数据上送给上层协议模块处理数据。 在三层交换机上,跨网段三层数据交换

以PC1发送一份数据给PC3为例,大致过程如下:
(1)PC1构造单播数据帧:

PC1的上层协议产生的数据载荷到了网络层,数据载荷被封装IP头部,源IP地址是192.168.10.1,目的IP地址是192.168.20.1。将数据帧下送到了PC1的网卡,网卡将其封装成以太网数据帧,由于数据包的目的IP地址与本机不在相同网段(PC2可以通过将IP地址与地址掩码做 &操作,确定其IP网段范围),这意味着PC1需要先把报文发送到默认网关,因此数据帧的目的MAC地址需填写网关(192.168.10.254)的MAC地址。PC1在ARP表中查询192.168.10.254,发现并没有匹配的表项,因此它发送一个广播的ARP Request试图查询网关的MAC地址。

(2)交换机处理广播ARP Request数据帧:

广播ARP Request数据帧到达了交换机的GE0/0/1接口,会被打上VLAN10的Tag。交换机通过读取数据帧头部,发现这是一个广播数据帧,有三个动作:
a. 将广播报文在加入VLAN 10的端口上进行泛洪,
b.将数据帧解封装,将数据帧帧中的源Mac地址、VLAN10、GE0/0/1形成一条新的Mac地址表项
c 另外交换机通过数据帧头部的“类型”字段发现该帧内封装着一个ARP报文,将数据帧解封装后上送到自己的ARP协议模块,而ARP模块发现这个ARP报文请求的是192.168.10.2这个IP地址的MAC地址,恰好VLANIF 10的IP地址就是192.168.10.254,因此它直接发送一个ARP Reply对PCI进行回应。

(3)PC1处理收到的ARP Reply报文:

PC1收到了这个ARP Reply,获知了192.168.10.254对应的MAC地址,因此继续封装数据帧,然后将数据帧从网卡发出。

(4)交换机处理收到的单播数据帧:

交换机收到这个数据帧,发现这是一个单播数据帧,而且该帧的目的MAC地址正是本机的MAC地址,因此交换机将数据帧解封装,并将里面的数据上送到IP模块进行处理(通过数据帧头部的“类型”字段可以得知数据帧封装着一个IP数据报)。IP模块读取数据包的目的IP地址后,发现目的IP地址并非本机的IP地址,于是它在路由表中查询这个地址,结果发现有一条本地直连路由匹配(最长掩码匹配原则),而该直连路由的出接口是VLANIF20,因此交换机重新将这个数据包封装成帧。新的以太网帧头中,源MAC地址填写的是交换机的MAC地址,而目的MAC则需填写192.168.20.1的MAC地址,如果交换机的ARP表中没有相关的表项,那么它需要在VLAN20中发送广播ARPRequest去请求PC3的MAC地址(此过程和1-2过程类似,不在赘述),最后将封装好的数据帧从GE0/0/3接口发出。

(5)PC3处理交换机传递的单播数据帧:

PC3收到这个数据帧后,解析以太网帧头部,发现目的Mac地址正是自己网卡的Mac地址,通过数据帧头部的“类型”字段发现该帧内封装着一个IP数据报将IP数据报上送IP协议栈,继续继续IP头部,发现目的IP地址也是自己网卡的IP地址,通IP数据报头部中的“协议”字段发现数据报内还封装上层应用协议的数据将上层应用协议的数据上送给上层协议模块处理数据。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。