码迷,mamicode.com
首页 > 其他好文 > 详细

如何实现不同交换机上的终端在同一VLAN上互联?

时间:2017-11-09 14:22:55      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:vlan

如何实现不同交换机上的终端在同一VLAN上互联?

下图:

技术分享

  PC0,PC1PC4在同一VLAN ,PC2PC3在同一VLAN,怎么实现同一VLAN 上的终端互通呢?

 

    我们知道在交换机不做任何配置的时候,所有端口都在同一个默认vlan下,所以将终端配置好IP地址之后5PC就可以互通,但是现在为了让它们分离出来,如何实现呢?

1、首先要知道交换机是如何工作的?

     交换机是在OSI七层模型的第二层也就是数据链路层下工作的,数据传输单元是帧。只能识别物理地址,不能识别IP地址。

     对于PC2PC3而言:

     假设PC2MAC地址是APC3MAC地址是B

     PC2要和PC3进行通信


PC2发送 



目的地址

源地址

类型

数据

4b

4b

2b


      

相当于从A---->B

然后到了交换机端口3,对于交换机,它需要:

    成表(交换机会自己学习)

        形成一个A------3端口的表

    查表

        查找自身端口上对应的MAC地址,如果没有就以广播数据帧的形式发出去(现在5PC终端都在同一个VLAN下)去寻找。

        PC3接收到广播后,就以单播的方式回应,同样回到交换机的端口上,然在成表,查表回到PC2,这样就形成了通信。

     去:成表A----3,广播找到PC3

     回:单播B----2,查表找到A就从3端口到PC2

2使用vlan技术

VLAN的本质:

是通过数据层面进行分析;

    交换机为每个VLAN的数据,在2层头部添加一个tag字段,该字段等于vlan


目的地址

源地址

类型

tag

数据


    现在将PC2PC3都放在VLAN10

    你会发现你只将switch03端口放进vlan10,将switch12端口放进10PC2PC3竟然没有通信!!

    因为你没有将switch04端口和switch11端口放到vlan10啊。

 

3、在交换机之间使用trunk技术

    经过以上操作,你会发现如果想让PC0PC4在另一VLAN上进行通信,你会想到在两个交换机之间再端口上再加上一根线就OK了(如下图),可是如果是10VLAN20VLAN呢?这样就造成了浪费,也增加了工作量!


技术分享


 

所以使用trunk,也就是主干线,又称为中继。使不同VLAN通过共享链路与其它交换机中的相同VLAN通信。


附:

vlan的创建

  1. 创建vlan

    switch(config)#vlan+数字

    switch(config-vlan)#name+名字  //vlan改名字

  2. 配置端口模式

    switch(config)#interface fa0/1

    switch(config-if)switchport mode access  //设置为访问模式

  3. 端口划分进指定vlan

    switch(config-if)#switchport access vlan+数字

  4. 对配置的ip进行测试

    switch#show vlan brief

    思科交换机默认有5个系统vlan,这些vlan不可以修改与删除。

Trunk:

Trunk 模式的链路,可以同时传输所有VLAN的数据;

配置命令:

switch(config)#int  fa 0/1 //某个端口

switch(config-if)#switchport mode trunk

验证命令:

show interface trunk

某些交换机需要:

switchport trunk encapsulation dot1q   //指定一个封装协议才能配置trunk


 


本文出自 “13442945” 博客,请务必保留此出处http://13452945.blog.51cto.com/13442945/1980240

如何实现不同交换机上的终端在同一VLAN上互联?

标签:vlan

原文地址:http://13452945.blog.51cto.com/13442945/1980240

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!