Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19285920
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: 系统运维

2008-05-20 15:32:02

计算机网络技术的发展犹如戏剧舞台,你方唱罢我登台。从传统的以太网(10Mb/s)发展到快速以太网(100Mb/s)和千兆以太网(1000Mb/s)也不过几年的时间,其迅猛的势头实在令人吃惊。而现在中大型规模网络建设中,以千兆三层交换机为核心的所谓“千兆主干跑、百兆到桌面”的主流网络模型已不胜枚举。现在,网络业界对“三层交换”和VLAN这两词已经不感到陌生了。

什么是三层交换和VLAN

  要回答这个问题我们还是先看看以太网的工作原理。以太网的工作原理是利用二进制位形成的一个个字节组合成一帧帧的数据(其实是一些电脉冲)在导线中进行传播。首先,以太网网段上需要进行数据传送的节点对导线进行监听,这个过程称为CSMA/CD(Carrier Sense Multiple Access with Collision Detection带有冲突监测的载波侦听多址访问)的载波侦听。如果,这时有另外的节点正在传送数据,监听节点将不得不等待,直到传送节点的传送任务结束。如果某时恰好有两个工作站同时准备传送数据,以太网网段将发出“冲突”信号。这时,节点上所有的工作站都将检测到冲突信号,因为这时导线上的电压超出了标准电压。这时以太网网段上的任何节点都要等冲突结束后才能够传送数据。也就是说在CSMA/CD方式下,在一个时间段,只有一个节点能够在导线上传送数据。而转发以太网数据帧的联网设备是集线器,它是一层设备,传输效率比较低。
      冲突的产生降低了以太网的带宽,而且这种情况又是不可避免的。所以,当导线上的节点越来越多后,冲突的数量将会增加。显而易见的解决方法是限制以太网导线上的节点,需要对网络进行物理分段。将网络进行物理分段的网络设备用到了网桥与交换机。网桥和交换机的基本作用是只发送去往其他物理网段的信息。所以,如果所有的信息都只发往本地的物理网段,那么网桥和交换机上就没有信息通过。这样可以有效减少网络上的冲突。网桥和交换机是基于目标MAC(介质访问控制)地址做出转发决定的,它们是二层设备。我们已经知道了以太网的缺点及物理网段中冲突的影响,现在,我们来看看另外一种导致网络降低运行速度的原因:广播。广播存在于所有的网络上,如果不对它们进行适当的控制,它们便会充斥于整个网络,产生大量的网络通信。广播不仅消耗了带宽,而且也降低了用户工作站的处理效率。由于各种各样的原因,网络*作系统(NOS)使用了广播,TCP/IP使用广播从IP地址中解析MAC地址,还使用广播通过RIP和IGRP协议进行宣告,所以,广播也是不可避免的。网桥和交换机将对所有的广播信息进行转发,而路由器不会。所以,为了对广播进行控制,就必须使用路由器。路由器是基于第3层报头、目标IP寻址、目标IPX寻址或目标Appletalk寻址做出转发决定。路由器是3层设备。
      在这里,我们就容易理解三层交换技术了,通俗地讲,就是将路由与交换合二为一的技术。路由器在对第一个数据流进行路由后,将会产生一个MAC地址与IP地址的映射表,当同样的数据流再次通过时,将根据此映射表直接从二层进行交换而不是再次路由,提供线速性能,从而消除了路由器进行路由选择而造成网络的延迟,提高了数据包转发的效率。采用此技术的交换机我们常称为三层交换机。
      那么,什么是VLAN呢?VLAN(Virtual Local Area Network)就是虚拟局域网的意思。VLAN可以不考虑用户的物理位置,而根据功能、应用等因素将用户从逻辑上划分为一个个功能相对独立的工作组,每个用户主机都连接在一个支持VLAN的交换机端口上并属于一个VLAN。同一个VLAN中的成员都共享广播,形成一个广播域,而不同VLAN之间广播信息是相互隔离的。这样,将整个网络分割成多个不同的广播域(VLAN)。
一般来说,如果一个VLAN里面的工作站发送一个广播,那么这个VLAN里面所有的工作站都接收到这个广播,但是交换机不会将广播发送至其他VLAN上的任何一个端口。如果要将广播发送到其它的VLAN端口,就要用到三层交换机。

