
昨天我们提到了如何为1000通道的大规模网络监控分配IP地址?,有朋友问,vlans之间需要什么通信?不同vlan之间如何通信,我们平时提到vlan之间的通信需要三层交换机,那么没有三层交换机可以通信吗?其实不同VLAN之间的通信有两种方式c语言实现二层交换机的工作原理,单臂路由和三层交换机。如何配置它们?哪一个更好?
今天我们就来看看这两种方式是如何实现VLAN间通信的。
这篇文章从三个问题开始?
1、VLAN间通信有哪些方式?
2、它们是如何实现的?如何配置?
3、它们有何不同?哪一个更好?
一、不同vlan之间的通信有哪些实现方式?
我们知道,要实现不同vlan之间的通信,必须要有路由功能。单臂路由的实现其实就是一个普通的二层交换机加一个路由器,让不同的vlan可以互相通信。
那么为什么第 3 层交换机不使用路由器呢?由于三层交换机本身具有路由功能,因此无需其他路由即可实现VLAN间的通信。
所以:
不同VLAN之间有两种通信方式(单臂路由、三层交换机)。我们来看看他们的网络拓扑图。对网络有所了解的朋友可以看出他们的不同。
1、不同VLAN之间的通信是通过单臂路由实现的,如下图所示:
2、不同VLAN之间的通信是通过三层交换和路由功能实现的:如下图
当然,看这两张拓扑图,很多朋友可能还不是很清楚,那么下面我们就通过交换机的配置来详细了解一下,如何通过两种方式来实现不同VLAN之间的通信。
二、单臂路由实现不同VLAN间的互通
拓扑图如下:
如前所述,单臂路由网络是由普通交换机和路由器组成的,所以我们在配置的时候需要配置交换机和路由器。
1、 交换机SW3的具体配置(主要配置vlan和trunk接口)
第一步:在SW3上创建vlan100、vlan200、vlan300,名字分别为caiwu、xiaoshou、gongcheng。(创建vlan可以在vlanddatabase中配置,也可以在全局模式下配置,本实验在vlan database中配置)。
第 2 步:在全局模式下,
将端口 f0/1 – 5 划分为 vlan 100,
f0/6-10个端口分为vlan 200,
f0/11 – 端口 15 分配给 vlan 300,
并全部配置为访问模式。
第三步:使用show vlan显示SW3的vlan配置信息,可见配置正确)
第四步:如果交换机通过路由器实现VLAN间的通信,需要将与交换机相连的端口配置为trunk模式c语言实现二层交换机的工作原理,只有trunk线才能让VLAN通过。
2、 路由器R2的具体配置(通过配置路由器子接口,封装成各个vlan的网关)
第一步:在路由器(R2)和交换机(SW3))的端口上配置子接口,每个子接口的IP地址就是每个VLAN的网关地址(也可以理解为下一跳)地址),并在子接口上封装802.1Q协议(交换机通用封装方式,使用命令encapsulation dot1q封装),如下图:
第二步:将PC5和PC6分别连接到交换机SW3的f0/6和f0/1,然后配置PC5的IP地址为192.168.2.1/24,网关是 192.168.2.254。PC6的IP地址为192.168.1.1,网关为192.168.1.254。然后用PC5 ping PC6 看看能不能ping 通。
pc5 和 pc6 在不同的 vlan 中。如上图,它们可以相互通信,这样就实现了不同vlan之间的互通。
三、三层交换机实现不同VLAN间的互通
三层交换机的配置我们之前已经讲过很多次了。有很多例子。这里我们举一个稍微复杂一点的例子作为例子,这也是项目中经常遇到的典型案例。
拓扑图如下:
为了让大家更详细的看到代码的注释,我们就不截图了,直接发送配置代码。
一、【实验目的】
1、同一 VLAN 中的计算机系统可以跨交换机相互通信。
2、不同VLAN的计算机系统也可以相互通信。
3、每个vlan的信息如下:
vlan10: 192.168.10.1/24
vlan20: 192.168.20.1/24
vlan30:192.168.30.1/24
4、pc ip地址和网关如下:
pc机ip地址网关
pc1 192.168.10.2/24 192.168.10.1
pc2 192.168.20.2/24 192.168.20.1
pc3 192.168.10.3/24 192.168.10.1
pc4 192.168.20.3/24 192.168.20.1
pc5 192.168.30.2/24 192.168.30.1
pc6 192.168.20.4/24 192.168.20.1
pc7 192.168.30.3/24 192.168.30.1
二、【配置步骤】
1、交换机s0的配置如下:
Switch> en //进入特权模式
Switch#conf t //进入配置模式
Switch(config)#vlan 10 //创建vlan10
Switch(config-vlan)#vlan 20 //创建vlan20
输入配置命令,一行一行。以 CNTL/Z 结尾。
Switch(config)#int fa0/2 //进入端口0/2
Switch(config-if)#switchport access vlan 10 //将端口0/2分配给vlan10
Switch(config-if)#exit //退出端口0/2
Switch(config)#int fa0/3 //进入端口0/3
Switch(config-if)#switchport access vlan 20 //将端口0/3分配给vlan20
Switch(config-if)#exit //退出端口0/3
Switch(config)#int fa0/1 //进入端口0/1
Switch(config-if)#switchport mode trunk //端口模式为trunk
开关(配置-if)#
总结:给交换机S0下面的端口的pc分配自己的vlan,然后将fa0/1端口设置为trunk,因为交换机之间设置了trunk接口,这样不同的vlan就可以通过其他交换机了!
2、交换机s1的配置如下:
开关>en
开关#conf t
输入配置命令,一行一行。以 CNTL/Z 结尾。
开关(配置)#vlan 10
Switch(config-vlan)#exit
开关(配置)#vlan 20
交换机(config-vlan)#vlan 30
Switch(config-vlan)#exit
开关(配置)#int f0/2
Switch(config-if)#switchport访问vlan 10
切换(config-if)#exit
开关(配置)#int f0/3
Switch(config-if)#switchport访问vlan 20
切换(config-if)#exit
开关(配置)#int f0/4
Switch(config-if)#switchport访问vlan 30
切换(config-if)#exit
开关(配置)#int f0/1
Switch(config-if)#switchport mode trunk //端口模式为trunk
交换机s1的配置与s0基本相同,代码相同。
3、交换机s2的配置如下:
开关>en
开关#conf t
输入配置命令,一行一行。以 CNTL/Z 结尾。
开关(配置)#vlan 20
交换机(config-vlan)#vlan 30
Switch(config-vlan)#exit
开关(配置)#int fa0/2
Switch(config-if)#switchport访问vlan 20
切换(config-if)#exit
开关(配置)#int fa0/3
Switch(config-if)#switchport访问vlan 30
切换(config-if)#exit
开关(配置)#int fa0/1
Switch(config-if)#switchport模式中继
交换机 s2 的配置与 s0、s1 类似。对应的端口划分为对应的vlan,没有新代码。
4、三层交换机3560的配置如下:
Switch>en //进入特权模式
Switch#conf t //进入配置模式
Switch(config)#vlan 10 //创建vlan10
Switch(config-vlan)#vlan 20 //创建vlan20
Switch(config-vlan)#vlan 30 //创建vlan10
Switch(config-vlan)#exit //返回上一级
Switch(config)#int vlan 10 //进入vlan10
switch(config-if)#ip address 192.168.10.1 255.255.255.0 //给vlan 10 添加ip地址和子网掩码
Switch(config-if)#no shutdown //打开端口
Switch(config-if)#exit //返回上一极
Switch(config)#int vlan 20 //进入vlan20
switch(config-if)#ip address 192.168.20.1 255.255.255.0 //给将ip地址和子网掩码添加到vlan 20
Switch(config-if)#no shutdown //打开端口
Switch(config-if)#exit //返回上一级
Switch(config)#int vlan 30 //进入vlan30
switch(config-if)#ip address 192.168.30.1 255.255.255.0 //给将ip地址和子网掩码添加到vlan 20
Switch(config-if)#no shutdown //打开端口
Switch(config-if)#exit //返回上一级
Switch(config)#int range fa0/2-4 //进入端口2-4
Switch(config-if-range)#switchport mode trunk //端口模式为trunk
Switch#show ip route //显示ip路由
然后配置就完成了。
三、总结
从测试过程可以看出,实现不同的VLAN有两种方式,一种是通过单臂路由实现,另一种是通过三层交换的路由功能实现。可以说,不同VLAN之间的通信必须通过路由功能来实现。来实现沟通。
其次,不同网段之间需要配置下一跳地址(网关)进行通信。那么什么时候使用单臂路由,什么时候选择三层交换呢?单臂路由不可扩展。你为什么这么说?如果 VLAN 的数量继续增加,流经路由器和交换机之间链路的流量也会变得非常大。这时候,无论你的网络带宽有多快,这个环节都会成为整个网络的瓶颈。
因此,当网络不断增长,划分的 VLAN 数量不断增加时,需要配置三层交换机的路由功能,实现不同 VLAN 之间的通信(三层交换机数据表的吞吐量为通常是百万pps,传统路由器的吞吐量只有10kpps~1Mpps。其次,三层交换机使用硬件来交换和路由数据包。当然,吞吐量很大,甚至接近线速。路由器只交换和路由通过虚拟子接口,数据包的选择不通过硬件实现,吞吐量变小。
总之:三层交换技术在第三层实现了数据包的高速转发,从而解决了传统路由器的低速和责任感带来的网络瓶颈问题。
(此处已添加圈卡,请到今日头条客户端查看)
请登录后发表评论
注册
社交帐号登录