交换原理、产品、参数——

交换机工作层面:osi的第二层,数据链路层

交换机分类:
按照工作的层面:
2层
多层交换机

按照网络中地位:
核心交换机
分布交换机
接入交换机
交换机几个重要参数:
线速
背板带宽
接口速率
转发速率
SW原理:
1.基于源MAC地址学习
2.基于目标MAC地址转发和过滤。
3.同一接口可以学习到多个MAC地址
4.同一个MAC地址被多个接口学习到,选择后学习到的接口
5.对于没有目标MAC地址表项的帧,向本机的其他所有接口转发
6.收到广/组播帧和未知单播都会向本机的其他所有接口转发
7.一个主机mac会被本地二层网络内所有交换机学习到



查看MAC地址表的命令:
Sw1#showmac-address-table

默认动态的MAC地址条目老化时间是300S,可以修改这个老化时间--可以针对单个VLAN来改动
Sw#showmac-address-tableaging-time查看老化时间
Sw1(config)#mac-address-tableaging-time150vlan1有的版本没有
sw1#shmac-address-tabledynamic产看动态学习的地址

广播和泛洪的区别:
广播的目的Mac是全F,泛洪不是广播,目的Mac是具体的Mac地址,实质上泛洪是单播的多重帧复制,之所以容易搞混,是因为现象是相同的,广播和泛洪都会将数据帧发往同属Vlan的所有端口以及Trunk链路,Trunk链路不属于任何Vlan,转发时会打上VlanID。

例如:ARP请求就是一个广播;泛洪的触发点是收到一个单播数据帧,发现目的Mac在CAM表中没有匹配的条目。

mac地址与IP地址的绑定:
router(config)#arp202.196.191.1900010.40bc.b54earpa
sw1(config)#arp1.1.1.10011.0001.0001arpaf0/1

端口与接口的绑定:
SW3(config)#mac-address-tablestatic0001.0001.0001vlan1interfacef0/1
主机上:
ARP-s10.88.56.7200-10-5C-AD-72-E3

以下功能在思科2950、3550、4500、6500系列交换机上可以实现,但是需要注意的是2950、3550需要交换机运行增强的软件镜像(EnhancedImage)。
基于MAC地址的用户流量过滤:
Switch(config)Macaccess-listextendedMAC10
#定义一个MAC地址访问控制列表并且命名该列表名为MAC10
Switch(config)permithost0009.6bc4.d4bfany
#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机
Switch(config)permitanyhost0009.6bc4.d4bf
#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机
Switch(config-if)interfaceFa0/20
#进入配置具体端口的模式
Switch(config-if)macaccess-groupMAC10in
#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)
Switch(config)nomacaccess-listextendedMAC10
#清除名为MAC10的访问列表

----------------------------------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------------------------------

VLAN(VirtualLAN)虚拟局域网技术

通过VLAN这一技术可以将一个物理局域网划分为多个虚拟的逻辑局域网,每一个虚拟局域网之间是隔离的,并且每一个虚拟局域网是一个单独的广播域。

·VLAN可以隔离2层的广播域。

·AVLAN=(一个)广播域 = (一个)逻辑子网

·使用VLAN好处:
 1.有效的带宽利用
 2.提高了安全性
 3.隔离故障域

VLAN有两种类型:
1、端到端的VLAN:可以扩展到整个网络的VLAN
2、本地VLAN:
局限于特定域的VLAN,只在本接入层交换机或小范围的分布层之间起作用。
 在单个配线架之内的单台接入交换机上配置最少数目的VLAN,而不是在单台交换上配置多个部门的VLAN。

VLAN的成员模式:分两种

·静态VLAN(也叫基于端口的VLAN):
 ——手工配置交换机端口,将其分配进特定的VLAN。只要接到这个端口的设备就属于此VLAN。
Sw1#showcdpneighborsdetail

·动态VLAN:
需要先在网络中部署一台VMPS服务器,在服务器上要先保存每一个MAC地址和VLAN的映射。
交换机事先并没有将接口固定的分配进某个VLAN,而是在接口有电脑接入时,再根据收到的MAC地址向VMPS服务器查询,然后根据已经输入到VMPS(VLANManagementPolicyServer)中的源MAC地址来分配VLAN。来决定应该将接口分配进哪一个VLAN。
Sw1(config)#vmpsserver192.168.1.1

·VLAN的范围:
 根据平台和软件版本不同,Cisco交换机最多支持4096个VLAN。
VLAN号共有4096个,0-4095

 0,4095:这两个号保留,仅限系统使用。用户不能查看。
 1:CISCO默认VLAN,不能删除。
 2-1001:用于以太网的VLAN,用户可根据这一段号码自己创建VLAN
 1002-1005:用于FDDI和令牌环的默认VLAN,不能删除。
 1006-4094:仅用于以太网的VLAN.扩展的VLAN,只有3550以上的交换机才能配,且必须将VTP模式设为透明模式。