如何配置三层交换机创建VLAN   

      以下的介绍都是基于Cisco交换机的VLAN。Cisco的VLAN实现通常是以端口为中心的。与节点相连的端口将确定它所驻留的VLAN。将端口分配给VLAN的方式有两种,分别是静态的和动态的.形成静态VLAN的过程是将端口强制性地分配给VLAN的过程。即我们先在VTP (VLAN Trunking Protocol)Server上建立VLAN,然后将每个端口分配给相应的VLAN的过程。这是我们创建VLAN最常用的方法。

      动态VLAN形成很简单,由端口决定自己属于哪个VLAN。即我们先建立一个VMPS(VLAN Membership Policy Server)VLAN管理策略服务器,里面包含一个文本文件,文件中存有与VLAN映射的MAC地址表。交换机根据这个映射表决定将端口分配给何种VLAN。这种方法有很大的优势,但是创建数据库是一项非常艰苦而且非常繁琐的工作。
下面以实例说明如何在一个典型的快速以太局域网中实现VLAN。所谓典型的局域网就是指由一台具备三层交换功能的核心交换机接几台分支交换机(不一定具备三层交换能力)。我们假设核心交换机名称为:COM;分支交换机分别为:PAR1、PAR2、PAR3……,分别通过Port 1的光线模块与核心交换机相连;并且假设VLAN名称分别为COUNTER、MARKET、MANAGING……。

  1、设置VTP DOMAIN VTP DOMAIN 称为管理域。交换VTP更新信息的所有交换机必须配置为相同的管理域。如果所有的交换机都以中继线相连,那么只要在核心交换机上设置一个管理域,网络上所有的交换机都加入该域,这样管理域里所有的交换机就能够了解彼此的VLAN列表。
  COM#vlan database 进入VLAN配置模式
  COM(vlan)#vtp domain COM 设置VTP管理域名称COM
  COM(vlan)#vtp server 设置交换机为服务器模式
  PAR1#vlan database 进入VLAN配置模式
  PAR1(vlan)#vtp domain COM 设置VTP管理域名称COM
  PAR1(vlan)#vtp Client 设置交换机为客户端模式
  PAR2#vlan database 进入VLAN配置模式
  PAR2(vlan)#vtp domain COM 设置VTP管理域名称COM
  PAR2(vlan)#vtp Client 设置交换机为客户端模式
  PAR3#vlan database 进入VLAN配置模式
  PAR3(vlan)#vtp domain COM 设置VTP管理域名称COM
  PAR3(vlan)#vtp Client 设置交换机为客户端模式
     注意:这里设置交换机为Server模式是指允许在本交换机上创建、修改、删除VLAN及其他一些对整个VTP域的配置参数,同步本VTP域中其他交换机传递来的最新的VLAN信息;Client模式是指本交换机不能创建、删除、修改VLAN配置,也不能在NVRAM中存储VLAN配置,但可以同步由本VTP域中其他交换机传递来的VLAN信息。
  2、配置中继
  为了保证管理域能够覆盖所有的分支交换机,必须配置中继。Cisco交换机能够支持任何介质作为中继线,为了实现中继可使用其特有的ISL标签。ISL(Inter-Switch Link)是一个在交换机之间、交换机与路由器之间及交换机与服务器之间传递多个VLAN信息及VLAN数据流的协议,通过在交换机直接相连的端口配置ISL封装,即可跨越交换机进行整个网络的VLAN分配和进行配置。
  在核心交换机端配置如下:
  COM(config)#interface gigabitEthernet 2/1
  COM(config-if)#switchport
  COM(config-if)#switchport trunk encapsulation isl
  COM(config-if)#switchport mode trunk
  COM(config)#interface gigabitEthernet 2/2
  COM(config-if)#switchport
  COM(config-if)#switchport trunk encapsulation isl
  COM(config-if)#switchport mode trunk
  COM(config)#interface gigabitEthernet 2/3
  COM(config-if)#switchport
  COM(config-if)#switchport trunk encapsulation isl
  COM(config-if)#switchport mode trunk
    在分支交换机端配置如下:
  PAR1(config)#interface gigabitEthernet 0/1
  PAR1(config-if)#switchport mode trunk
  PAR2(config)#interface gigabitEthernet 0/1
  PAR2(config-if)#switchport mode trunk
  PAR3(config)#interface gigabitEthernet 0/1
  PAR3(config-if)#switchport mode trunk
