专题2  路由器和交换机基础
本专题内容:
    通过学习本专题认识路由器和交换机的基本构件,并掌握路由器和交换机的基本配置方法和操作命令。
一、路由器基础
1、路由器的基本组成
路由器由硬件和软件组成。硬件主要包括处理器、内存、接口等物理硬件和电路组成;软件主要由路由器的IOS操作系统和运行配置文件组成。
1)路由器的CPU
与计算机相类似,运行着IOSCisoc路由器也包括一个中央处理器(CPU。不同系列和型号的路由器,CPU也不尽相同。CPU是路由器的处理中心,路由器的处理器负责执行转发数据包所需的工作,如维护路由器和桥接所需的各种路由表和路由运算等,路由器对数据包的处理速度很大程度上取决于处理器的类型和性能。
2)路由器的存储器
内存是路由器存储信息和数据的地方,CISCO路由器有以下几种内存组件:
AROMRead Only Memory
ROM 保存着路由器的引导或启动程序(Bootstrap Program)。这也是路由器运行的第一个软件(加电自检POSTPower-On Self-Test),负责让路由器进入正常的工作状态。有些路由器将一套完整的IOS保存在ROM中,以便在另一个IOS不能使用时,作应急之用。ROM通常存放在一个或多个芯片上。路由器中的ROM是可擦写的,所以IOS是可以升级的。
BNVRAM(Nonvolatile Random Access Memory)
NVRAM的主要作用是保存IOS在路由器启动时读入的配置数据,即常说的启动配置或备份配置。当路由器加电启动时,首先寻找和执行的即是该配置,如果该配置存在,路由器启动后,该配置就成了运行配置,当修改运行配置并执行存储后,运行配置就被复制到NVRAM中,当下次路由器加电后,该配置就会被自动调用。
CFLASH RAM
FLASH可以形象地比作我们常用的PC机的硬盘,但远没有硬盘的容量大,主要用处是保存IOS软件,维持路由器的正常工作。若路由器安装了FLASH,它便是用来引导路由器的IOS软件的默认位置。只要FLASH的容量足够大,便可以保存多个IOS映象文件,以提供多重启动。FLASH主要安装在主机的SIMM槽上,或是一块PCMAIC卡。
DRAMRandom Access Memory
RAMPC机上的随机存储器相似,提供临时信息的存储,同时保存着当前的路由表和配置信息,即平常所说的运行配置,IOS通过RAM满足其所有的常规存储的需要。在配置IOS时,就相当于修改了路由器的运行配置。
3)路由器接口
路由器接口用作将路由器连接到网络,可以分为局域网接口和广域网接口两种。由于路由器型号的不同,接口数目和类型也不尽一样。常见的接口主要有以下几种:
A)高速同步串口:可连接DDN,帧中继(Frame Relay),X.25PSTN(模拟电话线路)。
BAUI端口:即粗缆口。一般需要外接转换器(AUI-RJ45),连接以太网络。
CBRI端口:可以连接ISDN网络(2B+D),可作为局域网接入Internet之用。
DAUX端口,该端口为异步端口,主要用于远程配置,也可用于拔号备份,可与MODEM连接。支持硬件流控制(Hardware Flow Ctrol)。
EConsole端口:该端口为异步端口,主要连接终端或运行终端仿真程序的计算机,在本地配置路由器。不支持硬件流控制。
4)路由器接口的命名规则
所有路由器都有接口(Interface,每个接口都有自己的名字和编号。一个接口的全名由类型标识及数字构成,编号自0开始。
对于接口固定的路由器(如2500系列)或采用模块化接口的路由器(如4700系列),在接口的全名称中,只采用一个数字,并根据它们在路由器的物理顺序进行编号,如 Ethernet0Serial0等;
对于支持在线拨插和删除或具有动态更改物理接口配置的路由器,其接口全名称中则包含两个数字,如2600系列、7200系列,其接口标识名称为Ethernet0/0Serial1/0等;
对于支持万用接口处理器(VIP的路由器,其接口编号形式为插槽/端口适配器/端口号,如7500系列路由器,其接口标识名称编号为:Ethernet4/0/1等。
2、路由器的启动过程
1)加电之后,ROM运行加电自检程序(POST,检查路由器的处理器、接口及内存等硬件设备。
2)执行路由器中的启动程序(Bootstrap,搜索CISCOIOS。路由器中的IOS可从ROM中装入,或从Flash RAM中装入,也可从TFTP服务器装入。
3)装入IOS后,寻找配置文件。配置文件通常在NVRAM中。配置文件也可从TFTP服务器装入。
4)装入配置文件后,其中的信息将激活有关接口、协议和网络参数。
5)当找不到配置文件时,路由器进入配置模式。
3、路由器的配置方式
一般来说,可以用5种方式来设置路由器:
1Console口接终端或运行终端仿真软件的微机;
PC机的串口直接通过Rollover线与路由器控制台端口Console相连,在PC计算机上运行终端防真软件,与路由器进行通信,完成路由器的配置。
2AUX口接MODEM,通过电话线与远方的终端或运行终端仿真软件的微机相连;
3)通过Ethernet上的TFTP服务器;
TFTP是一个TCP/IP简单文件传输协议,可将配置文件从路由器传送到TFTP服务器上,也可将配置文件从TFTP服务器传送到路由器上。TFTP不需要用户名和口令,使用非常简单。
4)通过Ethernet上的TELNET程序;
如果路由器已有一些基本配置,至少有一个端口有效(如Ethernet 口),就可通过运行Telnet程序的计算机作为路由器的虚拟终端与路由器建立通信,完成路由器的配置。
5)通过Ethernet上的SNMP网管工作站。
路由器可通过运行网络管理软件的工作站配置,如CiscoCiscoWorksHPOpenView等。
但路由器的第一次设置必须通过第一种方式进行,此时终端的硬件设置如下:
波特率 :9600
数据位 :8
停止位 :1
奇偶校验:  
4、路由器的命令状态
1router>
路由器处于用户命令状态,这时用户可以看路由器的连接状态,访问其它网络和主机,但不能看到和更改路由器的设置内容。
2router#
router>提示符下键入enable,路由器进入特权命令状态router#,这时不但可以执行所有的用户命令,还可以看到和更改路由器的设置内容。
3router(config)#
router#提示符下键入configure terminal,出现提示符router(config)#,此时路由器处于全局设置状态,这时可以设置路由器的全局参数。
4router (config-if)# router (config-line)# router (config-router)#;…
路由器处于局部设置状态,这时可以设置路由器某个局部的参数。
5>
路由器处于RXBOOT状态,在开机后60秒内按ctrl-break可进入此状态,这时路由器不能完成正常的功能,只能进行软件升级和手工引导。
6)设置对话状态
这是一台新路由器开机时自动进入的状态,在特权命令状态使用SETUP命令也可进入此状态,这时可通过对话方式对路由器进行设置。
5、设置对话过程
在路由器设置初始对话过程中有四个部分:显示提示信息、全局参数的设置、接口参数的设置、显示结果。
利用设置对话过程可以避免手工输入命令的烦琐,但它还不能完全代替手工设置,一些特殊的设置还必须通过手工输入的方式完成。
1)显示提示信息
进入设置对话过程后,路由器首先会显示一些提示信息:
--- System Configuration Dialog ---
At any point you may enter a question mark '?' for help.
Use ctrl-c to abort configuration dialog at any prompt.
Default settings are in square brackets '[]'.
这是告诉你在设置对话过程中的任何地方都可以键入“?”得到系统的帮助,按ctrl-c可以退出设置过程,缺省设置将显示在‘[]’中。然后路由器会问是否进入设置对话:
Would you like to enter the initial configuration dialog? [yes]:
如果按y或回车,路由器就会进入设置对话过程。首先你可以看到各端口当前的状况:
First, would you like to see the current interface summary? [yes]:
Any interface listed with OK? value "NO" does not have a valid configuration
Interface
IP-Address
OK?
Method
Status
Protocol
Ethernet0
unassigned
NO
unset
up
up
Serial0
unassigned
NO
unset
up
up
………
………
……
2)全局参数的设置
显示提示信息以后,路由器就开始全局参数的设置:
Configuring global parameters:
A)设置路由器名:
Enter host name [Router]:
B)设置进入特权状态的密文(secret),此密文在设置以后不会以明文方式显示:
The enable secret is a one-way cryptographic secret used
instead of the enable password when it exists.
Enter enable secret: cisco
C)设置进入特权状态的密码(password),此密码只在没有密文时起作用,并且在设置以后会以明文方式显示:
The enable password is used when there is no enable secret
and when using older software and some boot p_w_picpaths.
Enter enable password: pass
D)设置虚拟终端访问时的密码:
Enter virtual terminal password: cisco
E)询问是否要设置路由器支持的各种网络协议:
Configure SNMP Network Management? [yes]:
Configure DECnet? [no]:
Configure AppleTalk? [no]:
Configure IPX? [no]:
Configure IP? [yes]:
Configure IGRP routing? [yes]:
Configure RIP routing? [no]:
………
F)如果配置的是拨号访问服务器,系统还会设置异步口的参数:
  Configure Async lines? [yes]:
a) 设置线路的最高速度:
Async line speed [9600]:
b) 是否使用硬件流控:
Configure for HW flow control? [yes]:
c) 是否设置modem
  Configure for modems? [yes/no]: yes
d) 是否使用默认的modem命令:
    Configure for default chat script? [yes]:
e) 是否设置异步口的PPP参数:
  Configure for Dial-in IP SLIP/PPP access? [no]: yes
f) 是否使用动态IP地址:
  Configure for Dynamic IP addresses? [yes]:
g) 是否使用缺省IP地址:
  Configure Default IP addresses? [no]: yes
h) 是否使用TCP头压缩:
   Configure for TCP Header Compression? [yes]:
i) 是否在异步口上使用路由表更新:
    Configure for routing updates on async links? [no]: y
j) 是否设置异步口上的其它协议。
3)接口参数的设置
设置全局参数后,接下来系统会对每个接口进行参数的设置。
AConfiguring interface Ethernet0:
a) 是否使用此接口:
  Is this interface in use? [yes]:
b) 是否设置此接口的IP参数:
Configure IP on this interface? [yes]:
c) 设置接口的IP地址:
  IP address for this interface: 192.168.162.2
d) 设置接口的IP子网掩码:
   Number of bits in subnet field [0]:
Class C network is 192.168.162.0, 0 subnet bits; mask is /24
B)其他接口
4)显示结果
在设置完所有接口的参数后,系统会把整个设置对话过程的结果显示出来:
The following configuration command script was created:
hostname Router
enable secret 5 $1$W5Oh$p6J7tIgRMBOIKVXVG53Uh1
enable password pass
…………
请注意在enable secret后面显示的是乱码,而enable password后面显示的是设置的内容。
显示结束后,系统会问是否使用这个设置:
Use this configuration? [yes/no]: yes
如果回答yes,系统就会把设置的结果存入路由器的NVRAM中,然后结束设置对话过程,使路由器开始正常的工作。  
6、常用命令
1)帮助命令
IOS操作中,无论任何状态和位置,都可以键入“?”得到系统的帮助。
输入命令的部分紧接?符号,系统提示以该字符开头的可用命令。
输入命令后加空格再输入?符号,系统提示该命令下面可用的子命令。
2)改变命令状态 
任务
命令
进入特权命令状态
enable
退出特权命令状态
disable
进入设置对话状态
setup
进入全局设置状态
config terminal
退出全局设置状态
end
进入端口设置状态
interface type slot/number
进入子端口设置状态
interface type number.subinterface [point-to-point | multipoint]
进入线路设置状态
line type slot/number
进入路由设置状态
router protocol
退出局部设置状态
exit
3)显示命令
任务
命令
查看版本及引导信息
show version
查看运行设置
show running-config
查看开机设置
show startup-config
显示端口信息
show interface type slot/number
显示路由信息
show ip router
4)拷贝命令
用于IOSCONFIG的备份和升级 
5)网络命令 
任务
命令
登录远程主机
telnet hostname|IP address
网络侦测
ping hostname|IP address
路由跟踪
trace hostname|IP address
 