----------------------------------------------------------------------------------------------------------------------------------------------


VLAN Trunk

·Trunk:在单条物理链路上承载多个VLAN的流量。一般用在交换机与交换机之间。

·Trunk运用的2种协议:
 802.1Q基本标准的IEEE协议,属业界标准。
 ISL(Inter-SwitchLink):Cisco专有的Trunk封装方式。
注意:封装的时候在trunck口进行封装,对于同一个交换机内部从一个接口到另一个接口的转发过程不需要打标签。

·ISL(Inter-SwitchLink):
 26(报头)+4(CRC)=30Bytes(CRC:CyclicRedundancyCheck)
 VlanID一共有15个bit,但只用到10个bit,2^10=1024字节
所以,ISL最多只能支持1024个VLAN

 Sw2940/2950接口不支持ISL封装,仅支持802.1Q
在SW3550中,接口强行起Trunk模式,必须先指定一种封装模式

MTU:1548bytes
 如果设备接收到没有被封装的帧,那么ISL将丢弃这些帧,而且所有帧都要封装

·802.1Q:

DestSrcLen/EtypeDataFCS

DestSrcTag

在SM和Type字段之间插入4个字节的Tag字段,并将原有的FCS重写

 MTU:1522bytes

使用12个bit来表示VLAN-ID,所以最多可支持4096个VLAN

·对比ISL,802.1Q有如下好处:
 1.具有更低的开销,因此转发效率略高,(4/30bytes)
 2.业界标准,有更广泛的支持。
 3.支持Qos的802.1p字段。(就是Tag中的3bit的PRI位)
 
 如果不支持802.1Q的设备接收到此帧,该设备将忽略帧中的Tag,当作标准的以太网帧转发。


·NativeVLANs
在802.1Q中允许设定一个NativeVLANs,这个VLAN中的流量不用打tag,本技术是dot1q中才有的。

802.1Q把Untag的帧定义为NativeVLAN。(默认是VLAN1)一个小的优化方法,指定的VLAN数据在传输过程中不用打上TAG来标识,系统默认就知道。每台交换机必须指定一样的,只能有一个VLAN成为NativeVlan。
 Sw1(config-if)#switchporttrunknativevlan2

 Sw1#showintf0/6switchport
 
·802.1Q-in-Q:(802.1QTunneling)
 802.1Q支持隧道特性,允许服务提供商在其VLAN内部传输用户VLAN,保留单独客户的VLAN分配,而无需要求它们的VLAN分配是唯一的。

服务提供商配置:
Sw1(confit-if)#switchportaccessvlan30划入SP的VLAN
Sw1(confit-if)#switchportmodedotlq-tunnelQ-in-Q

客户端配置:
Sw3(config-if)#switchportmodetrunk
Sw3(config-if)#switchporttrunkencapsulation[dot1q|isl]
Sw3(config-if)#switchporttrunkallowedvlan1-100,111
 (在此Trunk口上只允许VLAN1-100,111的流量通过)


DTP(DynamicTrunkingProtocol)cisco专有
·在交换链路上发送此种报文,来协商双方是否能形成Trunk。
·接口的五种模式:Access,trunk,desirable,auto,(nonegotiate)

        Send  Receive (DTP:DynamicTrunkProtol)
access     -    - (此接口接设备)
trunk(on)   √√ (本端无条件Trunk.不管对端是否起trunk)
desirable   √    √ (收发DTP,愿意成为Trunk,)默认就是这种类型
auto     ×    √ (平时仅收DTP,愿意成为Trunk)

nonegotiate××(禁止DTP信息)通常和trunk联用,即起trunk,又不用发DTP帧

Sw1(config-if)#switchportmodeaccess
Sw1(config-if)#switchportmodedynamicdesirable
(默认模式)
Sw1(config-if)#switchportmodedynamicauto
Sw1(config-if)#switchportmodetrunk
Sw1(config-if)#switchportnonegotiate

(nonegotiate只能和trunk联用)

Sw1(config-if)#switchporttrunkencapsulationdotlq指定封装格式

Sw1#showinterfacetrunk查看trunk端口信息,验证是否已经起了trunk

Sw1#Showinterfacef0/24switchport查看端口的配置

注意:2950、3550默认是dynamicdesirable、3560默认是dynamicauto。

---------------------------------------------------

VTP(VLANTrunkProtocol)CISCO私有的协议
·作用:用来在交换区域内同步VLAN的信息

·VTP是一种2层消息协议,通过管理VTP域内的VLAN增/删/改,保持VLAN配置的一致性。
 交换机只能在802.1Q/ISLTrunk中传送VTP信息。

·要实现VTP,首先要配置一个VTP域,每台交换机都可以配置一个VTP域名,一个VTP域就是由一组VTP域名相同的交换机组成,一台交换机只能加入一个VTP域。

·VTP的三种模式:
       Server Client Transparent(透明模式)