……
  此时,管理域算是设置完毕了。
  3、创建VLAN
  一旦建立了管理域,就可以创建VLAN了。
  COM(vlan)#Vlan 10 name COUNTER 创建了一个编号为10名字为COUNTER的 VLAN
  COM(vlan)#Vlan 11 name MARKET 创建了一个编号为11名字为MARKET的 VLAN
  COM(vlan)#Vlan 12 name MANAGING 创建了一个编号为12名字为MANAGING的 VLAN
 ……
  注意,这里的VLAN是在核心交换机上建立的,其实,只要是在管理域中的任何一台VTP 属性为Server的交换机上建立VLAN,它就会通过VTP通告整个管理域中的所有的交换机。但是如果要将交换机的端口划入某个VLAN,就必须在该端口所属的交换机上进行设置。
  4、将交换机端口划入VLAN
  例如,要将PAR1、PAR2、PAR3……分支交换机的端口1划入COUNTER VLAN,端口2划入MARKET VLAN,端口3划入MANAGING VLAN……
  PAR1(config)#interface fastEthernet 0/1 配置端口1
  PAR1(config-if)#switchport access vlan 10 归属COUNTER VLAN
  PAR1(config)#interface fastEthernet 0/2 配置端口2
  PAR1(config-if)#switchport access vlan 11 归属MARKET VLAN
  PAR1(config)#interface fastEthernet 0/3 配置端口3
  PAR1(config-if)#switchport access vlan 12 归属MANAGING VLAN
  PAR2(config)#interface fastEthernet 0/1 配置端口1
  PAR2(config-if)#switchport access vlan 10 归属COUNTER VLAN
  PAR2(config)#interface fastEthernet 0/2 配置端口2
  PAR2(config-if)#switchport access vlan 11 归属MARKET VLAN
  PAR2(config)#interface fastEthernet 0/3 配置端口3
  PAR2(config-if)#switchport access vlan 12 归属MANAGING VLAN
  PAR3(config)#interface fastEthernet 0/1 配置端口1
  PAR3(config-if)#switchport access vlan 10 归属COUNTER VLAN
  PAR3(config)#interface fastEthernet 0/2 配置端口2
  PAR3(config-if)#switchport access vlan 11 归属MARKET VLAN
  PAR3(config)#interface fastEthernet 0/3 配置端口3
  PAR3(config-if)#switchport access vlan 12 归属MANAGING VLAN
  ……
  5、配置三层交换
  到这里,VLAN已经基本划分完毕。但是,VLAN间如何实现三层(网络层)交换呢?这时就要给各VLAN分配网络(IP)地址了。给VLAN分配IP地址分两种情况,其一,给VLAN所有的节点分配静态IP地址;其二,给VLAN所有的节点分配动态IP地址。下面就这两种情况分别介绍。
  我们假设给VLAN COUNTER分配的接口Ip地址为172.16.58.1/24,网络地址为:172.16.58.0,VLAN MARKET分配的接口Ip地址为172.16.59.1/24,网络地址为172.16.59.0,VLAN MANAGING分配的接口Ip地址为172.16.60.1/24,网络地址为172.16.60.0……。如果动态分配IP地址,则设网络上的DHCP服务器IP地址为172.16.1.11。
  (1)给VLAN所有的节点分配静态IP地址
  首先在核心交换机上分别设置各VLAN的接口IP地址,如下所示:
  COM(config)#interface vlan 10
  COM(config-if)#ip address 172.16.58.1 255.255.255.0 VLAN10接口IP
  COM(config)#interface vlan 11
  COM(config-if)#ip address 172.16.59.1 255.255.255.0 VLAN11接口IP
  COM(config)#interface vlan 12
  COM(config-if)#ip address 172.16.60.1 255.255.255.0 VLAN12接口IP
  ……
  再在各接入VLAN的计算机上设置与所属VLAN的网络地址一致的IP地址,并且把默认网关设置为该VLAN的接口地址。这样,所有的VLAN也可以互访了。
  (2)给VLAN所有的节点分配动态IP地址
  首先在核心交换机上分别设置各VLAN的接口IP地址和DHCP服务器的IP地址,如下所示:
  COM(config)#interface vlan 10
  COM(config-if)#ip addr ess 172.16.58.1 255.255.255.0 VLAN10接口IP
  COM(config-if)#ip helper-address 172.16.1.11 DHCP Server IP
  COM(config)#interface vlan 11
  COM(config-if)#ip address 172.16.59.1 255.255.255.0 VLAN11接口IP
  COM(config-if)#ip helper-address 172.16.1.11 DHCP Server IP
  COM(config)#interface vlan 12
  COM(config-if)#ip address 172.16.60.1 255.255.255.0 VLAN12接口IP
  COM(config-if)#ip helper-address 172.16.1.11 DHCP Server IP
  ……
  再在DHCP服务器上设置网络地址分别为172.16.58.0,172.16.59.0,172.16.60.0的作用域,并将这些作用域的“路由器”选项设置为对应VLAN的接口IP地址。这样,可以保证所有的VLAN也可以互访了。
  最后在各接入VLAN的计算机进行网络设置,将IP地址选项设置为自动获得IP地址即可。