6)基本设置命令 
任务
命令
全局设置
config terminal
设置访问用户及密码
username username password password
设置特权密码
enable secret password
设置路由器名
hostname name
设置静态路由
ip route destination subnet-mask next-hop
启动IP路由
ip routing
启动IPX路由
ipx routing
端口设置
interface type slot/number
设置IP地址
ip address address subnet-mask
设置IPX网络
ipx network network
激活端口
no shutdown
物理线路设置
line type number
启动登录进程
login [local|tacacs server]
设置登录密码
password password
7、使用可变长的子网掩码
通过使用可变长的子网掩码可以让位于不同接口的同一网络编号的网络使用不同的掩码,这样可以节省IP地址,充分利用有效的IP地址空间。
如下图所示:
Router1Router2E0端口均使用了C类地址192.1.0.0作为网络地址,Router1E0的网络地址为192.1.0.128,掩码为255.255.255.192, Router2E0的网络地址为192.1.0.64,掩码为255.255.255.192,这样就将一个C类网络地址分配给了二个网,既划分了二个子网,起到了节约地址的作用。
8、配置静态路由
通过配置静态路由,用户可以人为地指定对某一网络访问时所要经过的路径,在网络结构比较简单,且一般到达某一网络所经过的路径唯一的情况下采用静态路由。
任务
命令
建立静态路由
ip route prefix mask {address | interface} [distance] [tag tag] [permanent]
Prefix  :所要到达的目的网络
mask        :子网掩码
address :下一个跳的IP地址,即相邻路由器的端口地址。
interface   :本地网络接口
distance    :管理距离(可选)
tag tag :tag值(可选)
permanent   :指定此路由即使该端口关掉也不被移掉。
以下在Router1上设置了访问192.1.0.64/26这个网下一跳地址为192.200.10.6,即当有目的地址属于192.1.0.64/26的网络范围的数据报,应将其路由到地址为192.200.10.6的相邻路由器。在Router3上设置了访问192.1.0.128/26192.200.10.4/30这二个网下一跳地址为192.1.0.65。由于在Router1上端口Serial 0地址为192.200.10.5192.200.10.4/30这个网属于直连的网,已经存在访问192.200.10.4/30的路径,所以不需要在Router1上添加到Router2 s0的静态路由。
Router1:
ip route 192.1.0.64 255.255.255.192 192.200.10.6  
Router3:
ip route 192.1.0.128 255.255.255.192 192.1.0.65
ip route 192.200.10.4 255.255.255.252 192.1.0.65  
同时由于路由器Router3除了与路由器Router2相连外,不再与其他路由器相连,所以也可以为它赋予一条默认路由以代替以上的二条静态路由,
ip route 0.0.0.0 0.0.0.0 192.1.0.65
即只要没有在路由表里找到去特定目的地址的路径,则数据均被路由到地址为192.1.0.65的相邻路由器。
 