对VLAN做增/删/改√   ×    √(仅在本地有效)
转发VTP(vlan)信息  √   √    √
同步vlan信息   √   √    ×
保存进NVRAM √   ×    √

·VTP一个重要元素:ConfigurationRevision(配置修订版本号)
 每当修改VLAN信息一次,版本号就加1,版本低的SW跟版本高的SW学习VLAN信息。
版本号越高说明越新
修订号高的同步修订号低的

·VTP信息每5分钟通告一次,或触发更新(VLAN配置改变时通告)。

·VTP帧发向组播MAC地址,0100.0ccc.cccc

·VTP有四种消息类型:1、汇总通告2、子网通告3、通告请求4、VTP加入消息

·VTP的同步是由低版本号的交换机跟着高版本号的交换机做同步,server和client谁跟谁学不是看模式,而是看配置版本号。

·CISCO的交换机默认都是Server模式,而且没有域名,一旦一台SW配置了域名,其他SW都会学习过去。

·影响VTP的因素:1.trunk必须在trunk上传输
2.domain域名(须取相同名称)
3.password密码必须相同


注意:交换机与交换机之间用协商模式起Trunk的时候,如果两端VTP信息不匹配,也起不了Trunk,切记这一点。
所以,起TRUNK有三点关联:
1、封装类型
2、接口模式
3、两端VTP信息是否匹配【如果不匹配会影响动态建立邻居】


VTP Pruning

·VTP修剪能够确定Trunk何时正在扩散不必要的流量。并将其VLAN修剪掉。

Sw1(config)#vtppruning
在Server端配置,其他SW会学习到。

·VTP版本:(V1/V2/V3)
 默认是V1。Cisco建议一个域中版本一致。

Sw1(config)#vtpversion2

Sw3#vlandatabase
Sw3(vlan)#vtpv2-mode

·VTP认证:

Sw2(config)#vtppasswordaaa

Sw3#vlandatabase
Sw3(vlan)#vtppasswordaaa

如何检查密码相同/不同:
Sw2#showvtppassword

---------------------------------------------------------------------------------------------------------------

SWITCH常用配置命令
Sw1#showcdpneighborsdetail查看邻居设备
Showmac-address-table查看MAC地址
Showmac-address-tableaging-time看MAC地址老化时间
Sw1(config)#mac-address-tableaging-time150vlan10修改老化时间

创建VLAN
Sw1(config)#vlan10
Sw1(config)#namesales

在2900等旧机型上要用数据库模式来创建:
Sw1#vlandatabase
Sw1#vlan10namesales
Sw1#exit这里一定要用exit,否则无法退出
Showvlan查看VLAN
Showvlanbrief查看VLAN摘要信息
Showinterfacesummary本命令可看到交换机上的所有端口,以及哪些接口上连有设备
Showinterfacestatus本命令可看到活动接口的双工模式,trunk,以及接口属于哪个VLAN

将端口划进VLAN
Intf0/12
Switchportmodeaccess指定为access(接入口)模式
Switchportaccessvaln10划分入VLAN
Intferfacerangef0/5,f0/7,f0/12同时划分多个端口
Intferfacerangefastethernet0/5-8,fastethernet0/12-18
本台交换机起Trunk
Intf0/24
Switchportmodetrunk强制起Trunk
Access强制为接入口
Dynamicdesirable协商(默认)
Dynamicauto被动接受
Switchporttrunkencapsulationisl(dot1q|negotiate)
封装模式,如果使用negotiate参数表示协商
Sw1(config-if)#switchportnonegotiate本接口不发送协商信息,通常和trunk模式联用
Switchporttrunknativevlan10设置一个不用打TAG的VLAN,大家都知道,在每台交换机上都要一致,默认是VLAN1。
Switchporttrunkallowedvlan10允许trunk口通过哪些VLAN
Switchporttrunkallowedall允许所有VLAN通过
Showinterfacetrunk
Showintf0/24switchport

配置VTP域
Sw1(config)#vtpdomainchina
Sw1(config)#vtpmodeserver|client|transparent
在旧机型上的配置方法:
Sw1#vlandatabase
Sw1#vtpdomainchina
Sw1#vtpserver|client|transparent

Showvtpstatus查看VTP的各种配置信息
在VTP中还可设置密码

在三层交换机中完成VLAN间的通信
Sw1(config)#iprouting起用路由
Sw1(config)#routerrip开启路由进程,也可用静态路由
Sw1(config-router)#network100.1.1.0将VLAN网段宣告
Sw1(config)#interfacevlan100

Sw1(config-if)#ipaddress100.1.1.1指定VLAN的IP地址,也是VLAN网段的网关
Sw1(config-if)#noshutdown

在交换机中建立VLAN后,会在FLASH中生成一个VLAN文件,可用下列命令查看、删除。
Showflash
Deletevlan.dat
Deleteconfig.text
删除配置文件