以太网/LAN(local area network )的相关概念:
问题:
信号传输距离有限;
解决方案:
中继器 - 放大电信号,延长信息的传输距离;
中继器带来的问题:
只有2个端口,连接设备少;
解决方案:
集线器 - 多端口的中继器,可以连接多个设备;
集线器的问题:
不同终端设备发送的信号,会产生冲突;
针对信号冲突的缓解方案:
CSMA/CD ,带有冲突检测的,载波侦听多路访问机制;
引入新的设备 :
网桥(bridge) - 隔离冲突域;
问题:
网桥设备端口较少,只能连接2个设备;
解决方案:
引入新的设备 :
交换机 - 多端口的网桥,可以实现
冲突域的隔离;
-----------------------------------------------------------
交换机的工作原理:
1、首先查看数据包的“目标 MAC 地址”;
2、将目标 MAC 地址与“MAC地址表”中的条目进行匹配;
成功,则从对应的端口转发出去;
失败,则广播(从除入端口以外的其他所有端口发出去);
1、MAC地址啥样子?
长度为48bit;
通过16进制表示;
结构:
厂商代码 - 24bit
自己的编码 - 24bit
(每个生产厂商给自己生产的网卡的编号)
数据包结构:
源MAC -- 目标MAC
源IP -- 目标IP
2、MAC地址表啥样子?
每个条目都是 MAC 地址与 Port的对应关系,
表示去往该 MAC 地址的数据,从对应的 Port 发送出去;
MAC表如何形成:
静态配置;
动态学习 -
1、当交换机在端口上收到数据包以后,首先查看
源MAC地址,从而形成 源MAC 与 入端口的对应关系
2、分析数据包的 目标MAC地址,并且查找 MAC地址表
-能找到对应的MAC条目,则在对应端口转发;
-如果找不到对应的条目,则广播;
3、两者如何匹配?
1、显示 MAC 地址表
SW1# show mac-address-table
4、MAC表的动态条目存活时间:
300秒;
交换机的工作原理:
1、成表(查看源MAC)
2、查表(查看目标MAC)
-------------------------------------------------------
LAN存在的问题 :
一个LAN属于一个广播域,其中的网络设备-交换机,
实现终端设备互联的同时,能够隔离冲突域,但是不能
隔离广播域。
解决方案:
VLAN - 虚拟局域网 , virtual lan ;
交换机上通过 VLAN 技术,实现广播域的隔离。
与LAN相同点:
1、同一个VLAN中的设备,都是属于同一个网段的;
2、任何一个 VLAN ,都是属于一个广播域;
如何配置 VLAN ?
-思路
创建VLAN、分配端口、验证配置、连通测试;
1、创建 VLAN
SW1(config)#vlan 14 //创建 VLAN 14 ;
SW1(config-vlan)#name XMAN //为 VLAN 修改名字;
SW1(config-vlan)#exit
SW1(config)#vlan 23 //创建 VLAN 23 ;
SW1(config-vlan)#name CaiWu //为 VLAN 修改名字;
SW1(config-vlan)#exit
2、将交换机的端口放入不同的 VLAN ;
SW1(config)#interface fas0/1
SW1(config-if)#no shutdown
SW1(config-if)#switchport mode access //设置端口模式
SW1(config-if)#swtichport access vlan 14
//将端口放入 vlan 14 ;
SW1(config)#interface fas0/4
SW1(config-if)#no shutdown
SW1(config-if)#switchport mode access //设置端口模式
SW1(config-if)#swtichport access vlan 14
//将端口放入 vlan 14 ;
SW1(config)#interface range fas0/2 , fas0/3
//同时进入多个端口
SW1(config-if-range)#no shutdown
SW1(config-if-range)#switchport mode access //设置端口模式
SW1(config-if-range)#swtichport access vlan 23
//将端口放入 vlan 23 ;
3、验证命令:
SW1# show vlan brief // 查看交换机拥有的VLAN信息;
4、测试命令:
@ 为不同VLAN的主机,配置不同网段的IP地址;
@ 测试 - 相同 VLAN 主机,可以互相访问;
不同 VLAN 主机,不可以互相访问;
如何删除 VLAN ?
1、首先将 VLAN 的成员端口移除;
SW1(config)#interface fas0/1
SW1(config-if)#no switchport access vlan 14
SW1(config)#interface fas0/4
SW1(config-if)#no switchport access vlan 14
即将成员端口 fas0/1 和 fas0/4 从 vlan14 中删除;
此时的端口,应该是回到了默认的 vlan 1 ;
2、其次删除 VLAN id ;
SW1(config)# no vlan 14
3、验证 :
SW1# show vlan brief
VLAN端口模式 - access/trunk/dynamic ;
Trunk:
该类型链路,可以同时承载多个 VLAN 流量,
每个 VLAN 流量,都会打上相应的 vlan 标签(vlan号);
通常使用 Trunk端口 连接的是 交换机;
Trunk的配置命令:
SW1(config)#interface fas0/23
SW1(config-if)#switchport mode trunk
Trunk的验证命令:
SW1#show interface trunk
//显示交换机上所有的trunk链路
Access:
该类型链路,同时只能属于 一个 VLAN ;
通常使用 access端口 连接的是 ”非交换机“ ;
注意:
VLAN 中的成员端口的最终模式 :
access
trunk
交换机的每个端口默认都是 dynamic(动态)模式;
Trunk链路发送出去的数据是带有 vlan 标签的,
这种标签,仅有交换机、路由器等网络设备才能认识;
PC是无法识别的,所以”连接 PC的端口,不可以配置为 Trunk“
Access链路发送出去的数据是不带有任何标签的;
Trunk 中存在一个特殊的 VLAN --native VLAN , 本地/本征 VLAN
该 vlan 中的 流量是没有标签的;默认值为 vlan 1 ;
故
当Trunk链路收到一个没有标签的数据包时,转发给本地交换机
上的 native vlan 中的成员端口,不会将其丢弃的;
注意:
交换机从来不丢包;
本文出自 “13416941” 博客,请务必保留此出处http://13426941.blog.51cto.com/13416941/1979848
原文地址:http://13426941.blog.51cto.com/13416941/1979848