路由基础
- 路由器用于互联两个或多个网络,具有两项功能:为要转发的数据包选择最佳路径以及将数据包交换到正确的端口,概括为路由选择和分组转发。
路由选择
- 路由选择就是路由器根据目的IP地址的网络地址部分,通过路由选择算法确定一条从源节点到目的节点的最佳路径。
- 在实际网络中,任意两个主机之间的传输链路上可能会经过多个路由器,它们之间也可以有多条传输路由。因而,所经过的每一个路由器都必须知道,它应该往哪儿转发数据才能把数据传送到目的主机。为此,路由器需要确定它的下一跳路由器的IP地址,即选择到达下一跳的路由器的路由。然后再按照选定的下一跳路由器的IP地址,将数据包转发给下一跳路由器。通过这样一跳一跳地沿着选好的路由转发数据分组,最终把分组传送到目的主机。由此可见,路由选择的核心就是确定下一跳路由器的IP地址。
- 在确定最佳路径的过程中,路由选择算法需要初始化和维护路由表(routing table)。路由表中包含的路由选择信息根据路由选择算法的不同而不同。一般在路由表中包括这样一些信息:目的网络地址、下一跳路由器地址和目的端口等信息。另外,每一台路由器的路由表中还包含缺省路由的信息。路由表是路由器进行路由选择的核心,建立和维护一个稳定、正确的路由表对路由器来说十分关键。
- 路由选择实现的方法:路由器使用路由选择协议,根据实际网络连接情况和网络的性能建立网络拓扑结构图,从而建立路由选择和转发的基础。同时,路由选择算法根据各自的判断原则,如网络带宽、时延、负载、路由器跳数等因素,为网络上的路由产生一个权值。一般来说权值越小,路由越佳,然后路由器将最佳路由的信息保存在一个路由表中,当网络拓扑发生变化时,路由协议会重新计算最佳路由,并更新路由表。路由表中的信息告诉每一台路由器应该把数据包往哪儿转发,转发给谁。因此,路由表指出的是路由器转发数据的最佳路由,所以路由表的路由选择功能极为重要,它决定着数据分组能否正确地从源主机传送到目的主机。因此路由表是路由选择的核心。
分组转发
- 分组转发即沿找好的最佳路径传送信息分组。路由器在接收到一个数据分组时,首先查看数据分组头中的目的IP地址字段,根据目的IP地址的网络地址部分去查询路由表。如果表中给出的是到达目的网络地址的下一跳路由器的IP地址,则按路由表给出的路径,将数据分组转发给下一跳路由器。由下一跳路由器继续转发,这样一跳一跳地转发下去,最终将数据分组转发到目的端。如果目的网络是与路由器的一个端口直接相连的,那么在对应于目的网络地址的路由表表项中,给出的是目的端口。在这种情况下,路由器就将数据分组直接发往目的端口。但是当路由表中既没有下一跳路由地址,也没有目的端口时,路由器则将数据分组转发给默认路由,由默认路由所连的路由器继续转发,最终将数据分组转发到目的端口。如果量终还是没有到达该目的网络的路由信息,就将该分组丢弃。
路由表
- 建立和维护路由表有两种方式,一是静态方式,即由网络管理员手工配置和修改;二是动态模式,由动态路由协议自动计算和维护。
路由器工作模式
在IOS系统下,路由器的工作模式主要有:用户模式、特权模式、设置模式、全局配置模式、其他配置模式和RXBOOT模式。不同的工作模式提供不同的操作命令,使路由器完成不同的操作。
用户模式:router>
当通过Console或Telnet方式登录到路由器时,只要输入的密码正确,路由器就直接进入了用户模式。在该模式下,系统提示符为一个尖括号(>)。如果用户以前为路由器输入过名称,则该名称将会显示在尖括号的前面。否则,在尖括号之前将显示默认的名称“router”。当进入用户模式之后,输人间号(?)命令将导致系统显示一个用户级EXEC命令的列表,该列中的命令都是路由器当前所支持的命令。在该模式下,用户只能运行少数的命令(如 ping、show version 、telnet等),有限度地查看路由器的相关信息,但不能对路由器的配置做任何修改也不能查看路由器的配置信息,只能对路由器做一些简单的操作,因而它是一个只读模式
特权模式:router#
在用户模式下,输入“enable”命令后按回车键,即可进入超级权限模式(如果设置了口令还需要在回车后按提示输入口令)。在默认状态下,特权模式可以使用比用户模式下多得多的命令,其中绝大多数用于测试网络、检查系统查看和保存配置等,但不能对端口及网络协议进行配置。该模式下,最常用的操作包括管理系统时钟、进行错误检测、查看和保存配置文件清除闪存、处理并完成路由器的冷启动等操作。
进入特权模式的提示符是:
Router > enable
Password:
Router #
全局配置模式:router(config)#
在特权模式下,输入“config terminal”命令后回车,即可以进入全局配置模式。在该模式下,有功能强大的单行命令,用户可以配置路由器的主机名、TFTP 服务器、超级用户口令、静态路由、访问控制列表、P 记账和多点广播等。在全局配置模式下,可以配置子模式、接口配子模式等其他配置模式。
RXBOOT模式:>
在路由器开机60s内,在超级终端下,同时按Ctrl + Break键3~5s可进入此状态,这时路由器不能完成正常的功能,只能进行软件升级和手工引导。当密码丢失时,可以从该模式下恢复,因此该模式是路由器的维护模式。
设置(SETUP)模式
该模式采用对话方式,即一问一答的方式实现对路由器的配置,利用该对话过程可以避免手工输入命令的繁琐,但它只能对路由器进行一些简单的配置,一些特殊的配置还必须通过手工输入的方式完成。
新路由器第一次进行配置时,系统会自动进入设置模式,并询问是否采用该方式进行配置。在任何时候,要进入设置模式,在特权模式下,输入setup即可。
路由器相关配置命令
路由器基本信息的配置
- 路由器的基本信息主要包括配置路由器主机名和超级用户口令。
①进入特权用户模式。
Router > enable
Router#
②进入全局配置模式。
Router#configure terminal
③配置主机名。
Router(config)#hostname router-test
router-test( conlig)#
④配置系统时钟。
命令格式:calendar set hh: mm: ss <1-31> MONTH <1993-2035>
router-test# calendar set 21: 07: 00 24 may 2023
⑤配置超级用户口令。
router-test# conigure terminal
router-test(config)#enable secret 111111 (设置超级用户明码密码) router-test(config)#enable password 7111111 (设置超级用户加密密码)
router-test( config)#
常用命令
- 配置保存
对路由器进行初始配置或修改配置后,应及时保存配置,否则路由器重启后会丢失配置。此时,可以在特权用户模式下,使用write命令完成保存配置。
router-test>en(进入特权用户模式)
router-test#write memory(保存路由器配置到NVRAM中)
若要删除路由器的全部配置,也可以在特权用户模式下,使用write命令。
router-test #write erase(清除配置文件)
- 退出
在路由器中从高一级配置模式退出到低一级配置模式,使用exit命令,也可以使用end命令直接退回到特权用户模式。
①从接口配置模式逐级退出到特权用户模式。
router-test(config-if) # exit
router-test(config)# exit
router-test #
②从接口配置模式直接退出到特权用户模式
rouler-test ( config-if) # end
router-test #
-
ping命令
ping使用echo协议,通过向目标主机发送数据包,根据目标主机的应答情况,来了解路径的可靠性、链路的延迟时间和目的主机是否可以到达,从而判别到目标网络的连通情况。
ping路由器的命令和ping主机的命令一样,即ping后面加路由器的IP地址 -
traceroute(可简写为trace)。
trace命令是一个实用的网络诊断工具,它不仅能诊断到目的网络的连通性,还能跟踪到目标网络转发路径上每一级路由器的工作状况、延迟时间(最多30跳,超过则视为不可达)等。如果在过程中有路由器不可达,会反馈出现三个*号,trace命令运行过程中可使用Ctrl+Shift +6退出。该命令可在用户模式或特权模式下使用。
router-test >trace www.baidu.com(也可直接使用IP地址)
- telnet命令
在进行网络诊断时,需要经常登录到不同路由器上进行查看,这就需要使用telnet命令。一般路由器可支持5个telnet同时连接。该命令可在用户模式或特权用户模式下使用。
命令格式为:router-test # telnet ip 地址(或主机名)
- show命令
show命令同样是网络管理人员经常使用的命令,通过它可以查看到路由器的配置情况接口的工作状态、路由表信息、路由器软硬件版本、路由器资源的利用情况和各种协议工作信息等,这些信息对网络管理人员排查和定位网络故障非常有用。该命令可以在用户模式下或特权用户模式下运行,但不同模式下可以查看的信息不同,在用户模式下可以查看路由器系统的软硬件版本、系统时钟、lash的使用情况等,在特权用户模式下,则能够查看路由器配置、路由表、IP的相关信息以及IP协议的统计信息等。
①查看flash存储器信息及存储器中的文件
router-test > show flash
②查看软、硬件版本
router-test > show version
③查看系统时钟
router-test > show clock
④查看路由器配置文件
router-test#show configuration
⑤查看路由器表
router-test#show ip route
⑥查看IP路由器协议信息
router-test#show ip protocols
路由器接口配置
路由器通过提供的各种接口,来连接不同类型的网络,从而实现不同网络间的互联。通过路由器接口配置命令,可以配置接口的描述信息、接口的通信方式和接口带宽、接口的IP地址、给接口封装协议设置接口的MAC地址和最大传输单元、配置HSRP协议的备份路由和配置接口的QoS策略等。因而路由器的接口配置是路由器投入应用的基础配置之一。在进行路由器接口配置前,需要进行详细的网络互联拓扑规划、接口使用规划、接口地址规划等工作。
路由器接口基本配置
-
配置接口描述信息
router-test > en
router-test# configure terminal
router-test(config)#interface f0/1
router-test(conig-if) # -
配置接口带宽。
进入接口配置模式,使用bandwidth命令设置接口带宽,带宽单位是 kbit/s。
router-test( config-if) # bandwidth 100000 -
配置接口描述信息。
配置接口描述信息使用description命令
router-test(config-if) #description link-to-lab -
配置接口地址。
进入接口配置模式,使用ip address命令配置接口的IP地址
命令格式:ip address <IP地址> <子网掩码>。
rouler-test( config-if) #ip address 192.168.1.254 255.255.255.0 -
接口的开启与关闭。
进入接口配置模式,使用shutdown、no shutdown命令关闭和开启接口。
router-test( config-if) #shutdown (关闭接口)
router-test(contig-if) #no shutdown (打开接口)
router-test( config-if)#
环回接口的配置
出于管理的需要,路由器提供了一种虚拟的环回(loopback)接口,这类接口在路由器上找不到实际物理存在的接口与其对应,也不用于网络互连。它主要用于网络管理,因为这类接口没有实际物理接口,因而不受网络故障的影响,一旦配置后,总处于活动状态,便于网络管理人员进行路由器配置和管理;另外它还可以作为动态路由协议OSPF和BCP的rouler ID,增强路由功能的稳定性和可靠性。
一般在进行路由器配置时,在每台路由器上都配置一个环回接口,由于其总是处于激活状态,不会被关闭(down),因此当路由器上其他接口出现故障时,网络管理员仍然可以通过它进行远程登录,对路由器进行诊断,从而方便管理,具体配置如下。
router-test(config )#interface loopback0(在全局配置模式下,敲入命令,loopback接口号的范围为0 ~2147483647)
router-test(config-il) #ip address 192.18.100. 255.255.255.255(配置接口IP地址和掩码,注意环回接口地址的掩码一般为4个255)
router-test(config-if) #no ip route-cache(禁用route-cache功能)
router-test(config-if) #no ip mroute-cache
router-test(config-if)#
局域网接口配置
路由器上可提供包括FDDI、ATM和Token Ring以及以太网在内的各种局域网接口,其中以太网接口应用最为广泛,因此这里只介绍几种以太网标准的接口配置方法。以太网接口配置的主要任务包括:配置接口的IP地址、接口传输速率、通信(双工)方式、MTU值,以及禁用ARP代理等安全选项配置。
-
标准以太网接口配置实例。
标准以太网接口的接口类型为Ethernet,可简写为e。
router-test(config) # interface Ethernet1
router-test(config-if) #description To-lab1
router-test(config-if) #ip address 192.168.1.1 255.255.255.0
router-test(config-if) #bandwidth 10000
router-test(config-if) #no shutdown
ronter-test(config-if) #exit
rouler-test(config) #exit
ronter-test # -
快速以太网接口配置。
快速以太网的接口类型为FastEthemet,可简写为f。
router-test(config) # interface FastEthemet0/1
router-test(config-if)#description To-lab2
router-test(config-if)#ip address 192.168.2.1 255. 255. 255.0
router-test(config-if)#bandwidth 100000
router-test(config-if)#duplex half (设置工作模式为半双工)
router-test(config-if)#no ip directed-broadcast
router-test(config-if)#no ip proxy-arp
router-test(config-if)#no shutdown
router-test(config-if) #exit
router-test(config) # -
吉比特以太网接口配置。
吉比特以太网的接口类型为GigabitEthernet,可简写为g。
router-test(config)#interface GigabitEthemet0/0
router-test(config-if)description To-lab3
router-test(config-if)#ip address 192.168.3.1 255.255.255.0
router-test(config-if)#bandwidth 1000000
router-test(config-if)#duplex full
router-test(config-if)#no ip directed-broadcast
router-test(config-if)#no ip proxy-arp
router-test(config-if)#no shutdown
router-test(config-if)#exit
router-test(config )#exit
router-test #
广城网接口配置
-
异步申行接口配置。
异步申行接口的接口类型为Asyne,可简写为a。Asyne接口主要用于连接Modem设备为网络用户提供拨号上网服务。如Cieo 2511路由器可以提供16个异步行接口Ethernet接口。Asyne 接口的配置如下;
router-lent(config)#interface Anynol
router-test(configif)#ip unnumbered ethernet0
router-test(config-il)#encapaulation ppp (封装协议为PPP)
router-test(config-if)#anyne default ip uddress 192, 168. 1.1
router-test(config-if)#asyne dynimie routing
router-test(config-if)#asyne mode interactive(配置异步口的PPP工作方式)
router-test(config-if)#no shutdown
router-test(config-if)#exit
router-test(config)#exit
router-test # -
高速同步串行接口配置
高速同步串行接口的接口类型为Serial,可简写为s。Serial接口主要用于帧中继、DDN专线、卫星、微波等广域网连接。Serial接口需要配置的主要参数有接口带宽、接口协议和接口的IP 地址等。
router-test(config-if)#description To-lab4
router-test(config-if) #bandwidth 2048 (配置接口带宽为2M,单位是kbit/s)
router-test(config-if) #ip address 192.168.4.1 255.255.255.252
router-test(config-if)#encapsulation ppp (封装HDLC成PPP协议,HDLC为默认值)
router-test(config-if) #no ip directed-broadcast
router-test(config-if) #no ip proxy-arp
router-test(config-if) #no shutdown
router-test(config-if) #exit
router-test(config)#exit
router-test # -
POS接口的配置。
POS(Packet over SONET/SDH)是一种利用SONET/SDH提供的高速传输通道直接传送IP数据包的技术,同时它也是一种高速、先进的广域网连接技术。POS使用的链路层协议主要有PPP和HDLC。目前POS可以提供155Mbit/s、622Mbit/s、2.5Gbit/s和10Gbit/s等多种传输率的接口。
POS接口的配置任务包括:在POS接口模式下设置POS物理端口的类型(sdh或sonet);在 POS接口模式下设置POS物理端口的协议封装模式(ppp或chdle);在POS接式下设置POS 物理端口的数据格式中的flag值(0表示SONET帧,2表示sdh帧);强制POS物理端口数据是否加扰;设置POS物理端口数据的CRC校验位数(16位或32位)等。
在全局配置模式下,配置操作如下:
router-test(config)#interface POS0/1
router-test(config-if)#description To-lab5
router-test(config-if)#bandwidth 10000000
router-test(config-if)#ip address 192.168.5.1 255,255.255.252
rouler-test(conlig-if)#crc16 (可选的crc校验位是16和32)
router-test(config-if)#pos framing sonet (可选的帧格式是sdh和sonet)
router-test(config-if)#no ip directed-broadcast
router-test(config-if)#pos flag s1 s0 0(s1s0=00表示是sonet的数据,s1s0=10(十进制2)表示是sdh帧的数据)
router-test(config-if)#no shutdown
router-test(config-if)#exit
router-test(config)#exit
router-test #