2900XL VLAN config  

--------------------------------------------------------------------------------  
Switch# vlan database
Switch(vlan)# vtp domain domain-name
Switch(vlan)# vtp domain domain-name password password-value
Switch(vlan)# vtp server
Switch(vlan)# show vtp status
若想Disable VTP,只须将VTP模式改为transparent
即Switch(vlan)# vtp transparent

2. 激活VTP V2(交换机默认的是VTP V1)。

Switch# vlan database
Switch(vlan)# vtp v2-mode
Switch# show vtp status

3. 增加VLAN。Catalyst 2900XL系列交换机最大支持64个激活的VLAN,

VLAN ID 号从1-1005。

Switch# vlan database
Switch(vlan)# vlan vlan-id name vlan-name
Switch# show vlan name vlan-name
Switch(vlan)# no vlan vlan-id //删除VLAN

4. 将端口加入VLAN。

Switch# configure terminal
Switch(config)# interface interface
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan vlan-id
Switch(config-if)# show interface interface-id switchport

5. 配置trunk 端口。

Switch# configure terminal
Switch(config)# interface interface
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk encapsulation isl
Switch(config-if)# end
Switch# show interface interface switchport
Switch# copy running-config startup-config

6. 配置trunk 上允许的VLAN。

Switch(config)# interface interface
Switch(config-if)# switchport mode trunk
Switch(config-if)# switchport trunk allowed vlan remove vlan-id-range
Switch(config-if)# switchport trunk allowed vlan add vlan-id-range
Switch(config-if)# end
Switch# show interface interface switchport allowed-vlan

若想取消trunk端口,只需
Switch(config-if)# no switchport mode

7. 使用STP实现负载。

实现负载分担有两种方法:

1) 使用端口优先级。
配置:

Switch_1(config-if)# interface fa0/1
Switch_1(config-if)# spanning-tree vlan 8 9 10 port-priority 10
Switch_1(config)# interface fa0/2
Switch_1(config-if)# spanning-tree vlan 3 4 5 6 port-priority 10

2) 使用路径值。例如:

Switch_1(config)# interface fa0/1
Switch_1(config-if)# spanning-tree vlan 2 3 4 cost 30
Switch_1(config)# interface fa0/2
Switch_1(config-if)# spanning-tree vlan 8 9 10 cost 30
设备选用Catalyst5500交换机1台,安装WS-X5530-E3管理引擎,多块WS-X5225R及WS-X5302路由交换模块,WS-X5302被直接插入交换机,通过二个通道与系统背板上的VLAN 相连,从用户角度看认为它是1个1接口的模块,此接口支持ISL。在交换机内划有3个虚拟网,分别名为default、qbw、rgw,通过WS-X5302实现虚拟网间路由。
以下加重下横线部分,如set system name  5500C为需设置的命令。

  设置如下:
Catalyst 5500配置:

  begin

set password ?$FMFQ$HfZR5DUszVHIRhrz4h6V70
set enablepass ?$FMFQ$HfZR5DUszVHIRhrz4h6V70
set prompt Console>
set length 24 default
set logout 20
set banner motd ^C^C
!
#system
set system baud  9600
set system modem disable
set system name  5500C
set system location
set system contact
!
#ip
set interface sc0 1 10.230.4.240 255.255.255.0 10.230.4.255
  set interface sc0 up
