利用单臂路由实现VLAN间的路由
实验4:利用单臂路由实现VLAN间的路由。
实验原理:

实验内容:
本实验模拟公司网络场景,路由器R1是公司的出口网关,员工PC通过接入层交换机(如S2和S3)接入公司网络,接入层交换机又通过汇聚交换机S1与路由器R1相连,公司内部网络通过划分不同的VLAN隔离了不同部门之间的通信,保证各部门之前的信息安全,但是由于业务需要,经理、市场部和人事部之间需要实现跨VLAN通信,网络管理员决定借助路由器的三层功能,通过配置单臂路由来实现。
利用单臂路由实现VLAN间的路由拓扑如图所示:

实验编址如下:

第一步:创建VLAN并配置Access、Trunk接口。
公司为保障各部门的信息安全,需保证隔离不同部门间的二层通信,规划各部门终端属于不同的VLAN,并为PC配置相应的IP地址。
在S2上创建VLAN20和VLAN 10,把PC1的E0/0/1和连接PC2的E0/0/2接口配置为Access类型接口,并分别划分到相应的VLAN中:

在S3上创建VLAN30,把连接PC3的E0/0/1接口配置为Access接口,并划分到vlan30:

交换机之间或交换机和路由器之间相连的接口需要传递多个vlan信息,需要配置成Trunk接口。
将S2和S3的GE0/0/2接口配置成trunk类型接口,并允许所有vlan通过:


在S1上创建VLAN 10、VLAN20、VLAN 30,并配置交换机和路由器相连的接口为trunk,允许所有vlan通过:


第二步:配置路由器子接口和IP地址。
由于路由器R1只有一个实际的物理接口与交换机S1相连,可以在路由器上配置不同的逻辑子接口来作为不同VLAN的网关,从而达到节省路由器接口的目的.
在R1上创建子接口GE0/0/1.1,配置IP地址192.168.1.254/24,作为人事部网关地址:
在R1上创建子接口GE0/0/1.2,配置IP地址192.168.2.254/24,作为市场部网关地址:
在R1上创建子接口GE0/0/1.3,配置IP地址192.168.3.254/24,作为经理的网关地址:

在PC1、PC2和PC3上配置IP和相应的网关地址后,在PC1上测试与PC2和PC3间的连通性:

可以看到,通信仍然无法同理。
第三步:配置路由器子接口封装VLAN
虽然目前已经创建了不同的子接口,并配置了相关IP地址,但是仍然无法通信。这是由于处于不同VLAN下,不同网段的PC间要实现互相通信,数据包必须通过路由器进行中转。由S1发送到R1的数据都加上了VLAN标签,而路由器作为三层设备,默认无法处理带了VLAN标签的数据包。因此需要在路由器上的子接口下配置对应VLAN的封装,使路由器能够识别和处理VLAN标签,包括剥离和封装VLAN标签。
在R1的子接口GE 0/0/1.1上封装VLAN 10,在子接口GE 0/0/1.2 .上封装VLAN 20,在子接口GE 0/0/1.3上封装VLAN30,并开启子接口的ARP广播功能。
使用dot1q termination vid 命令配置子接口对一层tag报文的终结功能。即配置该命令后,路由器子接口在接收带有VLAN tag的报文时,将剥掉tag 进行三层转发,在发送报文时,会将与该子接口对应VLAN的VLAN tag添加到报文中:

适应arp broadcast enable命令开启子接口的ARP广播功能。如果不配置该命令,将会导致该子接口无法主动访问ARP广播报文,以及向外转发IP报文:

同理配置R1的子接口GE0/0/1.2和GE0/0/1.3:

配置完成后,在路由器R1上查看接口状态:

可以看到,3个子接口的物理状态和协议状态都正常。
查看路由器R1的路由表:

可以看到,路由表中已经有了192.168.1.0/24、192.168.2.0/24、192.168.3.0/24的路由条目,并且都是路由器R1的直接路由,类似于路由器上的直连物理接口。
在PC1上分别测试与网关地址192.168.1.254和PC2间的连通性:


可以观察到,通信正常,在PC1上Tracert PC2:

可以观察到PC-1先把ping包发送给自身的网关192.168.1.254,然后再由网关发送到PC-2。
现以PC-1pingPC-2为例,分析单臂路由的整个运作过程。
两台PC由于处于不同的网络中,这时PC-1会将数据包发往自己的网关,即路由器R1的子接口GE 0/0/1.1的地址192.168.1.254。
数据包到达路由器R1后,由于路由器的子接口GE 0/0/1.1已经配置了VLAN封装,当接收到PC-1发送的VLAN 10的数据帧时,发现数据帧的VLANID跟自身GE0/0/1.1接口配置的VLAN ID -样,便会剥离掉数据帧的VLAN标签后通过三层路由转发。
通过查找路由表后,发现数据包中的目的地址192.168.2.1 所属的192.168.2.0/24 网段的路由条目,已经是路由器R1.上的直连路由,且出接口为GE 0/0/1.2,便将该数据包发送至GE 0/0/1.2接口。
当GE 0/0/1.2接口接收到一个没有带VLAN标签的数据帧时,便会加上自身接口所配置的VLAN ID 20后再进行转发,然后通过交换机将数据帧顺利转发给PC-2。
利用单臂路由实现VLAN间的路由的更多相关文章
- 路由器基础配置之单臂路由实现vlan间通信
我们将以上面的拓扑图开始进行配置,目的为设置单臂路由实现vlan间通信,设置4个vlan,pc0,1,2为vlan10 pc3,4,5为vlan20:pc6,7,8为vlan30:server0,1为 ...
- 实验14:VLAN间的路由
实验11-1: 单臂路由实现VLAN 间路由 Ø 实验目的通过本实验,读者可以掌握如下技能:(1) 路由器以太网接口上的子接口(2) 单臂路由实现VLAN 间路由的配置Ø 实验拓扑 实验步 ...
- eNSP仿真软件之利用单臂路由实现VLAN间路由
1. 实验原理 以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性.其缺点是同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户不能直 ...
- VLAN实验4(在eNSP上利用单臂路由实现VLAN间路由)
原理概述: 以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响*并增强 网络的安全性和可管理性.其缺点足同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户 不能直 ...
- VLAN实验4:利用单臂路由实现VLAN间路由
单臂路由: 实验环境: 实验拓扑图: 实验编址: 实验步骤:1.创建VLAN并配置Access.Trunk接口. 我们在S2上创建VLAN10和VLAN20,并且吧链接PC1的E0/0/1和链接PC2 ...
- 在ensp上利用单臂路由实验VLAN间路由
我们为什么要设置单臂路由? 因为我们要解决不同vlan,不同网络的PC机间的通信问题~ 那它为啥叫单臂路由嘞? 单臂路由的原理时通过一台路由器,使vlan间互通数据通过路由器进行三层转发,如果在路由器 ...
- eNSP——利用单臂路由实现VLAN间路由
原理: 以太网中,通常会使用VLAN技术隔离二层广播域来减少广播的影响,并增强网络的安全性和可管理性.其缺点是同时也严格地隔离了不同VLAN之间的任何二层流量,使分属于不同VLAN的用户不能直接互相通 ...
- 小知识get:利用单臂路由实现不同vlan间路由
一.单臂路由概述 1.1.单臂路由实现不同vlan间通信 链路类型 交换机连接主机的端口为access链路 交换机连接路由器的端口为Trunk链路 子接口 路由器的物理接口可以被划分成多个逻辑接口 每 ...
- 利用单臂路由实现vlan间路由
本实验模拟公司场景 通过路由器实现不同vlan部门间通讯,拓扑图如下
随机推荐
- url 加参数
url = 访问地址 + ? key1=value1 & key2 = value2 304(未修改)自从上次请求后,请求的网页未修改过.服务器返回此响应时,不会返回网页内容. 加参数,骗过服 ...
- OpenGL 编程指南 (5.1)
1.OpenGL支持同时使用多个纹理单元,使用GL_TEXTUREi进行标识,使用前需要先激活对应的纹理单元,默认GL_TEXTURE0是激活绑定的. void glActiveTexture(GLe ...
- python3练习100题——013
熟悉的水仙花数来了,,,... 原题链接:http://www.runoob.com/python/python-exercise-example13.html 题目:打印出所有的"水仙花数 ...
- Codeforces Round #610 (Div. 2) A-E简要题解
contest链接: https://codeforces.com/contest/1282 A. Temporarily unavailable 题意: 给一个区间L,R通有网络,有个点x,在x+r ...
- OpenCV离散傅里叶变换
离散傅里叶变换 作用:得到图像中几何结构信息 结论:傅里叶变换后的白色部分(即幅度较大的低频部分),表示的是图像中慢变化的特性,或者说是灰度变化缓慢的特性(低频部分). 傅里叶变换后的黑色部分(即幅度 ...
- mysql(4):性能分析和性能优化
性能分析 慢查询日志分析 ①查询慢查询日志的状态 show global variables like '%slow_query_log%'; ②开启慢查询日志(当mysql重启时会重置) set g ...
- js splice()
//arrayObject.splice(index,howmany,item1,.....,itemX) 语法 //测试代码let array;array = ['George','John','T ...
- sudo用户找不到环境变量 sudo找不到/usr/local/bin 下的执行文件,
出于安全方面的考虑,使用sudo执行命令将在一个最小化的环境中执行,环境变量都重置成默认状态. 所以PATH这个变量不包括用户自定义设置的内容,如找不到/usr/local/bin/下面的命令在sud ...
- 在手机浏览器中判断App是否已安装
从网上搜到之前手机中判断App是否安装可以通过onblur事件+定时器来实现. 但现在要做这个功能时,按网上的说法已经不能实现了.因为现在浏览器中打开App,window不会触发onblur事件. 在 ...
- winform学习(9)无边框拖动窗体
去除边框 选中窗体,在属性中找到FormBorderStyle,设置为None 实现无边框拖动 [DllImport("user32.dll")] public st ...