单臂路由原理与应用【eNSP实现】

VLAN属于二层交换技术,因此若要实现VLAN间通信便需要来到第三层—网络层
单臂路由的原理是通过一台路由器,使VLAN间互通数据通过路由器进行三层转发。
单臂路由可以通过配置物理接口将其逻辑化为多个子接口,以便节约路由器上宝贵的物理接口资源。

实验目的

  • 了解单臂路由工作原理,学会配置单臂路由
  • 理解数据在跨VLAN通信中的转发过程

实验拓扑

单臂路由原理与应用【eNSP实现】_第1张图片

实验步骤

  1. 配置交换机各端口类型,同时划分各端口所属VLAN

    S1:
    <S1>system-view				//进入系统视图
    [S1]vlan batch 10 20 30		//在交换机S1上创建VLAN 10,VLAN 20,VLAN 30
    [S1]interface Ethernet 0/0/1	//进入e0/0/1接口
    [S1-Ethernet0/0/1]port link-type access 	//将此接口设置为Access类型
    [S1-Ethernet0/0/1]port default vlan 10		//此接口默认VLAN为VLAN 10
    [S1-Ethernet0/0/1]quit
    [S1]interface e0/0/2
    [S1-Ethernet0/0/2]port link-type access 	
    [S1-Ethernet0/0/2]port default vlan 20
    [S1-Ethernet0/0/2]quit
    [S1]interface g0/0/2		//进入g0/0/2接口
    [S1-GigabitEthernet0/0/2]port link-type trunk 	//将此接口设置为Trunk类型
    [S1-GigabitEthernet0/0/2]port trunk allow-pass vlan all	//此端口运行带有任何VLAN标签的															帧通过
    [S1-GigabitEthernet0/0/2]quit
    
    S2:	//大部分与S1类似,此处不再注释
    <Huawei>system-view 		//进入系统视图
    [Huawei]sysname S2			//将此设备改名为S2
    [S2]undo info-center en		//取消消息提醒
    [S2]vlan batch 10 20 30		//在交换机S2上创建VLAN 10,VLAN 20,VLAN 30
    [S2]interface Ethernet 0/0/1
    [S2-Ethernet0/0/1]port link-type access 
    [S2-Ethernet0/0/1]port default vlan 30
    [S2-Ethernet0/0/1]quit
    [S2]interface g0/0/2
    [S2-GigabitEthernet0/0/2]port link-type trunk 
    [S2-GigabitEthernet0/0/2]port trunk allow-pass vlan all
    [S2-GigabitEthernet0/0/2]quit
    
    S3:	//与S1,S2类似
    <Huawei>system-view 		
    [Huawei]sysname S3	
    [S3]vlan batch 10 20 30
    [S3]interface g0/0/1
    [S3-GigabitEthernet0/0/1]port link-type trunk 
    [S3-GigabitEthernet0/0/1]port trunk allow-pass vlan all
    [S3-GigabitEthernet0/0/1]quit
    [S3]interface g0/0/2
    [S3-GigabitEthernet0/0/2]port link-type trunk 
    [S3-GigabitEthernet0/0/2]port trunk allow-pass vlan all
    [S3-GigabitEthernet0/0/2]quit
    [S3]interface g0/0/3
    [S3-GigabitEthernet0/0/3]port link-type trunk 
    [S3-GigabitEthernet0/0/3]port trunk allow-pass vlan all
    [S3-GigabitEthernet0/0/3]quit
    

    到此处,各VLAN区域均划分完毕,此时各PC之间互相ping不通,我们希望通过设置单臂路由使其相互ping

  2. 将路由器g0/0/1接口逻辑化为三个子接口,分别作为三个PC的网关

    [R1]interface g0/0/1.1
    [R1-GigabitEthernet0/0/1.1]ip ad	
    [R1-GigabitEthernet0/0/1.1]ip address 192.168.1.254 24	//设置子接口的IP地址与掩码
    [R1-GigabitEthernet0/0/1.1]dot1q termination vid 10	//子接口处接收VLAN 10数据时自动剥									离VLAN 10标签;当此处发送数据时则自动加上VLAN 10标签
    [R1-GigabitEthernet0/0/1.1]arp broadcast enable //开启后子接口才能发送ARP广播报文【普通										 接口默认就是开启的】,ping功能就是建立在ARP基础上
    [R1-GigabitEthernet0/0/1.1]quit
    [R1]interface g0/0/1.2
    [R1-GigabitEthernet0/0/1.2]ip address 192.168.2.254 24
    [R1-GigabitEthernet0/0/1.2]dot1q termination vid 20
    [R1-GigabitEthernet0/0/1.2]arp broadcast enable 
    [R1-GigabitEthernet0/0/1.2]quit
    [R1]interface g0/0/1.3
    [R1-GigabitEthernet0/0/1.3]ip address 192.168.3.254 24
    [R1-GigabitEthernet0/0/1.3]dot1q termination vid 30
    [R1-GigabitEthernet0/0/1.3]arp broadcast enable
    [R1-GigabitEthernet0/0/1.3]quit
    //当VLAN数据都能被剥离后【dot1q设置后...】,对于路由器而言整个二层网络就像没有设置VLAN一样,因此PC网段便成了直连路由,此时更新自己路由表
    

    完成此步骤后,各PC间便能跨VLAN相互ping通。以PC2 ping PC3为例分析整个过程

    单臂路由原理与应用【eNSP实现】_第2张图片
  3. PC2会广播一个ARP请求,询问网关第MAC地,请求首先经过S1e0/0/2Access接口进入并被打上VLAN 20的标签,S1将此ARP请求从其余端口广播出去,发现e0/0/1端口的默认路由为VLAN 10,因此此路不通,所以ARP请求最后往g0/0/2Trunk端口发送出去并且仍然携带VLAN 20标签

  4. 同理,ARP请求S3g0/0/2Trunk接口接收并转发,ARP请求S2时无法经由e0/0/1发送给PC3,因此此端口的默认路由为VLAN 30,与ARP请求所携带的VLAN 10标签不同,所以此路也不通路,最后ARP请求只能经由S3g0/0/1端口发送出去

  5. 包来到R1g0/0/1端口,此端口已被逻辑化为3个子接口,此时路由器将此ARP请求VLAN 10标签与3个子端口的VID进行比对,发现其中有个端口的VID正好为VLAN 10,因此将此ARP请求接收,同时剥离其VLAN标签,也就是说当包被路由器接收后不携带任何标签。同时R1通过此端口回复一个ARP报文【这就是端口要开始ARP广播的原因】用于告知此网关的MAC地址PC1收到后即可按照此MAC地址直接进行发送数据至网关

  6. 紧接着R1查看自身路由表,发现PC3正好在自己的路由表中,通过层层查询,最后经由g0/0/1.3转发出去,同时打上此端口的VID,即VLAN 30标签,数据经此来到S3

    单臂路由原理与应用【eNSP实现】_第3张图片
  7. 面对携带了VLAN 30的数据包,S3同样会从其余端口转发出去,包来到S1后发现标签与e0/0/1e0/0/2不同,因此不进行转发;包来到S2处后发现标签正好与e0/0/1相同,因此去标签转发。PC3由此成功收到数据包,需要告知PC1自己已成收数据,同理发送ARP请求寻找自己的网关地址,最后来到PC1处,自此ping操作成功
    image-20220324165631093

你可能感兴趣的:(计算机网络,计算机网络,eNSP)