二、交换机基础
1、交换机的构成
1)固定台式交换机
固定式交换机的结构比较简单,一般的交换机具有24个以太网接口,有些交换机为了适应小范围的网络接口较少,有8口、16口等规格。多数交换机除了24个接口以外还有1UPLINK口,也就是级联口。对于可管理的交换机来说,还有一个用来对交换机进行初始配置的CONSOLE口。还有一些固定式的交换机还有一个或者多个扩展插槽,这些插槽用来与上级交换机或者其他的设备进行高速的互联。
2)模块化交换机
模块化的交换机根据不同厂商和型号其结构可能大不相同,单总的说来,模块交换机的接口分为固定接口和插槽两部分。有些模块化的交换机只能接百兆或者千兆的模块,比如CISCO3550-12G,具有101000BASEX插槽和21000BASET插槽。而有些高端的模块化交换机除了数据模块以外,还必须配置管理模块,例如CISCO4506交换机,前两个插槽用于监控引擎模块(可以只配一个),后4个插槽可用于数据交换模块。
2、交换机的配置
    交换机的配置方法和路由器类似,不再赘述。交换机的初始配置也必须通过CONSOLE端口进行配置。交换机的配置没有路由器的初始对话过程,在显示提示信息后,直接回车就可以进入普通用户配置模式。
