第一章:路由器配置基础
    一、基本设置方式
    一般来说,可以用5种方式来设置路由器:
    1.Console口接终端或运行终端仿真软件的微机;
    2.AUX口接MODEM,通过电话线与远方的终端或运行终端仿真软件的微机相连;
    3.通过Ethernet上的TFTP服务器;
    4.通过Ethernet上的TELNET程序;
    5.通过Ethernet上的SNMP网管工作站。
    但路由器的第一次设置必须通过第一种方式进行,此时终端的硬件设置如下:
    波特率 :9600
    数据位 :8
    停止位 :1
    奇偶校验: 无
    二、命令状态
    1. router>
    路由器处于用户命令状态,这时用户可以看路由器的连接状态,访问其它网络和主机,但不能看到和更改路由器的设置内容。
    2. router#
    在router>提示符下键入enable,路由器进入特权命令状态router#,这时不但可以执行所有的用户命令,还可以看到和更改路由器的设置内容。
    3. router(config)#
    在router#提示符下键入configure terminal,出现提示符router(config)#,此时路由器处于全局设置状态,这时可以设置路由器的全局参数。
    4. router(config-if)#; router(config-line)#; router(config-router)#;…
    路由器处于局部设置状态,这时可以设置路由器某个局部的参数。
    5. >
    路由器处于RXBOOT状态,在开机后60秒内按ctrl-break可进入此状态,这时路由器不能完成正常的功能,只能进行软件升级和手工引导。
    设置对话状态
    这是一台新路由器开机时自动进入的状态,在特权命令状态使用SETUP命令也可进入此状态,这时可通过对话方式对路由器进行设置。
    三、设置对话过程
    显示提示信息
    全局参数的设置
    接口参数的设置
    显示结果
    利用设置对话过程可以避免手工输入命令的烦琐,但它还不能完全代替手工设置,一些特殊的设置还必须通过手工输入的方式完成。
    进入设置对话过程后,路由器首先会显示一些提示信息:
--- 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
………  ………  …  ……  …  …
    然后,路由器就开始全局参数的设置:
    Configuring global parameters:
    1.设置路由器名:
    Enter host name [Router]:
    2.设置进入特权状态的密文(secret),此密文在设置以后不会以明文方式显示:
    The enable secret is a one-way cryptographic secret used
    instead of the enable password when it exists.
    Enter enable secret: cisco
    3.设置进入特权状态的密码(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
    4.设置虚拟终端访问时的密码:
    Enter virtual terminal password: cisco
    5.询问是否要设置路由器支持的各种网络协议:
    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]:
………
    6.如果配置的是拨号访问服务器,系统还会设置异步口的参数:
    Configure Async lines? [yes]:
    1) 设置线路的最高速度:
    Async line speed [9600]:
    2) 是否使用硬件流控:
    Configure for HW flow control? [yes]:
    3) 是否设置modem:
    Configure for modems? [yes/no]: yes
    4) 是否使用默认的modem命令:
    Configure for default chat s cript? [yes]:
    5) 是否设置异步口的PPP参数:
    Configure for Dial-in IP SLIP/PPP access? [no]: yes
    6) 是否使用动态IP地址:
    Configure for Dynamic IP addresses? [yes]:
    7) 是否使用缺省IP地址:
    Configure Default IP addresses? [no]: yes
    是否使用TCP头压缩:
    Configure for TCP Header Compression? [yes]:
    9) 是否在异步口上使用路由表更新:
    Configure for routing updates on async links? [no]: y
    10) 是否设置异步口上的其它协议。
    接下来,系统会对每个接口进行参数的设置。
    1.Configuring interface Ethernet0:
    1) 是否使用此接口:
    Is this interface in use? [yes]:
    2) 是否设置此接口的IP参数:
    Configure IP on this interface? [yes]:
    3) 设置接口的IP地址:
    IP address for this interface: 192.168.162.2
    4) 设置接口的IP子网掩码:
    Number of bits in subnet field [0]:
    Class C network is 192.168.162.0, 0 subnet bits; mask is /24
    在设置完所有接口的参数后,系统会把整个设置对话过程的结果显示出来:
    The following configuration command s cript 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中,然后结束设置对话过程,使路由器开始正常的工作。
 
    四、常用命令
    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. 拷贝命令
    用于IOS及CONFIG的备份和升级
    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
    五、配置IP寻址
    1. IP地址分类
    IP地址分为网络地址和主机地址二个部分,A类地址前8位为网络地址,后24位为主机地址,B类地址16位为网络地址,后16位为主机地址,C类地址前24位为网络地址,后8位为主机地址,网络地址范围如下表所示:
    种类  网络地址范围
    A    1.0.0.0 到126.0.0.0有效 0.0.0.0 和127.0.0.0保留
    B     128.1.0.0到191.254.0.0有效 128.0.0.0和191.255.0.0保留
    C     192.0.1.0 到223.255.254.0有效 192.0.0.0和223.255.255.0保留
    D     224.0.0.0到239.255.255.255用于多点广播
    E     240.0.0.0到255.255.255.254保留 255.255.255.255用于广播
    2. 分配接口IP地址
    任务               命令
    接口设置           interface type slot/number
    为接口设置IP地址   ip address ip-address mask
    掩玛(mask)用于识别IP地址中的网络地址位数,IP地址(ip-address)和掩码(mask)相与即得到网络地址。
    3. 使用可变长的子网掩码
    通过使用可变长的子网掩码可以让位于不同接口的同一网络编号的网络使用不同的掩码,这样可以节省IP地址,充分利用有效的IP地址空间。
    如下图所示:
    Router1和Router2的E0端口均使用了C类地址192.1.0.0作为网络地址,Router1的E0的网络地址为192.1.0.128,掩码为255.255.255.192, Router2的E0的网络地址为192.1.0.64,掩码为255.255.255.192,这样就将一个C类网络地址分配给了二个网,既划分了二个子网,起到了节约地址的作用。
    4. 使用网络地址翻译(NAT)
    NAT(Network Address Translation)起到将内部私有地址翻译成外部合法的全局地址的功能,它使得不具有合法IP地址的用户可以通过NAT访问到外部Internet.
    当建立内部网的时候,建议使用以下地址组用于主机,这些地址是由Network Working Group(RFC 191保留用于私有网络地址分配的.
?  ; Class A:10.1.1.1 to 10.254.254.254
?  ; Class B:172.16.1.1 to 172.31.254.254
?  ; Class C:192.168.1.1 to 192.168.254.254
    命令描述如下:
    任务                  命令
    定义一个标准访问列表  access-list access-list-number permit source [source-wildcard]
    定义一个全局地址池    ip nat pool name start-ip end-ip {netmask netmask | prefix-length prefix-length} [type rotary]
    建立动态地址翻译      ip nat inside source {list {access-list-number | name} pool name [overload] | static local-ip global-ip}
    指定内部和外部端口    ip nat {inside | outside}
    路由器的Ethernet 0端口为inside端口,即此端口连接内部网络,并且此端口所连接的网络应该被翻译,Serial 0端口为outside端口,其拥有合法IP地址(由NIC或服务提供商所分配的合法的IP地址),来自网络10.1.1.0/24的主机将从IP地址池c2501中选择一个地址作为自己的合法地址,经由Serial 0口访问Internet。命令ip nat inside source list 2 pool c2501 overload中的参数overload,将允许多个内部地址使用相同的全局地址(一个合法IP地址,它是由NIC或服务提供商所分配的地址)。命令ip nat pool c2501 202.96.38.1 202.96.38.62 netmask 255.255.255.192定义了全局地址的范围。
   
设置如下:
ip nat pool c2501 202.96.38.1 202.96.38.62 netmask 255.255.255.192
interface Ethernet 0
ip address 10.1.1.1 255.255.255.0
ip nat inside
!
interface Serial 0
ip address 202.200.10.5 255.255.255.252
ip nat outside
!
ip route 0.0.0.0 0.0.0.0 Serial 0
access-list 2 permit 10.0.0.0 0.0.0.255
! Dynamic NAT
!
ip nat inside source list 2 pool c2501 overload
line console 0
exec-timeout 0 0
!
line vty 0 4
end
    六、配置静态路由
    通过配置静态路由,用户可以人为地指定对某一网络访问时所要经过的路径,在网络结构比较简单,且一般到达某一网络所经过的路径唯一的情况下采用静态路由。
    任务          命令
    建立静态路由  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/26及192.200.10.4/30这二个网下一跳地址为192.1.0.65。由于在Router1上端口Serial 0地址为192.200.10.5,192.200.10.4/30这个网属于直连的网,已经存在访问192.200.10.4/30的路径,所以不需要在Router1上添加静态路由。
    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的相邻路由器。
    第二章:广域网协议设置
    一、HDLC
    HDLC是CISCO路由器使用的缺省协议,一台新路由器在未指定封装协议时默认使用HDLC封装。
    1. 有关命令
    端口设置
    任务               命令
    设置HDLC封装       encapsulation hdlc
    设置DCE端线路速度  clockrate speed
    复位一个硬件接口   clear interface serial unit
    显示接口状态       show interfaces serial [unit] 1
    注:
1.以下给出一个显示Cisco同步串口状态的例子.
Router#show interface serial 0
Serial 0 is up, line protocol is up
Hardware is MCI Serial
Internet address is 150.136.190.203, subnet mask is 255.255.255.0
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, rely 255/255, load 1/255
Encapsulation HDLC, loopback not set, keepalive set (10 sec)
Last input 0:00:07, output 0:00:00, output hang never
Output queue 0/40, 0 drops; input queue 0/75, 0 drops
Five minute input rate 0 bits/sec, 0 packets/sec
Five minute output rate 0 bits/sec, 0 packets/sec
16263 packets input, 1347238 bytes, 0 no buffer
Received 13983 broadcasts, 0 runts, 0 giants
2 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 2 abort
22146 packets output, 2383680 bytes, 0 underruns
0 output errors, 0 collisions, 2 interface resets, 0 restarts
1 carrier transitions
    2. 举例 
    设置如下:
Router1:
interface Serial0
ip address 192.200.10.1 255.255.255.0
clockrate 1000000
Router2:
interface Serial0
ip address 192.200.10.2 255.255.255.0
!
    3. 举例使用E1线路实现多个64K专线连接.
   
    相关命令:
    任务                         命令
    进入controller配置模式       controller {t1 | e1} number
    选择帧类型                   framing {crc4 | no-crc4}
    选择line-code类型            linecode {ami | b8zs | hdb3}
    建立逻辑通道组与时隙的映射   channel-group number timeslots range1
    显示controllers接口状态      show controllers e1 [slot/port]2
    注:
    1. 当链路为T1时,channel-group编号为0-23, Timeslot范围1-24; 当链路为E1时, channel-group编号为0-30, Timeslot范围1-31.
    2.使用show controllers e1观察controller状态,以下为帧类型为crc4时controllers正常的状态.
Router# show controllers e1
e1 0/0 is up.
Applique type is Channelized E1 - unbalanced
Framing is CRC4, Line Code is HDB3 No alarms detected.
Data in current interval (725 seconds elapsed):
0 Line Code Violations, 0 Path Code Violations
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
Total Data (last 24 hours) 0 Line Code Violations, 0 Path Code Violations,
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins,
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
    以下例子为E1连接3条64K专线, 帧类型为NO-CRC4,非平衡链路,路由器具体设置如下:
shanxi#wri t
Building configuration...
Current configuration:
!
version 11.2
no service udp-small-servers
no service tcp-small-servers
!
hostname shanxi
!
enable secret 5 \$1\$XN08\$Ttr8nfLoP9.2RgZhcBzkk/
enable password shanxi
!
!
ip subnet-zero
!
controller E1 0
framing NO-CRC4
channel-group 0 timeslots 1
channel-group 1 timeslots 2
channel-group 2 timeslots 3
!
interface Ethernet0
ip address 133.118.40.1 255.255.0.0
media-type 10BaseT
!
interface Ethernet1
no ip address
shutdown
!
interface Serial0:0
ip address 202.119.96.1 255.255.255.252
no ip mroute-cache
!
interface Serial0:1
ip address 202.119.96.5 255.255.255.252
no ip mroute-cache
!
interface Serial0:2
ip address 202.119.96.9 255.255.255.252
no ip mroute-cache
!
no ip classless
ip route 133.210.40.0 255.255.255.0 Serial0:0
ip route 133.210.41.0 255.255.255.0 Serial0:1
ip route 133.210.42.0 255.255.255.0 Serial0:2
!
line con 0
line aux 0
line vty 0 4
password shanxi
login
!
end
    二、PPP
   PPP(Point-to-Point Protocol)是SLIP(Serial Line IP protocol)的继承者,它提供了跨过同步和异步电路实现路由器到路由器(router-to-router)和主机到网络(host-to-network)的连接。
CHAP(Challenge Handshake Authentication Protocol)和PAP(Password Authentication Protocol) (PAP)通常被用于在PPP封装的串行线路上提供安全性认证。使用CHAP和PAP认证,每个路由器通过名字来识别,可以防止未经授权的访问。
CHAP和PAP在RFC 1334上有详细的说明。
    1. 有关命令
    端口设置
    任务               命令
    设置PPP封装        encapsulation ppp1
    设置认证方法       ppp authentication {chap | chap pap | pap chap | pap} [if-needed] [list-name | default] [callin]
    指定口令           username name password secret
    设置DCE端线路速度  clockrate speed
    注:
    1、要使用CHAP/PAP必须使用PPP封装。在与非Cisco路由器连接时,一般采用PPP封装,其它厂家路由器一般不支持Cisco的HDLC封装协议。
    2. 举例
    路由器Router1和Router2的S0口均封装PPP协议,采用CHAP做认证,在Router1中应建立一个用户,以对端路由器主机名作为用户名,即用户名应为router2。同时在Router2中应建立一个用户,以对端路由器主机名作为用户名,即用户名应为router1。所建的这两用户的password必须相同。
    设置如下:
Router1:
hostname router1
username router2 password xxx
interface Serial0
ip address 192.200.10.1 255.255.255.0
clockrate 1000000
ppp authentication chap
!
Router2:
hostname router2
username router1 password xxx
interface Serial0
ip address 192.200.10.2 255.255.255.0
ppp authentication chap
!
    三、x.25
    1. X25技术
    X.25规范对应OSI三层,X.25的第三层描述了分组的格式及分组交换的过程。X.25的第二层由LAPB(Link Access Procedure, Balanced)实现,它定义了用于DTE/DCE连接的帧格式。X.25的第一层定义了电气和物理端口特性。
    X.25网络设备分为数据终端设备(DTE)、数据电路终端设备(DCE)及分组交换设备(PSE)。DTE是X.25的末端系统,如终端、计算机或网络主机,一般位于用户端,Cisco路由器就是DTE设备。DCE设备是专用通信设备,如调制解调器和分组交换机。PSE是公共网络的主干交换机。
    X.25定义了数据通讯的电话网络,每个分配给用户的x.25 端口都具有一个x.121地址,当用户申请到的是SVC(交换虚电路)时,x.25一端的用户在访问另一端的用户时,首先将呼叫对方x.121地址,然后接收到呼叫的一端可以接受或拒绝,如果接受请求,于是连接建立实现数据传输,当没有数据传输时挂断连接,整个呼叫过程就类似我们拨打普通电话一样,其不同的是x.25可以实现一点对多点的连接。其中x.121地址、htc均必须与x.25服务提供商分配的参数相同。X.25 PVC(永久虚电路),没有呼叫的过程,类似DDN专线。
    2. 有关命令:
    任务                    命令
    设置X.25封装            encapsulation x25 [dce]
    设置X.121地址           x25 address x.121-address
    设置远方站点的地址映射  x25 map protocol address [protocol2 address2[...[protocol9 address9]]] x121-address [option]
    设置最大的双向虚电路数  x25 htc citcuit-number1
    设置一次连接可同时建立
    的虚电路数              x25 nvc count2
    设置x25在清除空闲虚电路
    前的等待周期            x25 idle minutes
    重新启动x25,
    或清一个svc,
    启动一个pvc相关参数     clear x25 {serial number | cmns-interface mac-address} [vc-number] 3
    清x25虚电路             clear x25-vc
    显示接口及x25相关信息   show interfaces serial show x25 interface show x25 map show x25 vc
    注:
    1、虚电路号从1到4095,Cisco路由器默认为1024,国内一般分配为16。
    2、虚电路计数从1到8,缺省为1。
    3、在改变了x.25各层的相关参数后,应重新启动x25(使用clear x25 {serial number | cmns-interface mac-address} [vc-number]或clear x25-vc命令),否则新设置的参数可能不能生效。同时应对照服务提供商对于x.25交换机端口的设置来配置路由器的相关参数,若出现参数不匹配则可能会导致连接失败或其它意外情况。
   
    实例:
    在以下实例中每二个路由器间均通过svc实现连接。
    路由器设置如下:
Router1:
interface Serial0
encapsulation x25
ip address 192.200.10.1 255.255.255.0
x25 address 110101
x25 htc 16
x25 nvc 2
x25 map ip 192.200.10.2 110102 broadcast
x25 map ip 192.200.10.3 110103 broadcast
!
Router2:
interface Serial0
encapsulation x25
ip address 192.200.10.2 255.255.255.0
x25 address 110102
x25 htc 16
x25 nvc 2
x25 map ip 192.200.10.1 110101 broadcast
x25 map ip 192.200.10.3 110103 broadcast
!
Router:
interface Serial0
encapsulation x25
ip address 192.200.10.3 255.255.255.0
x25 address 110103
x25 htc 16
x25 nvc 2
x25 map ip 192.200.10.1 110101 broadcast
x25 map ip 192.200.10.2 110102 broadcast
!
    相关调试命令:
clear x25-vc
show interfaces serial
show x25 map
show x25 route
show x25 vc
    在以下实例中路由器router1和router2均通过svc与router连接,但router1和router2不通过svc直接连接,此三个路由器的串口运行RIP路由协议,使用了子接口的概念。由于使用子接口,router1和router2均学习到了访问对方局域网的路径,若不使用子接口,router1和router2将学不到到对方局域网的路由。
    子接口(Subinterface)是一个物理接口上的多个虚接口,可以用于在同一个物理接口上连接多个网。我们知道为了避免路由循环,路由器支持split horizon法则,它只允许路由更新被分配到路由器的其它接口,而不会再分配路由更新回到此路由被接收的接口。
    无论如何,在广域网环境使用基于连接的接口(象 X.25和Frame Relay),同一接口通过虚电路(vc)连接多台远端路由器时,从同一接口来的路由更新信息不可以再被发回到相同的接口,除非强制使用分开的物理接口连接不同的路由器。Cisco提供子接口(subinterface)作为分开的接口对待。你可以将路由器逻辑地连接到相同物理接口的不同子接口, 这样来自不同子接口的路由更新就可以被分配到其他子接口,同时又满足split horizon法则。
Router1:
interface Serial0
encapsulation x25
ip address 192.200.10.1 255.255.255.0
x25 address 110101
x25 htc 16
x25 nvc 2
x25 map ip 192.200.10.3 110103 broadcast
!
router rip
network 192.200.10.0
!
Router2:
interface Serial0
encapsulation x25
ip address 192.200.11.2 255.255.255.0
x25 address 110102
x25 htc 16
x25 nvc 2
x25 map ip 192.200.11.3 110103 broadcast
!
router rip
network 192.200.11.0
!
Router:
interface Serial0
encapsulation x25
x25 address 110103
x25 htc 16
x25 nvc 2
!
interface Serial0.1 point-to-point
ip address 192.200.10.3 255.255.255.0
x25 map ip 192.200.10.1 110101 broadcast
!
interface Serial0.2 point-to-point
ip address 192.200.11.3 255.255.255.0
x25 map ip 192.200.11.2 110102 broadcast
!
router rip
network 192.200.10.0
network 192.200.11.0
!