set interface sl0 0.0.0.0 0.0.0.0
set interface sl0 up
set arp agingtime 1200
set ip redirect   enable
set ip unreachable   enable
set ip fragmentation enable
set ip route 0.0.0.0 10.230.4.15 1
set ip alias default 0.0.0.0
!
#Command alias
!
#vtp
set vtp domain hne
set vtp mode server
set vtp v2 disable
set vtp pruning disable
set vtp pruneeligible 2-1000
clear vtp pruneeligible 1001-1005
set vlan 1 name default type ethernet mtu 1500 said 100001 state active
set vlan 777 name rgw type ethernet mtu 1500 said 100777 state active
set vlan 888 name qbw type ethernet mtu 1500 said 100888 state active
set vlan 1002 name fddi-default type fddi mtu 1500 said 101002 state active
set vlan 1004 name fddinet-default type fddinet mtu 1500 said 101004 state active bridge 0x0 stp ieee
set vlan 1005 name trnet-default type trbrf mtu 1500 said 101005 state active bridge 0x0 stp ibm
set vlan 1003 name token-ring-default type trcrf mtu 1500 said 101003 state active parent 0 ring 0x0 mode srb aremaxhop 7 stemaxhop 7
!
#set boot command
set boot config-register 0x102
set boot system flash bootflash:cat5000-sup3.4-3-1a.bin
!
#module 1 : 2-port 1000BaseLX Supervisor
set module name    1   
set vlan 1    1/1-2
set port enable     1/1-2
!
#module 2 : empty
!
#module 3 : 24-port 10/100BaseTX Ethernet
set module name    3   
set module enable  3
set vlan 1    3/1-22
set vlan 777  3/23
set vlan 888  3/24
set trunk 3/1  on isl 1-1005
#module 4 empty
!
#module 5 empty
!
#module 6 : 1-port Route Switch
set module name    6   
set port level      6/1  normal
set port trap       6/1  disable
set port name       6/1
set cdp enable   6/1
set cdp interval 6/1 60
set trunk 6/1  on isl 1-1005
!
#module 7 : 24-port 10/100BaseTX Ethernet
set module name    7   
set module enable  7
set vlan 1    7/1-22
set vlan 888  7/23-24
set trunk 7/1 on isl 1-1005
set trunk 7/2 on isl 1-1005
!
#module 8 empty
!
#module 9 empty
!
#module 10 : 12-port 100BaseFX MM Ethernet
set module name    10  
set module enable  10
set vlan 1    10/1-12
set port channel 10/1-4 off
set port channel 10/5-8 off
set port channel 10/9-12 off
set port channel 10/1-2 on
set port channel 10/3-4 on
set port channel 10/5-6 on
set port channel 10/7-8 on
set port channel 10/9-10 on
set port channel 10/11-12 on
#module 11 empty
!
#module 12 empty
!
#module 13 empty
!
#switch port analyzer
!set span 1 1/1 both inpkts disable
set span disable
!
#cam
set cam agingtime 1-2,777,888,1003,1005 300
end

5500C> (enable)
  WS-X5302路由模块设置:
  Router#wri t
Building configuration...
  Current configuration:
!
version 11.2
no service password-encryption
no service udp-small-servers
no service tcp-small-servers
!
hostname Router
!
enable secret 5 ?$w1kK$AJK69fGOD7BqKhKcSNBf6.
!
ip subnet-zero
!
interface Vlan1
ip address 10.230.2.56 255.255.255.0
!
interface Vlan777
ip address 10.230.3.56 255.255.255.0
!
interface Vlan888
ip address 10.230.4.56 255.255.255.0
!
no ip classless
!
line con 0
line aux 0
line vty 0 4
password router
login
!
end

  Router#
交换设备仍选用Catalyst5500交换机1台,安装WS-X5530-E3管理引擎,多块WS-X5225R在交换机内划有3个虚拟网,分别名为default、qbw、rgw,通过Cisco3640路由器实现虚拟网间路由。交换机设置与例一类似。

路由器Cisco3640,配有一块NM-1FE-TX模块,此模块带有一个快速以太网接口可以支持ISL。Cisco3640快速以太网接口与交换机上的某一支持ISL的端口实现连接,如交换机第3槽第1个接口(3/1口)。

  Router#wri t
Building configuration...  
Current configuration:
!
version 11.2
no service password-encryption
no service udp-small-servers
no service tcp-small-servers
!
hostname Router
!
enable secret 5 ?$w1kK$AJK69fGOD7BqKhKcSNBf6.
!
ip subnet-zero
!
interface FastEthernet1/0
!
interface FastEthernet1/0.1
encapsulation isl 1
ip address 10.230.2.56 255.255.255.0
!
interface FastEthernet1/0.2
encapsulation isl 777
ip address 10.230.3.56 255.255.255.0
!
interface FastEthernet1/0.3
encapsulation isl 888
ip address 10.230.4.56 255.255.255.0
!
no ip classless
!
line con 0
line aux 0
line vty 0 4
password router
login
!
end
  Router#

阅读(383) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~