1)进入特权模式
Console> enable 
Enter password:******
2)给交换机分配IP地址
Console> (enable)set interface sc0 ip_addr netmask
Console> (enable) set interface sc0 vlan_num
把交换机sc0接口分配给VLAN,默认给VALN1
3)查看配置
Console> (enable) show interface
Console> (enable) show ip route
4)以太网端口配置
Console> (enable)set port speed mod_num/port_num {10 | 100 |  auto}  
Console> (enable) set port duplex mod_num/port_num {full | half |  auto}
Console> (enable) set port enable mod_num/port_num
Console> (enable) set port name mod_num/port_num name_string
Console> (enable) show port mod_num/port_num
5)系统设置
Console> (enable) set system name name_string
Console> (enable) set time mm/dd/yy hh:mm:ss
Console> (enable) set prompt prompt_string
Console> (enable) set password
Console> (enable) set enablepass
3、交换机的重要参数
1)背板带宽、二/三层交换吞吐率。这个决定着网络的实际性能,不管交换机功能再多,管理再方便,如果实际吞吐量上不去,网络只会变得拥挤不堪。所以这三个参数是最重要的。背板带宽包括交换机端口之间的交换带宽,端口与交换机内部的数据交换带宽和系统内部的数据交换带宽。二/三层交换吞吐率表现了二/三层交换的实际吞吐量,这个吞吐量应该大于等于交换机∑(端口×端口带宽)。
2VLAN类型和数量,一个交换机支持更多的VLAN类型和数量将更加方便地进行网络拓扑的设计与实现。
3TRUNKING,目前多数交换机都支持这个功能,在实际应用中还不太广泛,所以个人认为只要支持此功能即可,并不要求提供最大多少条线路的绑定。
4)交换机端口数量及类型,不同的应用有不同的需要,应视具体情况而定。
5)支持网络管理的协议和方法。需要交换机提供更加方便和集中式的管理。
6Qos802.1q优先级控制、802.1X802.3X的支持,这些都是交换机发展的方向,这些功能能提供更好的网络流量控制和用户的管理,应该考虑采购支持这些功能的交换机。
7)堆叠的支持,当用户量提高后,堆叠就显得非常重要了。一般公司扩展交换机端口的方法为一台主交换机各端口下连接分交换机,这样分交换机与主交换机的最大数据传输速率只有100M,极大得影响了交换性能,如果能采用堆叠模式,其以G为单位得带宽将发挥出巨大的作用。主要参数有堆叠数量、堆叠方式、堆叠带宽等。
8)交换机的交换缓存和端口缓存、主存、转发延时等也是相当重要的参数。
9)对于三层交换机来说,802.1d生产树也是一个重要的参数,这个功能可以让交换机学习到网络结构,对网络的性能也有很大的帮助。
10)三层交换机还有一些重要的参数,如启动其他功能时二/三是否保持线速转发、路由表大小、访问控制列表大小、对路由协议的支持情况、对组播协议的支持情况、包过滤方法、机器扩展能力等都是值得考虑的参数,应根据实际情况考察。