免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6837 | 回复: 4
打印 上一主题 下一主题

[原创]Cisco网络专家教程Phase1-网络互连基础教程 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-05-12 12:38 |只看该作者 |倒序浏览
PDF下载地址:
http://www.hot5.org/show-tym/down/icnd.rar

Cisco Certified Network Associate 640-801 ICND Course Notes


Preface


Noko#sh start
!
Written by 红头发(绯瞳,大写的J) a.k.a. Ca.J
Description 欢迎转po,请保留作者信息
Homepage http://www.show-tym.com/
Feb.17th.2004
!


Chapter1 Internetworking


Internetworking Basics

把1个大的网络分成几个小点的网络称之为网络分段(network segment),这些工作由routers,switches和bridges来完成

引起LAN拥塞的可能的原因是:
1.太多的主机存在于1个广播域(broadcast domain)
2.广播风暴
3.多播
4.带宽过低

在网络中使用routers的优点:
1.它们默认是不会转发广播的
2.它们可以基于layer-3(Network layer)的信息来对网络进行过滤

switches的主要目的:提高LAN的性能,提供给用户更多的带宽

冲突域(collision domain):Ethernet术语之1,处于冲突域里的某个设备在某个网段发送数据包,强迫该网段的其他所有设备注意到这个包.而在某1个相同时间里,不同设备尝试同时发送包,那么将在这个网段导致冲突的发生,降低网络性能

bridges在某种意义上等同与switches,不同的地方是bridges只包括2到4个端口(port),而switches可以包括多达上百端口.但是相同的地方是它们都可以分割大的冲突域为数个小冲突域,因为1个端口即为1个冲突域,但是它们仍然处在1个大的广播域中.分割广播域的任务,可以由routers来完成

Internetworking Models

早期各个网络厂商拥有私有网络,不便于同其他厂商的网络进行通讯.于是,在20世纪70年代末期,ISO组织创建了OSI(Open System Interconnection)参考模型.

OSI参考模型,用于帮助不同厂家创建可与对方进行协同工作的网络设备和软件等等,最大的特点是分层.但是它仍然只是个参考模型而非物理模型

Advantages of Refernce Models

OSI参考模型分层化的优点:
1.允许多厂家共同发展网络标准化组件
2.允许不同类型的网络硬件和软件相互通信
3.防止其中某层的变化影响到其他层,避免牵制到整个模型

The OSI Reference Model

OSI参考模型分为7层2组;最高3层定义了端用户如何进行互相通信;底部4层定义了数据是如何端到端的传输.最高3层,也称之为上层(upper layer),它们不关心网络的具体情况,这些工作是又下4层来完成

整个参考模型由高到低分为:
1.Application
2.Presentation
3.Session
4.Transport
5.Network
6.Data link
7.Physical

在整个OSI参考模型上运行的网络设备有:
1.网络管理工作站(NMS)
2.网页和应用程序服务器
3.网关(gateways)
4.网络上的主机(hosts)

OSI参考模型每层的任务:
1.Application层:提供用户接口
2.Presentation层:表述数据;对数据的*作诸如加密,压缩等等
3.Session层:建立会话,分隔不同应用程序的数据
4.Transport层:提供可*和不可*的数据投递;在错误数据重新传输前对其进行更正
5.Network层:提供逻辑地址,用于routers的路径选择
6.Data Link层:把字节性质的包组成帧;根据MAC地址提供对传输介质的访问;实行错误检测,但是不实行错误更正
7.Physical层:在设备之间传输比特(bit);定义电压,线速,针脚等物理规范

OSI参考模型每层的功能:
1.Application层:提供文件,打印,数据库,和其他应用程序等服务
2.Presentation层:数据加密,压缩和翻译等等
3.Session层:会话控制
4.Transport层:提供端到端的连接
5.Network层:路由(routing)
6.Data Link层:组成帧
7.Physical层:定义物理拓扑结构

The Session Layer

The Session layer负责建立,管理,终止会话.也设备设备和节点(nodes)之间的会话控制.3种模式:simplex half duplex和full duplex

一些Session layer协议和接口的例子:
1.Network File System(NFS)
2.Structured Query Language(SQL)
3.Remote Procedure Call(RPC)
4.X Window
5.AppleTalk Session Protocol
6.Digital Network Architecture Session Control Protocol(DNA SCP)

The Transport Layer

The Transport layer把数据分段重新组合成数据流(data stream)

Flow Control

流控制(flow control)保证了数据的完整性,防止接受方的缓冲区溢出, 缓冲区溢出将导致数据的不完整.如果数据发送方传输数据过快,接受方将数据报(datagrams)暂时存储在缓冲区(buffer)里

可*的数据传输采用了面向连接(connection-oriented)通信方式,保证:
1.接受方接受到被传输的段(segment)以后将发回确认(acknowledge)给发送方
2.任何没有经过确认的段将被重新传输
3.段在达到接受方之前应按照适当的顺序
4.可以进行管理的流控制技术用于避免拥塞,超载(overloading)和数据的丢失

Connection-Oriented Communication

面向连接式通信:发送方先建立会话(call setup)或者叫做3度握手(three-way handshake);然后数据开始传输;数据栓书完毕以后,终止虚电路连接(virtual circuit)

3度握手(面向连接回话)过程:
1.第一个请求连接许可的段用于要求同步,由发送方发送给接受方
2.发送方和接受方协商连接
3.接受方与发送方同步
4.发送方进行确认
5.连接建立,开始传输数据

如果发送方发送数据报过快,而接受方缓冲区已经满了,它会反馈1条not ready的信息给发送方,等待缓冲区里的数据处理完毕后会反馈条go的信息给发送方;于是发送方继续发送数据.这就是流控制的用途

如果任何数据段在传输的过程中丢失了,被复制了,或者损坏了,这将导致传输失败.这个问题的解决方法就得*接受方反馈确认信息给发送方

Windowing

窗口(window)是指允许发送方不用等待接受方反馈确认的数据段,大小以字节(bytes)衡量,比如:如果1个TCP会话是以2字节的窗口建立的,传输时假如窗口从2字节增加为3字节,那么发送方将不用等待之前2字节的量的确认信息,直接以3字节的量传输

The Network Layer

the Network layer用于管理设备地址,跟踪网络上的设备位置,决定传输数据最好的路线.该层上有2种包(packets):
1.数据(data)
2.路由更新信息(route updates)

routers必须对每种路由协议保持1张单独的路由表,因为不同的路由协议根据不同的地址机制跟踪网络信息

路由表包含的一些信息:
1.interface:出口
2.度(metric)

routers的一些要点信息:
1.默认不转发广播和多播(multicast)包
2.根据逻辑地址决定下1跳(hop)
3.可以提供层2的桥接功能,可以同时路由同1个接口
4.提供VLANs的连接
5.可以提供Quality of Service(QoS)

The Data Link Layer

the Data Link layer负责数据的物理传输,错误检测,网络拓扑和流控制.这个意味着在数据LAN上将根据硬件地址来进行投递,还要把Network layer的包翻译成比特用于在Physical layer上传输

IEEE以太网(Ehernet)的Data Link layer有2个子层:
1.Media Access Control(MAC)802.3:这层定义了物理地址和拓扑结构,错误检测,流控制等.共享带宽,先到先服务原则(first come/first served)
2.Logical Link Control(LLC)802.2:负责识别Network layer协议然后封装(encapsulate)数据.LLC头部信息告诉Data Link layer如何处理接受到的帧,LLC也提供流控制和控制比特的编号

Switches and Bridges at the Data Link Layer

第二层的设备switches被认为是基于硬件的bridges,因为采用的是1种叫做application-specific integrated circuit(ASIC)的特殊硬件.ASICs可以在很低的延时(latency)里达到gigabit的速度;而bridges是基于软件性质的

延时:1个帧从进去的端口到达出去的端口所耗费的时间

透明桥接(transparent bridging):如果目标设备和帧是在同1个网段,那么层2设备将堵塞端口防止该帧被传送到其他网段;如果是和目标设备处于不同网段,则该帧将只会被传送到那个目标设备所在的网段

每个和switches相连的网段必须是相同类型的设备,比如你不能把令牌环(Token Ring)上的主机和以太网上的主机用switches混合相连,这种方式叫做media translation,不过你可以用routers来连接这样不同类型的网络

在LAN内使用switches比使用hubs的好处:
1.插入switches的设备可以同时传输数据,而hubs不可以
2.在switches中,每个端口处于1个单独的冲突域里,而hubs的所有端口处于1个大的冲突域里,可想而知,前者在LAN内可以有效的增加带宽.但是这2种设备的所有端口仍然处于1个大的广播域里

The Physical Layer

the Physical layer负责发送和接受比特.比特由1或者0组成.这层也用于识别数据终端装备(data terminal equipment,DTE)和数据通信装备(data communication equipment,DCE)的接口

DCE一般位于服务商(sevice provider)而DTE一般是附属设备.可用的DTE服务通常是经由modem或者channel service unit/data sevice unit(CSU/DSU)来访问

hubs:其实是多端口的repeaters,重新放大信号用,解决线路过长,信号衰减等问题.

1个物理星形(star)拓扑结构,实际在逻辑上是逻辑总线(bus)拓扑结构

Ethernet Networking

以太网采用1种争夺(contention) 介质访问方法,这个机制使得在1个网络上所有主机共享带宽.采用了Physical layer和Data Link layer的规范.它采用1种带冲突检测的载波监听多路访问的(Carrier Sense Multiple Access with Collision Detection,CSMA/CD)机制

CSMA/CD:帮助共享带宽的设备避免同时发送数据,产生冲突的协议.补偿算法(Backoff algorithms)用于决定产生冲突的2台设备何时重新传输数据

CSMA/CD网络带来的问题:
1.延迟(delay)
2.低吞吐量(throughput)
3.拥塞

Half- and Full-Duplex Ethernet

half-duplex(半双工)以太网:它只采用1对线缆.如果hubs与switches相连,那么必须以半双工的模式*作,因为端工作站必须能够检测冲突.半双工以太网带宽的利用率只为上限的30%-40%

full-duplex(全双工)以太网:采用2对线缆,点对点(point-to-point)的连接,没有冲突,双倍带宽利用率

全双工以太网可以使用在以下的3种形势里:
1.switch和host相连
2.switch和switch相连
3.用交叉线缆(crossover cable)相连的host和host

自动检测机制(auto-detection mechanism):当全双工以太网端口电源启动时,它先与远端相连,并且与之进行协商.看是以10Mbps的速度还是以100Mbps的速度运行;再检查是否可以采用全双工模式,如果不行,则切换到半双工模式

Ethernet at the Data Link Layer

4种类型的以太网帧:
1.Ethernet II
2.IEEE 802.2
3.IEEE 802.3
4.SNAP

Ethernet Addressing

MAC地址是烧录在Network Interface Card(网卡,NIC)里的.MAC地址,也叫硬件地址,是由48比特长(6字节),16进制的数字组成.0-24位是由厂家自己分配.25-47位,叫做组织唯一标志符(organizationally unique identifier,OUI).

OUI是由IEEE分配给每个组织.组织按高到低的顺序分配1个唯一的全局地址给每个网卡以保证不会有重复的编号.第47位为Individual/Group(I/G)位,当I/G位为0的时候,我们可以设想这个地址是MAC地址的实际地址可以出现在MAC头部信息;当I/G位为1的时候,我们可以设想它为广播或多播.第46位叫做G/L位,也叫U/L位.当这个位为0的时候代表它是由IEEE分配的全局地址;当这个位为1的时候,代表本地管理地址(例如在DECnet当中)

Ethernet Frames

第二层用于把第一层的比特连接成字节,再组成帧(frames)

3种介质访问方法的类型:
1.争夺(contention),用于在以太网中
2.令牌传递(token passing),用于在FDDI和Token Ring里
3.投票(polling),用于在IBM Mainframes和100VG-AnyLAN中

循环冗余校验(cyclic redundancy check,CRC):用于错误检测,而非错误更正

隧道(tunneling):把不同类型的帧封装在1个帧里

Ethernet II帧:
1.前导(preamble)字段:交替的1和0组成.5Mhz的时钟频率,8字节,包含7字节的起始帧分界符(start frame delimiter,SFD),SFD是10101011,最后1个字节同步(sync)
2.目标地址(destination address,DA):6字节
3.源地址(source address,SA):6字节
4.类型(type)字段:用于辨别上层协议,2字节
5.数据(data):64到1500字节
6.帧校验序列(frame check sequence,FCS):4字节,存储CRC值

802.3 Ethernet帧:
1.前导(preamble)字段:交替的1和0组成.5Mhz的时钟频率,8字节,包含7字节的起始帧分界符(start frame delimiter,SFD),SFD是10101011,最后1个字节同步(sync)
2.目标地址(destination address,DA):6字节
3.源地址(source address,SA):6字节
4.长度(length)字段:不能辨别上层协议,2字节
5.数据(data):64到1500字节
6.帧校验序列(frame check sequence,FCS):4字节,存储CRC值

802.2 and SNAP

因为802.3 Ethernet帧没有鉴别上层协议的能力(使用的是length字段),所以,它需要IEEE定义的802.2 LLC标准来帮它实现这个功能

802.2帧(SAP):
1.目标服务访问点(dest SAP)字段: 1个字节
2.源服务访问点(source SAP)字段: 1个字节
3.控制字段:1或2个字节
4.数据:大小可变

1个802.2帧是由802.3Ethernet帧加上LLC信息组成,这样它就可以辨别上层协议

802.2帧(SNAP):它有自己的协议来辨别上层协议
1.目标服务访问点(dest SAP)字段: 1个字节,总为AA
2.源服务访问点(source SAP)字段: 1个字节,总为AA
3.控制字段:1或2个字节,值总为3
4.OUI ID:3字节
5.类型(type)字段:2字节,辨别上层协议
6.数据:大小可变

Ethernet at the Physical Layer

一些原始的和扩展的IEEE 802.3的标准:
1.10Base2:Base是指基带传输技术,2指最大距离接近200米,实际为185米,10指10Mbps的速度,采用的是物理和逻辑总线拓扑结构,AUI连接器
2.10Base5:5指最大距离500米,10指10Mbps的速度,采用的是物理和逻辑总线拓扑结构,AUI连接器
3.10BaseT:10指10Mbps的速度,采用的是物理星形和逻辑总线拓扑结构, 3类UTP双绞线,RJ-45连接器,每个设备必须与hub或者switch相连,所以1个网段只能有1台主机
4.100BaseT:100指100Mbps的速度,采用的是物理星形和逻辑总线拓扑结构, 5,6或者7类UTP2对双绞线,RJ-45连接器, 1个网段1台主机
5.100BaseFX:100指100Mbps的速度,光纤技术,点对点拓扑结构,最大距离412米, ST或者SC连接器
6.1000BaseT:1000指1000Mbps的速度,光纤技术,点对点拓扑结构,最大距离412米, 5类UTP4对双绞线,最大距离100米

Ethernet Cabling

以太网线缆接法:
1.直通线(straight-through)
2.交叉线(crossover)
3.反转线(rolled)

Straight-Through Cable

直通线用于连接:
1.主机和switch/hub
2.router和switch/hub

直通线只使用1,2,3,6针脚,2端的连法是一一对应

Crossover Cable

交叉线用于连接:
1switch和switch
2.主机和主机
3.hub和hub
4.hub和switch
5.主机与router直连

交叉线只使用1,2,3,6针脚,2端的连法是1连3,2连6,3连1,6连2

Rolled Cable

反转线不是用来连接以太网连接的,它是用来连接主机与router的com口(console serial port)的,它采用1到8跟针脚,2端全部相反对应

当主机与router的console口用反转线连好后,启动Window系统里的HyperTerminal程序即可对router进行连接,其配置如下:
1.Bps:9600
2.Data bits:8
3.Parity:None
4.Stop bits:1
5.Flow control:none

Data Encapsulation

封装(encapsulation):把OSI参考模型每层自己的协议信息加进数据信息的过程,反之叫做解封装

协议数据单元(protocol data units,PDU):数据包括封装进去的信息在OSI参考模型每层的叫法:
1.Transport layer:segment
2.Network layer:packet或者datagram
3.Data Link layer:frame
4.Physical layer:bits



Chapter2 Internet Protocols


TCP/IP and the DoD Model

DoD模型被认为是OSI参考模型的浓缩品,分为4层,从上到下是:
1.Process/Application layer
2.Host-to-Host layer
3.Internet layer
4.Network  Access layer
其中,如果在功能上和OSI参考模型互相对应的话,那么:
1.DoD模型的Process/Application层对应OSI参考模型的最高3层
2.DoD模型的Host-to-Host层对应OSI参考模型的Transport层
3.DoD模型的Internet层对应OSI参考模型的Network层
4.DoD模型的Network Access层对应OSI参考模型的最底2层

The Process/Application Layer Protocols

Process/Application层包含的协议和应用程序有:
Telnet,FTP,X Windows,TFTP,SMTP,SNMP,NFS和LPD等等

Dynamic Host Configuration Protocol(DHCP)/BootP(Bootstrap Protocol)

动态主机配置协议(DHCP)服务器可以提供的信息有:
1.IP地址
2.子网掩码(subnet mask)
3.域名(domain name)
4.默认网关(default gateway)
5.DNS
6.WINS信息

The Host-to-Host Layer Protocols

Host-to-Host层描述了2种协议:
1.传输控制协议(Transmission Control Protocol,TCP)
2.用户数据报协议(User Datagram Protocol,UDP)

Transmission Control Protocol(TCP)

当1个主机开始发送数据段(segment)的时候,发送方的TCP协议要与接受方的TCP协议进行协商并连接,连接后即所谓的虚电路(virtual circuit),这样的通信方式就叫做面向连接(connection-oriented).面向连接的最大优点是可*,但是它却增加了额外的网络负担(overhead)

User Datagram Protocol(UDP)

UDP协议的最他特点是无连接(connectionless),即不可*,因为它不与对方进行协商并连接,它也不会给数据段标号,也不关心数据段是否到达接受方

Key Concepts of Host-to-Host Protocols

现在把TCP协议和UDP协议的一些特性做个比较:
1.TCP.协议在传送数据段的时候要给段标号;UDP协议不
2.TCP协议可*;UDP协议不可*
3.TCP协议是面向连接;UDP协议采用无连接
4.TCP协议负载较高;UDP协议低负载
5.TCP协议的发送方要确认接受方是否收到数据段;UDP反之
6.TCP协议采用窗口技术和流控制;UDP协议反之

Port Numbers

TCP和UDP协议必须使用端口号(port number)来与上层进行通信,因为不同的端口号代表了不同的服务或应用程序.1到1023号端口叫做知名端口号(well-known port numbers).源端口一般是1024号以上随机分配

The Internet Layer Protocols

在DoD模型中,Internet层负责:路由,以及给上层提供单独的网络接口

Internet Protocol(IP)

IP协议查找每个数据包(packets)的地址,然后,根据路由表决定该数据包下1段路径该如何走,寻找最佳路径

Internet Control Message Protocol(ICMP)

ICMP协议一样是工作在DoD模型的Internet层,IP协议使用ICMP协议来提供某些不同的服务,ICMP协议是一种管理协议

一些ICMP协议相关信息和事件:
1.目标不可达(destination unreachable):假如1个routers不能把IP协议数据报发送到更远的地方去,于是router将发送ICMP协议信息给数据报的发送方,告诉它说目标网络不可达
2.缓冲区已满(buffer full):假如router的缓冲区已经存满发送方发来的IP协议数据报了,它将发送ICMP协议信息给发送方并告诉它缓冲区已满,如果再继续接受的话将导致缓冲区溢出,造成数据丢失
3.跳(hops):IP协议数据报经过1个router,称为经过1跳
4.Ping(Packet Internet Groper):采用ICMP协议信息来检查网络的物理连接和逻辑连接是否完好
5.Traceroute:根据ICMP协议信息来跟踪数据在网络上的路径,经过哪些跳

Address Resolution Protocol(ARP)

地址解析协议(ARP)用于根据1个已知的IP地址查找硬件地址.它把IP地址翻译成硬件地址

Reverse Address Resolution Protocol(RARP)

RARP协议用于把MAC地址翻译成IP地址

IP Addressing

IP地址是软件地址,MAC地址是硬件地址,MAC地址是烧录在NIC里的,MAC地址用于在本地网络查找主机地址.IP地址是唯一的,也叫做网络地址(network address);硬件地址也叫节点地址(node address)

Network Address

网络地址分为5类:
1.A类地址:4个8位位组(octets).第一个octet代表网络号,剩下的3个代表主机位.范围是0xxxxxxx,即0到127
2.B类地址: 前2个octets代表网络号,剩下的2个代表主机位. 范围是10xxxxxx,即128到191
3.C类地址: 前3个octets代表网络号,剩下的1个代表主机位. 范围是110xxxxx,即192到223
4.D类地址:多播地址,范围是224到239
5.E类地址:保留,实验用,范围是240到255

Network Address:Special Purpose

一些特殊的IP地址:
1.IP地址127.0.0.1:本地回环(loopback)测试地址
2.广播地址:255.255.255.255
3.IP地址0.0.0.0:代表任何网络
4.网络号全为0:代表本网络或本网段
5.网络号全为1:代表所有的网络
6.节点号全为0:代表某个网段的任何主机地址
7.节点号全为1:代表该网段的所有主机
广播地址TCP/IP协议规定,主机号部分各位全为1的IP地址用于广播.所谓广播地址指同时向网上所有的主机发送报文,也就是说,不管物理网络特性如何,Internet网支持广播传输.如136.78.255.255就是B类地址中的一个广播地址,你将信息送到此地址,就是将信息送给网络号为136.78的所有主机.有时需要在本网内广播,但又不知道本网的网络号时,TCP/IP协议规定32比特全为1的IP地址用于本网广播,即255.255.255.255

Private IP Address

私有IP地址(private IP address):节约了IP地址是空间,增加了安全性.处于私有IP地址的网络称为内网,与外部进行通信就必须*网络地址翻(network address translation,NAT)

一些私有地址的范围:
1.A类地址中:10.0.0.0到10.255.255.255.255
2.B类地址中:172.16.0.0到172.31.255.255
3.C类地址中:192.168.0.0到192.168.255.255

Broadcast Address

广播地址:
1.层2广播:FF.FF.FF.FF.FF.FF,发送给LAN内所有节点
2.层3广播:发送给网络上所有节点
3.单播(unicast):发送给单独某个目标主机
4.多播:由1台主机发出,发送给不同网络的许多节点

Introduction to Network Address Translation(NAT)

NAT一般都*作在Cisco router上,用于连接2个网络,同时把私有地址翻译公有地址

一些NAT的种类以及特点:
1.静态NAT(static NAT):本地地址和全局地址一一对应.这样的方式需要你拥有真正的Internet上的IP地址
2.动态NAT(dynamic NAT):把未注册的IP地址对应到已注册IP地址池中的某个IP地址上.你不必需要静态配置你的router使内外地址对应
3.超载(overloading):采用的最广泛的NAT配置类型.类似动态NAT,但是它是把1组未注册的IP地址根据不同的端口(ports)对应到1个已注册的IP地址上.因此,它又叫做端口地址翻译(port address translation,PAT)


Chapter3 IP Subnetting and Variable Length Subnet Masks(VLSM)


Subnetting Basics

子网划分(subnetting)的优点:
1.减少网络流量
2.提高网络性能
3.简化管理
4.易于扩大地理范围

How to Creat Subnets

如何划分子网?首先要熟记2的幂:2的0次方到9次方的值分别为:1,2,4,8,16,32,64,128,256和512.还有要明白的是:子网划分是借助于取走主机位,把这个取走的部分作为子网位.因此这个意味划分越多的子网,主机将越少

Subnet Masks

子网掩码用于辨别IP地址中哪部分为网络地址,哪部分为主机地址,有1和0组成,长32位,全为1的位代表网络号.不是所有的网络都需要子网,因此就引入1个概念:默认子网掩码(default subnet mask).A类IP地址的默认子网掩码为255.0.0.0;B类的为255.255.0.0;C类的为255.255.255.0

Classless Inter-Domain Routing(CIDR)

CIDR叫做无类域间路由,ISP常用这样的方法给客户分配地址,ISP提供给客户1个块(block size),类似这样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28代表多少位为1,最大/32.但是你必须知道的1点是:不管是A类还是B类还是其他类地址,最大可用的只能为30/,即保留2位给主机位

CIDR值:
1.掩码255.0.0.0:/8(A类地址默认掩码)
2.掩码255.128.0.0:/9
3.掩码255.192.0.0:/10
4.掩码255.224.0.0:/11
5.掩码255.240.0.0:/12
6.掩码255.248.0.0:/13
7.掩码255.252.0.0:/14
8.掩码255.254.0.0:/15
9.掩码255.255.0.0:/16(B类地址默认掩码)
10.掩码255.255.128.0:/17
11.掩码255.255.192.0:/18
12.掩码255.255.224.0:/19
13.掩码255.255.240.0:/20
14.掩码255.255.248.0:/21
15.掩码255.255.252.0:/22
16.掩码255.255.254.0:/23
17.掩码255.255.255.0:/24(C类地址默认掩码)
18.掩码255.255.255.128:/25
19.掩码255.255.255.192:/26
20.掩码255.255.255.224:/27
21.掩码255.255.255.240:/28
22.掩码255.255.255.248:/29
23.掩码255.255.255.252:/30

Subnetting Class A,B&C Address

划分子网的几个捷径:
1.你所选择的子网掩码将会产生多少个子网?:2的x次方-2(x代表掩码位,即2进制为1的部分)
2.每个子网能有多少主机?: 2的y次方-2(y代表主机位,即2进制为0的部分)
3.有效子网是?:有效子网号=256-10进制的子网掩码(结果叫做block size或base number)
4.每个子网的广播地址是?:广播地址=下个子网号-1
5.每个子网的有效主机分别是?:忽略子网内全为0和全为1的地址剩下的就是有效主机地址.最后有效1个主机地址=下个子网号-2(即广播地址-1)

根据上述捷径划分子网的具体实例:
C类地址例子:网络地址192.168.10.0;子网掩码255.255.255.192(/26)
1.子网数=2*2-2=2
2.主机数=2的6次方-2=62
3.有效子网?:block size=256-192=64;所以第一个子网为192.168.10.64,第二个为192.168.10.128
4.广播地址:下个子网-1.所以2个子网的广播地址分别是192.168.10.127和192.168.10.191
5.有效主机范围是:第一个子网的主机地址是192.168.10.65到192.168.10.126;第二个是192.168.10.129到192.168.10.190

B类地址例子1:网络地址:172.16.0.0;子网掩码255.255.192.0(/1
1.子网数=2*2-2=2
2.主机数=2的14次方-2=16382
3.有效子网?:block size=256-192=64;所以第一个子网为172.16.64.0,最后1个为172.16.128.0
4.广播地址:下个子网-1.所以2个子网的广播地址分别是172.16.127.255和172.16.191.255
5.有效主机范围是:第一个子网的主机地址是172.16.64.1到172.16.127.254;第二个是172.16.128.1到172.16.191.254

B类地址例子2:网络地址:172.16.0.0;子网掩码255.255.255.224(/27)
1.子网数=2的11次方-2=2046(因为B类地址默认掩码是255.255.0.0,所以网络位为8+3=11)
2.主机数=2的5次方-2=30
3.有效子网?:block size=256-224=32;所以第一个子网为172.16.0.32, 最后1个为172.16.255.192
4.广播地址:下个子网-1.所以第一个子网和最后1个子网的广播地址分别是172.16.0.63和172.16.255.223
5.有效主机范围是:第一个子网的主机地址是172.16.0.33到172.16.0.62;最后1个是172.16.255.193到172.16.255.223

Variable Length Subnet Masks(VLSM)

变长子网掩码(VLSM)的作用:节约IP地址空间;减少路由表大小.使用VLSM时,所采用的路由协议必须能够支持它,这些路由协议包括RIPv2,OSPF,EIGRP和BGP. 关于更多的VLSM知识,可以去Google.com进行搜索

Troubleshooting IP Address

一些网络问题的排难
1.打开Windows里的1个DOS窗口,ping本地回环地址127.0.0.1,如果反馈信息失败,说明IP协议栈有错,必须重新安装TCP/IP协议
2.如果1成功,ping本机IP地址,如果反馈信息失败,说明你的网卡不能和IP协议栈进行通信



Chapter4 Introduction to the Cisco IOS


The Cisco Router User Interface

Cisco Internetwork Operation System(IOS)是Cisco 的routers和switches的内核

Cisco Router IOS

IOS的一些功能:
1.运载网络协议和功能
2.对产生高速流量的设备进行连接
3.增加网络安全性
4.提供网络的可扩展性来简易化网络的增长和冗余问题
5.可*的连接网络资源

你可以通过以下方式进入IOS:
1.通过router的console口,用于本地
2.通过modem连接auxiliary(Aux)口,用于远程
3.通过VTY线路来telnet

Bringing Up a Router

当启动1个router的时候,大致将分为以下几个阶段:
1.开机自检(power-on self-test,POST)
2.如果1正常, 如果IOS存在的话,将从它的闪存(flash memory)查找和加载IOS到RAM中(2500系列不加载RAM中,直接从闪存中运行).闪存是1种电子可擦除只读存储器(electronically erasable programmable read-only memory,EEPROM)
3.如果1和2正常,接下来它将在非易失性RAM(NVRAM)中查找启动配置文件startup-config,假如没有找到任何启动配置文件,router将进入到setup模式

Setup Mode

setup模式可以对router进行些配置,但是我们不推荐使用这个方法对router进行配置.它分为2种模式:
1.Basic Management
2.Extended Management

在setup模式中,[]代表默认设置,你可以使用Ctrl+C随时退出setup模式

Command-Line Interface

当问你是否进入setup模式,选择no,即进入命令行模式

Logging into the Router

从用户模式(user mode)进入到特权模式(exec mode),注意提示符的变化:
Router>;enable
Router#

从特权模式退出到用户模式:
Router#disable
Router>;

退出router命令行:在用户模式和特权模式下输入logout,如下:
Router#logout
Router con0 is now available
Press RETURN to get started

Overview of Router Modes

配置router,需要进入到1个叫做配置模式的模式,在特权模式下输入configure terminal进入全局配置模式(global configuration mode),在这之下输入的命令叫做全局命令,一旦输入,将对整个router产生影响.如下,注意提示符的变化:
Router#config
Configruation from terminal,memory or network
[terminal]?(press Enter)
Router(config)#
参数terminal,memory和network的区别:
1.configure terminal:配置router的running-config,所谓running-config即为当前运行在动态RAM(DRAM)的配置文件
2.configure memory: 配置router的startup-config,所谓startup-config即为存储在router的NVRAM里的配置文件
3.configure network:配置存储在TFTP主机的配置文件

Interfaces

在全局配置模式下切换router接口,输入interface命令,?用于提示可选参数,为如下:
Router(config)#interface ?
(略)
Serial Serial
前半部分为参数,后半部分为描述,接着输入serial 0,进入router接口配置模式,如下:
Router(config)#interface serial 0
Router(config-if)#

Subinterfaces

在router的某个接口划分逻辑子接口(subinterface),输入命令进入子接口模式,如下,注意提示符:
Router(config)#interface fa0/0.?
<0-4294967295>; FastEhernet interface number
Router(config)#interface fa0/0.1
Router(config-subif)#

Line Command

进入线路配置模式,注意提示符,如下:
Router(config)#line console 0
Router(config-line)#

Routing Protocol Configurations

给router配置路由协议,比如RIP,注意提示符,如下:
Router(config)#router rip
Router(config-router)#

从全局模式退出到特权模式可以使用快捷键Ctrl+Z

Editing and Help Features

一些特写:
1.在命令行下输入?,将得到该模式下可以使用的命令列表以及其描述
2.假如你不确定1个命令是如何写的,比如你只记得是字母c开头,你可以输入c加1个?,将得到该模式下可以使用的所有命令:
Router#c?
clear clock configuration connect copy
Router#clock ?
set Set the time and date
3.假如你输入的命令不完整,将得到1个错误提示:Imcomplete command,这样有助于分析命令哪出错了
4.router支持命令缩写,比如show可以缩写为sh,sho,但是假如你像如下那样输入了不完整的缩写,将得到错误提示:Ambiguous command
Router#sh te
% Ambiguous command: sh te
Router#sh te?
tech-support template terminal

一切其他的快捷键:
1.Ctrl+A:把光标快速移动到整行的最开始
2.Ctrl+E:把光标快速移动到整行的最末尾
3.Esc+B:后退1个单词
4.Ctrl+B:后退1个字符
5.Esc+F:前进1个单词
6.Ctrl+F:前进1个字符
7.Ctrl+D:删除单独1个字符
8.Backspace:删除单独1个字符
9.Ctrl+R:重新显示1行
10.Ctrl+U:擦除1整行
11.Ctrl+W:删除1个单词
12.Tab:自动补齐命令
13.Up arrow或者Ctrl+P:显示之前最后输入过的命令
14.Down arrow或者Ctrl+N:显示之前刚刚输入过的命令

其他的一些关于历史的命令:
1.show history:显示最后输入的10条命令,默认是10条,可以修改该值
2.terminal history size:修改显示最后输入过的的命令的数量,默认是10条,最大是256条
3.show terminal:显示命令历史缓存大小,如下:
Router#sh terminal
(略)
History is enabled,history size is 10
(略)
Router#terminal history size ?
<0-256>; Size of history buffer
Router#terminal history size 25
Router#sh terminal
(略)
History is enabled,history size is 25
(略)

Gather Basic Routing Information

show version:显示系统硬件的基本配置和软件版本,以及配置文件的名字和来源,还有启动镜象,最后是configuration register的值

Set Passwords:

有5种密码用于加密你的Cisco router:
1.控制口(console)
2.辅助口(AUX)
3.VTY
4.enable password
5.enable secret

Enable Passwords

enable password:给console和AUX口加密,防止未授权用户进入特权模式,但是密码是非加密形式
enable secret:给console和AUX口加密,防止未授权用户进入特权模式,密码是加密形式,并且一旦起用了这个密码,将凌驾于enable password之上,如果同时设置了enable password和enable secret的情况下,必须输入不同的密码,如下:
Router(config)#enable password 123
Router(config)#enable secret 123
The enable password you have chosen is the same as your enable secret.This is not recommended.Re-enter the enable password
Router(config)#enable secret 321

如果VTY线路的密码没有设置,你将无法使用telnet来连上它

Auxiliary Password

配置AUX密码:
Router#conf t
Router(config)#line aux ?
<0-0>; First line number
Router(config)#line aux 0
Router(config-line)#login
Router(config-line)#password 123

Console Password

配置console密码以及一些辅助命令:
Router#conf t
Router(config)#line console ?
<0-0>; First line number
Router(config)#line console 0
Router(config-line)#login
Router(config-line)#password 123
Router(config-line)#exec-timeout ?
<0-35791>; Timeout in minutes
Router(config-line)#exec-timeout 0 ?
<0-2147483>; Timeout in seconds
<cr>;
Router(config-line)#exec-timeout 0 0
Router(config-line)#logging synchonous
exec-timeout命令:如果X分钟X秒不活动的话将自动退出,默认是10分钟,0 0代表永远不自动退出
logging synchronous:光标跟随

Telnet Password

配置VTY密码:如果你的IOS不是企业版(Enterprise edition),默认你只能有5条VTY线路,线路0到4.配置如下:
Router(config-line)#line vty 0 ?
<1-4>; Last Line Number
<cr>;
Router(config-line)#line vty 0 4
Router(config-line)#login
Router(config-line)#password 123

刚才说过了,如果你的VTY线路没有配置密码的话,你将无法telnet连上它,它会报错:VTY线路没有配置密码.但是你可以取消VTY密码,这样就可以在没有密码的情况下进行telnet,处于安全考虑,此方法不推荐,配置如下:
Router(config-line)#line vty 0 4
Router(config-line)#no login

Encryption Your Passwords

只有enable secret是加密的,当你在特权模式下输入sh running-config显示DRAM的配置文件时,其他密码将被罗列出来:
Router#sh run
(略)
!
enable secret jhdflkdfg$#sdf
enable password 123
!
(略)

对密码进行加密:在全局配置模式下使用service password-encryption命令

Banners

banner类似标语,问候语.最常用的是MOTD(message of the day),分界符用于分隔信息,但是分隔符不能出现在MOTD信息中,如下:
Router(config)#banner motd #
The Router is mine
#
Router(config)#^Z(Ctrl+Z)
Router#exit
Router con0 is now available
Press RETURN to get started
The Router is mine
Router>;

其他的3种banner:
1.exec banner
2.incoming banner
3.login banner

Router Interfaces

配置router的接口,一般命令模式采用:interface type number的格式,比如:
Router(config)#int ethernet 0
但是Cisco的2600,3600,4000和7000等系列采用了物理卡槽和模块化的端口机制.因此,命令变化为:interface type slot/port,比如:
Router(config)#int fastethernet 0
% Imcomplete command
Router(config)#int fastethernet 0?
/
Router(config)#int fastethernet 0/?
<0-1>; Fastethernet interface number
Router(config)#int fastethernet 0/1

配置连接器的介质类型,使用media-type命令,不过这个一般是自动检测,如下:
Router(config)#int fa 0/0
Router(config-if)#media-type ?
100BaseX Use RJ45 for -TX; SC F0 for –FX
MII Use MII connector

Bring Up an Interface

打开和关闭1个接口,分别使用shutdown和no shutdown命令,当你关闭某个接口的时候,使用sh interfaces命令可以查看接口状态,并且你将看到以下输出:
Router#sh int e0
Ethernet0 is administratively down,line protocol is down
(略)
接口是关闭的,所以你要手动打开它,如下:
Router#conf t
Router(config)#int e0
Router(config-if)#no shut
Router(config-if)#^Z
Router#sh int e0
Ethernet is up,line protocol is up
(略)

Configuring an IP Address on an Interface

给某个接口配置IP地址,使用ip address [address] [mask]命令,如下:
Router(config)#int e0
Router(config-if)#ip address 172.16.10.2 255.255.255.0
记得把接口打开:
Router(config-if)#no shut
Router(config-if)#^Z

如果你需要在1个接口添加第二个子网地址,在末尾使用secondary参数,这将替换现有IP地址,如下:
Router(config)#int e0
Router(config-if)#ip address 172.16.20.2 255.255.255.0 secondary
Router(config-if)#^Z
来验证下:
Router#sh run
(略)
!
interface Ethernet0
ip address 172.16.20.2 255.255.255.0 secondary
ip address 172.16.10.2 255.255.255.0
!

Serial Interface Commands

Serial口一般是连接在CSU/DSU等类型的提供时钟频率的设备上.但是,假如你在个实验环境里采用了背对背配置,那么1端将作为DCE设备提供时钟频率.默认Cisco的router都是DTE,所以你必须让1个serial接口来提供时钟频率,采用的命令是:clock rate,如下:
Router(config)#int s0
Router(config-if)#clock rate ?
   Speed (bits per second)
1200
(略)
56000
64000
(略)
Router(config-if)#clock rate 64000
% Error: This commands applies only to DCE interfaces
Router(config-if)#int s1
Router(config-if)#clock rate 64000

确定serial接口是否是DCE线缆使用sh controllers命令,如下:
Router>;sh controllers s 0
HD unit 0, idb=0x297DE8, driver structure at 0x29F3A0
Buffer size 1524 HD unit 0, V.35 DCE cable

Cisco的router的默认serial连接带宽是T-1(1.544Mbps).有的路由协议要以带宽做为度来进行衡量,所以,我们给它配置带宽,使用bandwidth命令,注意参数单位是kb,如下:
Router(config-if)#bandwidth ?
<1-10000000>; Bandwidth in kilobits
Router(config-if)#bandwidth 64

Hostnames

给router配置主机名,使用hostname命令,这个是本地标志,不影响router在Internet上的工作,注意回车立即生效,如下:
Router(config)#hostname Noko
Noko(config)#hostname Noco
Noco(config)#

Descriptions

description命令:本地标志,可以给接口加描述,以便用于区分,如下:
Noco(config)#int e0
Noco(config-if)#description Sales LAN
Noco(config-if)#^Z
来验证下:
Noco#sh int e0
(略)
Description: Sales LAN
(略)

Viewing and Saving Configurations

将running-config(DRAM)的文件复制到startup-config(NVRAM)里,使用copy running-config startup-config命令:
Noco#copy run start

可以使用erase startup-config命令删除startup-config文件,如下:
Noco#erase startup-config
(略)
Noco#sh start
%% Non-volatile configuration memory is not present
假如在这个情况下在特权模式使用reload命令重新启动router,将进入setup模式

Verifying Your Configuration

ping:采用了ICMP echo requests和replies
traceroute:使用ICMP和IP TTL来跟踪包所经过的路径

Verifying with the show ip interface Command

show ip interface:提供router接口的层3信息,包括:
1.接口状态
2.IP地址和掩码
3.访问列表(access-list)信息
4.一些其他的基本的IP信息

Using the show ip interface brief Command

show ip interface brief:和show ip interface类似,只是提供简洁点的总结信息

Using the show controllers Command

sh controllers:显示物理接口的信息,还提供serial口线缆信息,如下:
Router#sh controllers serial 0/0
(略)
buffer size 1524 HD unit 0, V.35 DTE cable
(略)
Router#sh controllers serial 0/1
(略)
buffer size 1524 HD unit 1, V.35 DCE cable
(略)

论坛徽章:
0
2 [报告]
发表于 2004-05-12 12:39 |只看该作者

[原创]Cisco网络专家教程Phase1-网络互连基础教程

Chapter5 IP Routing


Routing Basics

路由协议(routing protocol):用于routers动态寻找网络最佳路径,保证所有routers拥有相同的路由表.一般,路由协议决定数据包在网络上的行走的路径.这类协议的例子有OSPF,RIP,IGRP,EIGRP等
可路由协议(routed protocol):当所有的routers知道了整个网络的拓扑结构以后,可路由协议就可以用来发送数据.一般的,可路由协议分配给接口,用来决定数据包的投递方式.这类例子有IP和IPX

路由:把1个数据包从1个设备发送到不同网络里的另1个设备上去.这些工作依*routers来完成.routers并不关心主机,它们只关心网络的状态和决定网络中的最佳路径

router可以路由数据包,必须至少知道以下状况:
1.目标地址(destination address)
2.可以学习到远端网络状态的邻居router
3.到达远端网络的所有路线
4.到达远端网络的最佳路径
5.如何保持和验证路由信息

The IP Routing Process

路由原理:当IP子网中的一台主机发送IP包给同一IP子网的另一台主机时,它将直接把IP包送到网络上,对方就能收到.而要送给不同IP于网上的主机时,它要选择一个能到达目的子网上的router,把IP包送给该router,由它负责把IP包送到目的地.如果没有找到这样的router,主机就把IP包送给一个称为缺省网关(default gateway)的router上.缺省网关是每台主机上的一个配置参数,它是接在同一个网络上的某个router接口的IP地址
router转发IP包时,只根据IP包目的IP地址的网络号部分,选择合适的接口,把IP包送出去.同主机一样,router也要判定接口所接的是否是目的子网,如果是,就直接把包通过接口送到网络上,否则,也要选择下一个router来传送包.router也有它的缺省网关,用来传送不知道往哪儿送的IP包.这样,通过router把知道如何传送的IP包正确转发出去,不知道的IP包送给缺省网关,这样一级级地传送,IP包最终将送到目的地,送不到目的地的IP包则被网络丢弃了

当主机A发送个IP包到主机B,目标MAC地址使用的是默认网关的以太网接口地址.这是因为帧不能放置在远端网络.

show ip route:查看路由表信息,比如:
Router#sh ip route
(略)
Gateway of last resort is not set
C 192.168.10.0/24 is directly connected, FastEthernet0/0
C 192.168.20.0/24 is directly connected, Serial 0/0
Router#
C代表的是:直接相连

Configuring IP Routing in Our Network

当1个router收到1个目标网络号没有在路由表中列出的包的时候,它并不发送广播寻找目标网络,而是直接丢弃它

几种不同类型的路由:
1.静态路由(static routing)
2.默认路由(default routing)
3.动态路由(dynamic routing)

Static Routing

静态路由:手动填加路由线路到路由表中,优点是:
1.没有额外的router的CPU负担
2.节约带宽
3.增加安全性
缺点是:
1.网络管理员必须了解网络的整个拓扑结构
2.如果网络拓扑发生变化,管理员要在所有的routers上手动修改路由表
3.不适合在大型网络中

静态路由的配置命令:ip route [dest-network] [mask] [next-hop address或exit interface] [administrative distance] [permanent]
ip route:创建静态路由
dest-network:决定放入路由表的路由表
mask:掩码
next-hop address:下1跳的router地址
exit interface:如果你愿意的话可以拿这个来替换next-hop address,但是这个是用于点对点(point-to-point)连接上,比如广域网(WAN)连接,这个命令不会工作在LAN上
administrative distance:默认情况下,静态路由的管理距离是1,如果你用exit interface代替next-hop address,那么管理距离是0
permanent:如果接口被shutdown了或者router不能和下1跳router通信,这条路由线路将自动从路由表中被删除.使用这个参数保证即使出现上述情况,这条路线仍然保持在路由表中

静态路由的具体配置:

Router    Network Address            Interface   Address
RouterA   192.168.10.0               fa0/0      192.168.10.1
          192.168.20.0               s0/0       192.168.20.1
RouterB   192.168.20.0               s0/0       192.168.20.2
          192.168.40.0               s0/1       192.168.40.1
          192.168.30.0               fa0/0      192.168.30.1
RouterC   192.168.40.0               s0/0       192.168.40.2
          192.168.50.0               fa0/0      192.168.50.1

准备工作:先配置RouterA,B和C的基本信息,注意RouterB作为DCE提供时钟频率:
RouterA(config)#int fa0/0
RouterA(config-if)#ip address 192.168.10.1 255.255.255.0
RouterA(config-if)#no shut
RouterA(config-if)#int s 0/0
RouterA(config-if)#ip address 192.168.20.1 255.255.255.0
RouterA(config-if)#no shut
RouterA(config-if)#^Z
RouterA#copy run start

RouterB(config)#int fa0/0
RouterB(config-if)#ip address 192.168.30.1 255.255.255.0
RouterB(config-if)#no shut
RouterB(config-if)#int s 0/0
RouterB(config-if)#ip address 192.168.20.2 255.255.255.0
RouterB(config-if)#clock rate 64000
RouterB(config-if)#no shut
RouterB(config-if)#ip address 192.168.40.1 255.255.255.0
RouterB(config-if)#clock rate 64000
RouterB(config-if)#no shut
RouterB(config-if)#^Z
RouterB#copy run start

RouterC(config)#int fa0/0
RouterC(config-if)#ip address 192.168.50.1 255.255.255.0
RouterC(config-if)#no shut
RouterC(config-if)#int s 0/0
RouterC(config-if)#ip address 192.168.40.2 255.255.255.0
RouterC(config-if)#no shut
RouterC(config-if)#^Z
RouterC#copy run start

配置RouterA静态路由:
RouterA了解自己的网络192.168.10.0和192.168.20.0(直接相连),所以RouterA的路由表必须加入192.168.30.0和192.168.40.0, 192.168.50.0的信息,注意下1跳接口,如下:
RouterA(config)#ip route 192.168.30.0 255.255.255.0 192.168.20.2
RouterA(config)#ip route 192.168.40.0 255.255.255.0 192.168.20.2
RouterA(config)#ip route 192.168.50.0 255.255.255.0 192.168.20.2

验证路由信息:
RouterA#sh ip route
(略)
S 192.168.50.0 [1/0] via 192.168.20.2
(略)
S代表静态路由,[1/0]分别为管理距离和度

配置RouterB静态路由:
RouterB所必须学习到的网络应该是192.168.10.0和192.168.50.0,注意它们的下1跳接口地址,配置如下:
RouterB(config)#ip route 192.168.10.0 255.255.255.0 192.168.20.1
RouterB(config)#ip route 192.168.50.0 255.255.255.0 192.168.40.2

配置RouterC静态路由:
RouterC所必须学习到的网络应该是192.168.10.0,192.168.20.0和192.168.30.0,注意它们的下1跳接口地址,配置如下:
RouterC(config)#ip route 192.168.10.0 255.255.255.0 192.168.40.1
RouterC(config)#ip route 192.168.20.0 255.255.255.0 192.168.40.1
RouterC(config)#ip route 192.168.30.0 255.255.255.0 192.168.40.1

Verifying Your Configuration

根据上面的拓扑结构,我们来验证下是否能够端到端的ping通:
RouterC#ping 192.168.10.1
(略)
Sending 5, 100-byte ICMP Echos to 192.168.10.1, timeout is 2 seconds:
!!!!!
(略)
RouterA#ping 192.168.50.1
(略)
Sending 5, 100-byte ICMP Echos to 192.168.50.1, timeout is 2 seconds:
!!!!!
(略)
2端都能ping通,说明没问题

Default Routing

默认路由:一般使用在stub网络中,stub网络是只有1条出口路径的网络.使用默认路由来发送那些目标网络没有包含在路由表中的数据包.根据上面的拓扑图,你就不能把默认路由定义在RouterB上,因为RouterB拥有不止1个出口路径接口.其实你可以把默认路由理解成带通配符(wildcard)的静态路由

配置默认路由:
首先要去掉之前配置的静态路由
RouterC(config)#no ip route 192.168.10.0 255.255.255.255 192.168.40.1
RouterC(config)#no ip route 192.168.20.0 255.255.255.255 192.168.40.1
RouterC(config)#no ip route 192.168.30.0 255.255.255.255 192.168.40.1
接下来配置默认路由:
RouterC(config)#ip route 0.0.0.0 0.0.0.0 192.168.40.1
额外的命令,使各个接口打破分类IP规则,12.x的IOS默认包含这条命令,如下:
RouterC(config)#ip classless
再验证下:
RouterC(config)#^Z
RouterC#sh ip route
(略)
S* 0.0.0.0/0 [1/0] via 192.168.40.1
S*代表默认路由

Dynamic Routing

动态路由协议,有很多优点,灵活等等,但是缺点也有,比如占用了额外的带宽,CPU负荷高

组网利用到的2种路由协议:内部网关协议(Interior Gateway Protocols,IGPs)和外部网关协议(Exterior Gateway Protocols,EGPs)

自治系统(Autonomous System,AS):同1个管理域的网络集合,意味着在这里面的所有routers共享相同的路由表信息

IGPs:在相同的AS内交换路由信息
EGPs:AS间的通信

Routing Protocol Basics

Administrative Distances

管理距离(AD): 0到255之间的1个数,它表示一条路由选择信息源的可信性值.该值越小,可信性级别越高.0为最信任,255为最不信任即没有从这条线路将没有任何流量通过.假如1个router收到远端的2条路由更新,router将检查AD,AD值低的将被选为新路线存放于路由表中.假如它们拥有相同的AD,将比较它们的度(metric).度低的将作为新线路.假如它们的AD和度都一样,那么将在2条线路做均衡负载

一些常用路由协议默认的AD:
1.直接相连:0
2.静态路由:1
3.EIGRP:90
4.IGRP:100
5.OSPF:110
6.RIP:120

记住,如果你在条线路上配置了静态路由,又配置了RIP,默认情况下,router只会使用静态路由,因为它的AD为1小于RIP的AD

Routing Protocols

3种路由协议:
1.距离向量(distance vector)
2.链路状态(link state)
3.混合型(hybrid)

距离向量:用于根据距离(distance)来判断最佳路径,当1个数据包每经过1个router时,被称之为经过1跳.经过跳数最少的则作为最佳路径.这类协议的例子有RIP和IGRP,它们将整个路由表向与它们直接相连的相邻routers

链路状态:也叫最短路径优先(shortest-path-first)协议.每个router创建3张单独的表,1张用来跟踪与它直接相连的相邻router;1张用来决定网络的整个拓扑结构;另外1张作为路由表.所以这种协议对网络的了解程度要比距离向量高.这类协议例子有OSPF

混合型:综合了前2者的特征,这类协议的例子有EIGRP

Distance-Vector Routing Protocols

距离向量路由算法将完整的路由表传给相邻router,然后这个router再把收到的表的选项加上自己的表来完成整个路由表,这个叫做routing by rumor,因为这个router是从相邻router接受更新而非自己去发现网络的变化

RIP就是距离向量协议的例子.RIP使用跳数来决定最佳路径,假如到达1个网络有2条跳数相同的链路,那么将均衡负载在这2条链路上,平均分配,RIP最多支持6条均衡链路

针孔拥塞(pinhole congestion):假如2条到达远端网络的链路1和2的跳数均为1,但是链路1的带宽是56kbps,2的是T1线路1544kbps,显然,走链路2好过走链路1,但是RIP使用跳数作为度,所以RIP会把数据平均分配到链路1和2上,这就造成了pinhole congestion

我们来了解下距离向量协议的启动过程:当router启动的时候,只有那些与它们直接相连的网络号出现在它们自己的路由表里,当距离向量协议在每个router上启动后,路由表将从相邻router获得更新信息来更新自己的路由表.每个router将完整的路由表,包含网络号,出口接口和跳数,发送给相邻router.接下来,路由表包含了完整的网络信息,达到汇聚(converged)状态.另外,在汇聚期间,没有数据将会被传送,所以说,快速汇聚就成了1个必不可少的话题

Routing Loops

距离向量协议通过向所有接口周期性的广播路由更新来跟踪整个网络的变化,这些广播包括了完整的路由表.这样看上不错,但是它却给CPU增加了负荷和占用了额外的带宽.而且,汇聚过慢的话容易导致路由表的不一致性和容易产生路由循环(routing loops)

路由循环的例子:

假如网络5出问题了,不工作了,E就发送更新给C汇报情况,于是,C开始停止通过E来路由信息到网络5,但是这个时候A,B和D还不知道网络5出问题了.所以它们仍然继续发送更新信息.C发送更新给B说停止路由到网络5.但是此时A和D还没有更新,所以它们觉得网络5仍然可用,而且跳数为3.接下来,A发送更新说:嘿!网络5还可用.B和D接受到A发来的更新后,没办法,也相同的觉得可用经过A到达网络5,并且认为网络5可用.所以就这样,1个目标网络是网络5的数据包将进过A到B,然后又回到A……

Maximum Hop Count

路由循环的问题也可用描述为跳数无限(counting to infinity).其中的1个解决办法就是定义最大跳数(maximum hop count).RIP是这样定义最大跳数的:最大跳数为15,第16跳为不可达.但是这样不能根本性的祛除路由循环的问题

Split Horizon

另外1个解决办法就是水平分裂(split horizon),它规定由1个接口发送出去的路由信息不能再朝这个接口往回发送.这个办法减少了路由信息的不正确性和负载

Route Poisoning

路由破坏(route poisoning)也用于避免不一致的更新信息来阻止网络循环.由刚才的拓扑图,当网络5不可用了,E将把这条线路的度变为16,即不可达,破坏这条线路.这样C就不会发送错误的更新了.当C收到E的route poisoning信息,,C发送个叫做poison reverse的更新给E,这样保证了所有的线路都知道那条破坏线路的信息,来防止循环

Holddowns

抑制计时(holddown): 一条路由信息无效之后,一段时间内这条路由都处于抑制状态,即在一定时间内不再接收关于同一目的地址的路由更新.如果,路由器从一个网段上得知一条路径失效,然后,立即在另一个网段上得知这个路由有效.这个有效的信息往往是不正确的,抑制计时避免了这个问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性.它使用了触发更新(trigger update)来重新设定holddown计时器

触发更新:和一般的更新不一样,当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而不是等待30秒的更?芷?同样,当一个路由器刚启动RIP时,它广播请求报文.收到此广播的相邻路由器立即应答一个更新报文,而不必等到下一个更?芷?这样,网络拓扑的变化会最快地在网络上传播开,减少了路由循环产生的可能性

触发更?匦律瓒?剖逼鞯募父銮榭?
1.计时器超时
2.收到1个拥有更好的度的更新
3.刷新时间(flush time)

Routing Information Protocol(RIP)

RIP是一种距离向量路由协议,使用跳数作为度,最大15跳,它每30秒向外发送整个路由表的信息.RIP适合于小型网络.RIP版本1(RIPv1)使用分级路由(classful routing),意思是在网络的所有设备必须使用相同的子网掩码;而RIP版本2(RIPv2)使用无分类路由(classless routing).我们这里讨论RIPv1

RIP Timers

RIP使用3种不同的计时来调节它的性能:
1.路由更新计时(route update timer)
2.路由无效计时(route invalid timer)
3.保持计时器(holddown timer)
4.路由刷新时间(route flush timer)

路由更新计时:router发送路由表副本给相邻router的周期性时间,30秒

路由无效计时:如果经过180秒,一个路由的选项都没有得到确认,router就认为它已失效了

保持计时器:当router得知路由无效后,router将进如holddown状态,默认时间是180秒,如果在这180秒里,router接收到路由更新以后或者超过180秒,保持计时器停止计时

路由刷新时间: 如果经过240秒,路由表的选项仍没有得到确认,它就被从路由表中删除

Configuring RIP Routing

配置RIP:

Router    Network Address            Interface   Address
RouterA   192.168.10.0               fa0/0      192.168.10.1
          192.168.20.0               s0/0       192.168.20.1
RouterB   192.168.20.0               s0/0       192.168.20.2
          192.168.40.0               s0/1       192.168.40.1
          192.168.30.0               fa0/0      192.168.30.1
RouterC   192.168.40.0               s0/0       192.168.40.2
          192.168.50.0               fa0/0      192.168.50.1

先来配置RouterA,由于AD的问题,所以要先去掉之前的静态路由,如下:
RouterA(config)#no ip route 192.168.30.0 255.255.255.0 192.168.20.2
RouterA(config)#no ip route 192.168.40.0 255.255.255.0 192.168.20.2
RouterA(config)#no ip route 192.168.50.0 255.255.255.0 192.168.20.2
使用RIP配置命令为router rip,起用RIP,接下来使用network命令配置需要进行通告(advertise)的网络号,注意router的提示符,如下:
RouterA(config)#router rip
RouterA(config-router)#network 192.168.10.0
RouterA(config-router)#network 192.168.20.0
RouterA(config-router)#^Z
RouterA#
注意配置的网络号,是直接相连的网络,而通告非直接相连的网络任务,就交给RIP来做.还有就是要注意RIPv1是classful routing,意思是假如你使用B类172.16.0.0/24,子网172.16.10.0,172.16.20.0和172.16.30.0,在配置RIP的时候,你只能把网络号配置成network 172.16.0.0

配置RouterB,由于AD的问题,所以要先去掉之前的静态路由,如下:
RouterB(config)#no ip route 192.168.50.0 255.255.255.0 192.168.40.2
RouterB(config)#no ip route 192.168.10.0 255.255.255.0 192.168.20.1
配置RIP:
RouterB(config)#router rip
RouterB(config-router)#network 192.168.20.0
RouterB(config-router)#network 192.168.30.0
RouterB(config-router)#network 192.168.40.0
RouterB(config-router)#^Z
RouterB#

配置RouterC,由于AD的问题,所以要先去掉之前的默认路由,如下:
RouterC(config)#no ip route 0.0.0.0 0.0.0.0 192.168.40.1
配置RIP:
RouterC(config)#router rip
RouterC(config-router)#network 192.168.50.0
RouterC(config-router)#network 192.168.40.0
RouterC(config-router)#^Z
RouterC#

Verifying the RIP Routing Tables

验证配置好的路由信息,如下:
RouterA#sh ip route
(略)
R 192.168.50.0 [120/2] via 192.168.20.2, 00:00:23, Serial0/0
(略)
注意R代表的是RIP,[120/2]分别代表AD和度,在这里,度即为跳数.假如说你在这个信息里看到的是[120/15],那么下1跳为16,不可达,这条路由线路也将随之无效,将被丢弃

Holding Down RIP Propagation

如果你想阻止RIP更新信息传播到LANs和WANs上,可以使用passive-interface命令,这条命令可以防止RIP更新信息广播从你定义了的接口上发送出去,但是这个接口仍然可以接受到更新信息,如下:
RouterA(config)#router rip
RouterA(config-router)#network 192.168.10.0
RouterA(config-router)#passive-interface s 0/0

Interior Gateway Routing Protocol(IGRP)

IGRP是Cisco私有的距离向量路由协议,意思是说只有Cisco的routers才可以运行IGRP.IGRP的一些特点有:最大跳数255,默认100跳,这样就比较适合中大型网络.而且,IGRP默认使用带宽和延迟(delay)作为度来寻找最佳路径,这样的度就叫复合度(composite metric).当你配置IGRP的时候,你必须以AS号作为配置参数,所有的routers必须使用相同的AS号来共享路由表信息. IGRP支持6条链路的均衡负载

下面是一些你在RIP中找不到的,IGRP专有的特征:
1.IGRP可以在1个大型组网中使用到
2.使用AS号
3.每90秒发送完整的路由更新
4.使用带宽和延迟作为度

IGRP Timers

IGRP计时:
1.路由更新计时:默认90秒
2.路由无效计时:默认270秒
3.保持计时器:默认280秒(3倍更新时间+10秒)
4.路由刷新时间: 默认630秒

Configuring IGRP Routing


Router    Network Address            Interface   Address
RouterA   192.168.10.0               fa0/0      192.168.10.1
          192.168.20.0               s0/0       192.168.20.1
RouterB   192.168.20.0               s0/0       192.168.20.2
          192.168.40.0               s0/1       192.168.40.1
          192.168.30.0               fa0/0      192.168.30.1
RouterC   192.168.40.0               s0/0       192.168.40.2
          192.168.50.0               fa0/0      192.168.50.1

配置RouterA,注意AS号的范围为1到65535,如下:
RouterA(config)#router igrp ?
<1-65535>; Autonomous system number
RouterA(config)#router igrp 10
RouterA(config-router)#netw 192.168.10.0
RouterA(config-router)#netw 192.168.20.0
RouterA(config-router)#^Z
RouterA#
记住IGRP也是classful routing,而且配置网络号是与它直接相连的网络

配置RouterB,如下:
RouterB(config)#router igrp 10
RouterB(config-router)#netw 192.168.20.0
RouterB(config-router)#netw 192.168.30.0
RouterB(config-router)#netw 192.168.40.0
RouterB(config-router)#^Z
RouterB#

配置RouterC,如下:
RouterC(config)#router igrp 10
RouterC(config-router)#netw 192.168.40.0
RouterC(config-router)#netw 192.168.50.0
RouterC(config-router)#^Z
RouterC#
注意RouterA,RouterB和RouterC使用相同的AS号

Verifying the IGRP Routing Tables

我们来验证下:
RouterA#sh ip route
(略)
I 192.168.50.0 [100/170420] via 192.168.20.2, Serial0/0
(略)
I代表IGRP[100/170420]为AD和复合度,度越低越好

Verifying Your Configurations

一些验证性的命令:
show protocols:显示所有的可路由协议和查看接口及其相关协议,如下:
RouterB#sh protocols
Gloabal values:
Internet Protocol routing is enabled
FastEthernet0 is up, line protocol is up
Internet Address is 192.168.30.1/24
Serial0/0 is up, line protocol is up
Internet Address is 192.168.20.2/24
Serial0/1 is up, line protocol is up
Internet Address is 192.168.40.1/24
RouterB#

show ip protocols:显示router上配置好了的路由协议,如下:
RouterB#sh ip protocols
Routing Protocols is “rip”
(略)

debug ip rip:发送控制台消息显示有关在router接口上收发RIP数据包的信息,关闭debug,使用undebug all或者no debug all命令,如下:
RouterB#debug ip rip
RIP protocol debugging is on
RouterB#
07:12:56: RIP: received v1 update from 192.168.40.2 on Serial0/1
07:12:56: 192.168.50.0 in 1 hops
(略)
RouterB#undebug all
All possible debugging has been turned off
RouterB#

debug ip igrp events:提供在网络中运行的IGRP路由选择信息的概要,关闭使用undebug ip igrp events或undebug all命令,如下:
RouterB#debug ip igrp events
IGRP event debugging is on
07:13:50: IGRP: received request from 192.168.40.2 on Serial0/1
07:13:50: IGRP: sending update to 192.168.40.2 via Serial1(192.168.40.1)
07:13:51: IGRP: Update contains 3 interior, 0 system, and 0 exterior routes
07:13:51: IGRP: Total route in update: 3
(略)
RouterB#un all
All possible debugging has been turned off

debug ip igrp transactions:显示来自相邻router要求更新的请求消息和由router发到相邻router的广播消息,关闭使用undebug all,如下:
RouterB#debug ip igrp transactions
07:14:05: IGRP: received request from 192.168.40.2 on Serial1
07:14:05: IGRP: sending update to 192.168.40.2 via Serial1(192.168.40.1)
07:14:05: subnet 192.168.30.0, metric=1100
07:14:05: subnet 192.168.20.0, metric=158250
(略)
RouterB#un all
All possible debugging has been turned off
RouterB#



Chapter6 Enhanced IGRP(EIGRP) and Open Shortest Path First(OSPF)


EIGRP Features and Operation

EIGRP是1种无分类(classless),增强的距离向量路由协议,和IGRP类似,EIGRP也使用AS,但是和IGRP不同的是,EIGRP在它的路由更新信息中要包含子网掩码的信息.这样,在我们设计的网络的时候,就允许我们使用VLSM和summarization.EIGRP有时候也算是混合型路由协议,因为它同时具有了距离向量路和链路状态的一些特征:比如它不像OSPF那样发送链路状态包而发送传统的距离向量更新;EIGRP也有链路状态协议的特征比如它在相邻router启动的时候同步路由表,然后只在拓扑结构发生变化的时候发送1些更新.这样就使得EIGRP能够很好的在1个大型网络中工作.EIGRP的主要特点如下:
1.通过PDMs(Protocol-Dependent Module)来支持IP,IPX和AppleTalk
2.有效的邻router的发现
3.通过可*传输协议(Reliable Transport Protocol,RTP)进行通讯
4.通过扩散更新算法(Diffusing Update Algorithm,DUAL)来选择最佳路径

Protocol-Dependent Module

EIGRP的1大特点是它可以支持几种网络层协议:IP,IPX和AppleTalk等.能像EIGRP那样支持数种网络层协议的还有Intermediate System-to-Intermediate System(IS-IS)协议,但是这个协议只支持IP和Connectionless Network Service(CLNS).EIGRP通过PDMs来支持不同的网络层协议.每个EIGRP的PDM保持1个单独的路由信息表来装载某种协议(比如IP)的路由信息.也就是有IP/EIGRP表,IPX/EIGRP的表和AppleTalk/EIGRP表

Neighbor Discovery

在运行了EIGRP的router彼此进行交换信息之前,它们首先必须成为邻居(neighbor).建立邻居关系必须满足以下3个条件:
1.Hello信息或接受收ACK
2.AS号匹配
3.K值

链路状态协议趋向于使用Hello信息来建立邻居关系,它不会像距离向量那样周期性的发送路由更新.为了保持邻居关系,运行了EIGRP的router必须持续从邻居那里收到Hellos

如果不在1个AS内,router之间是不会共享路由信息的,也不会建立邻居关系.这样做的优点是在大型网络中可以减少特定某个AS内路由信息的传播

当EIGRP发现新邻居的时候,就开始通告整个路由表给别的router,当所有的router都知道新成员的加入,学习到新的路径以后,从那开始,路由表中有变动的部分才会传播给别的router.当router接收到邻居的更新以后,把它们保存在本地数据库表里

看下几个术语:
1.可行距离(feasible distance):到达一个目的地的最短路由的度
2.后继(successor):后继是一个直接连接的邻居router,通过它具有到达目的地的最短路由.通过后继router将包转发到目的地
3.通告距离(reported distance):相邻router所通告的相邻router自己到达某个目的地的最短路由的度
4.可行后继(feasible successor):可行后继是一个邻居router,通过它可以到达目的地,不使用这个router是因为通过它到达目的地的路由的度比其他router高,但它的通告距离小于可行距离,因而被保存在拓扑表中,用做备择路由

Reliable Transport Protocol(RTP)

EIGRP使用一种叫做RTP的私有协议,来管理使用了EIGRP的router之间的通信,如RTP的名字,可*(reliable)即为这个协议的关键.RTP负责EIGRP数据包到所有邻居的有保证和按顺序的传输.它支持多目组播或单点传送数据包的混合传输/出于对效率的考虑.只有某些E IGRP数据包被保证可*传输.RTP确保在相邻router间正在进行的通信能够被维持.因此,它为邻居维护了一张重传表.该表指示还没有被邻居确认的数据包.未确认的可*数据包最多可以被重传1 6次或直到保持时间超时,以它们当中时间更长的那个为限.EIGRP所使用的多目组播地址是224.0.0.10

Diffusing Update Algorithm(DUAL)

EIGRP使用DUAL来选择和保持到远端的最佳路径.它能使router判决某邻居通告的一个路径是否处于循环状态,并允许router找到替代路径而无须等待来自其他router的更新.这样做有助于加快网络的汇聚.这个算法顾及以下几点:
1.备份的路由线路
2.支持VLSM
3.动态路由恢复
4.没有发现线路的话发送查询寻找新路线

Using EIGRP to Support Large Networks

EIGRP在大型网络中能够工作的很好,包含了很多优点比如:
1.在1个单独的router上可以支持多个AS
2.支持VLSM和summarization
3.路由发现和保持

Multiple AS

只有AS号相同的router才能共享路由信息.把大型网络分成不同的AS,可以有效的加快汇聚.EIGRP的AD为90,而外部EIGRP(external EIGRP)的AD为170

VLSM Support and Summarization

之前说过EIGRP支持VLSM,也支持不连续子网.什么是不连续子网?如下图:

如图可以看到,2个子网172.16.10.0/24和172.16.20.0/24由10.3.1.0/24来连接,但是routerA和B认为它们只有网络172.16.0.0

EIGRP支持在任何运行EIGRP的router上summary的手动创建,这样可以减少路由表的体积.EIGRP自动把网络summarize到等级边界,如下图:


Route Discovery and Maintenance
类似一些链路状态的协议,EIGRP通过Hello信息来发现邻居;而它又和距离向量类似,使用传闻路由的机制,即不主动去发现,而是听从别人的信息.EIGRP使用一系列的表来存储信息:
1.邻居表,记录了邻居的一些信息
2.拓扑表,记录了网络中的拓扑状态
3.路由表,根据这个来做路由决定

EIGRP Metrics

EIGRP使用混合度,包含到4个方面:
1.带宽
2.延迟(delay)
3.负载(load)
4.可*性(reliability)
5.最大传输单元(maximum transmission unix,MTU)

默认情况下EIGRP使用带宽和延迟来决定最佳路径

Configuration EIGRP

配置EIGRP,首先在全局配置模式下使用router eigrp [AS号]命令.接下来再使用network命令定义直接相连的网络.仍然可以像配置IGRP那样使用passive-interface命令来禁止某个接口接收或发送Hello信息.并且记住EIGRP的AD是90

来看1个配置实例,如图:

Router    Network Address            Interface   Address
RouterA   192.168.10.0               fa0/0      192.168.10.1
          192.168.20.0               s0/0       192.168.20.1
RouterB   192.168.20.0               s0/0       192.168.20.2
          192.168.40.0               s0/1       192.168.40.1
          192.168.30.0               fa0/0      192.168.30.1
RouterC   192.168.40.0               s0/0       192.168.40.2
          192.168.50.0               fa0/0      192.168.50.1
配置RouterA:
RouterA(config)#router eigrp 10
RouterA(config-router)#network 192.168.10.0
RouterA(config-router)#network 192.168.20.0
RouterA(config-router)#^Z
RouterA#
记住配置EIGRP和配置IGRP十分类似,唯一不同的是EIGRP是无分类路由(classless routing)
配置RouterB:
RouterB(config)#router eigrp 10
RouterB(config-router)#network 192.168.20.0
RouterB(config-router)#network 192.168.30.0
RouterB(config-router)#network 192.168.40.0
RouterB(config-router)#^Z
RouterB#
配置RouterC:
RouterC(config)#router eigrp 10
RouterC(config-router)#network 192.168.40.0
RouterC(config-router)#network 192.168.50.0
RouterC(config-router)#^Z
RouterC#
这样配置看上去好象没什么问题,EIGRP的AD比之前配置的RIPv1和IGRP的低,但是有个问题就是:增加了CPU的负担,而且占用了额外的带宽

还有1点要注意的是自动summarization,router默认会向分级边界进行summarize.如下图:

A的配置如下:
A(config)#router eigrp 100
A(config-router)#netw 172.16.0.0
A(config-router)#netw 10.0.0.0
A(config-router)#no auto-summary
B的配置如下:
B(config)#router eigrp 100
B(config-router)#netw 172.16.0.0
B(config-router)#netw 10.0.0.0
B(config-router)#no auto-summary
使用no auto-summary命令后,运行了EIGRP的router就不会相互进行通告

Verifying EIGRP

在刚才配置好的情况下使用show ip route命令查看路由信息,如下:
RouterA#sh ip route
(略)
D   192.168.30.0/24 [90/2172416] via 192.168.20.2, 00:04:36, Serial0/0
(略)
注意字母D代表DUAL,即代表EIGRP,AD为90

show ip route eigrp命令只显示路由表中的EIGRP选项

show ip eigrp neighbors:显示所有的EIGRP邻居

show ip eigrp topology:显示EIGRP拓扑表条目,如下:
RouterC#sh ip eigrp topology
(略)
P 192.168.40.0/24, 1 successors, FD is 21469856
     Via Connected, Serial0
(略)
注意前面的P代表passive状态,这样的状态是正常的如果看见的是A即active状态而不是P,说明router失去了到这个网络的路径并且在寻找替代路径

Open Shortest Path First(OSPF) Basics

在1个大型网络中,假如不是所有的设备都是Cisco的,EIGRP明显就不行,因为它是私有的.所以就可以使用OSPF协议或者路由redistribution(路由协议之间的翻译服务).OSPF使用Dijkstra算法,是1种链路状态协议.OSPF汇聚快速,支持多个耗费相同的路径.和EIGRP不同的是,OSPF只支持IP路由.OSPF也能够设计网络为层次化的,这样就把1个大的网络分割成几个小的网络,叫做区域(area).这是OSPF最好的设计方法.把OSPF设计成层次化的好处是:
1.减少路由成本(overhead)
2.加速汇聚
3.把大网络分割成小的区域

下面是1个典型的OSPF设计图,如下:

注意这个图,BR为骨干router(backbone router,BR),连接到这个骨干的为区域0或者骨干区域(backbone area),OSPF必须要有个区域0所有的router应该尽可能的连接到这个区域.连接其他区域到骨干区域的为区域边界router(area border router,ABR),ABR必须至少有1个接口位于区域0中.OSPF运行在1个AS中,而且能够连接多个AS,连接多个AS的router为自治系统边界router(autonomous system boundary router,ASBR)

OSPF Terminology

来看一些OSPF的术语:
1.link:网络或分配给网络的router的接口.当接口被加到OSPF的进程中以后,OSPF把它认为成是1条连接(link)
2.Router ID(RID):用来鉴别router的IP地址,Cisco通过使用回环(loopback)接口的最高的IP地址来鉴别router.如果回环接口没有配置IP地址,OSPF将选择所有物理接口中最高的IP地址
3.neighbors:2个或多个拥有连接到某个网络的接口的router
4.adjacency:允许直接进行路由更新的运行了OSPF的2个router的关系.不像EIGRP,OSPF直接和建立了adjacency关系的邻居共享路由信息.并不是所有的邻居都是adjacency关系,这个取决于网络类型和router的配置
5.neighborship database:所有运行OSPF的能够接收Hello信息的router的名单列表.各种信息,包括RID和状态等,都保持在每个router的neighborship database中
6.topology database:包含了从链路状态通告(link state advertisement,LSA)包得来的信息.router把它输入到Dijkstra算法中算出最短路径
7.link state advertisement:共享在运行了OSPF的router之间的链路状态和路由信息.router和与它建立了adjacency关系的交换LSA包
8.designated router(DR):多路访问网络中为避免router间建立完全相邻关系而引起大???OSPF在区域中选举一个DR,每个router都与之建立完全相邻关系.router用Hello信息选举一个DR.在广播型网络里Hello信息使用多播地址224.0.0.5周期性广播,并发现邻居.在非广播型多路访问网络中,DR负责向其他router逐一发送Hello信息
9.backup designated router(BDR):多路访问网络中DR的备用router,BDR从拥有adjacency关系的router接收路由更新,但是不会转发LSA更新
10.OSPF areas:连续的网络和router的分组.在相同区域的router共享相同的area ID.因为1个router1次可以成为1个以上的区域的成员, area ID和接口产生关联,这就允许了某些接口可以属于区域1,而其他的属于区域0.在相同的区域的router拥有相同的拓扑表.当你配置OSPF的时候,记住必须要有个区域0,而且这个一般配置在连接到骨干的那个router上.区域扮演着层次话网络的角色
11.boradcast(multi-access):广播型(多路访问)网络.比如以太网,允许多个设备连接,访问相同的网络;而且提供广播的能力.在这样的网络中必须要有1个DR和BDR
12.nonbroadcast multi-access(NBMA):这类网络类型有帧中继(Frame Relay),X.25和异步传输模式(Asynchronous Transfer Mode,ATM),这类网络允许多路访问,但是不提供广播能力
13.point-to-point:点对点网络.一个物理上的串行电路连接或者是逻辑上的,不需要DR和 BDR,邻居是自动发现的
14.point-to-multipoint:点对多点网络.不需要DR和BDR

SPF Tree Calculation

在1个区域内,每个router计算最佳最短的路径,这个计算是基于拓扑数据库里的信息和最短路径优先(shortest path first,SPF)算法的

SPF算法是OSPF的基础.当router启动后,它就初始化路由协议数据结构,然后等待下层协议关于接口已可用的通知信息.当router确认接口已准备好,就用OSPF Hello信息来获取邻居信息,即具有在共同的网络上接口的router.router向邻居发送Hello包并接收它们的Hello包.除了帮助学习邻居外,Hello包也有keep-alive的功能

在多路访问网络中,Hello选出一个DR和一个BDR.DR负责为整个网络生成LSA,它可以减少网络通信量和拓扑数据库的大小

当两个相邻router的链接状态数据库同步后,就称为邻接.在多路访问网络中,DR决定哪些router应该相邻接,拓扑数据库在邻接router间进行同步.邻接控制路由协议包的分发,只在邻接点间交换

每个router周期性地发送LSA,提供其邻接点的信息或当其状态改变时通知其它router.通过对已建立的邻接关系和链接状态进行比较,失效的router可以很快被检测出来,网络拓扑相应地更动.从LSA生成的拓扑数据库中,每个router计算最短路径树,以自己为根.这个最短路径树就生成了路由表

Cisco使用基于带宽的度,而其他厂商是用不同的标准来痕量度的.Cisco痕量度的公式为100,000,000/带宽(bps).比如100Mbps的快速以太网接口的耗费就为1,10Mbps的就为10,64Kbps的耗费为1563.可以使用ip ospf cost命令来修改耗费,值的范围是1到65535

Configuring OSPF

在CCNA的认证课程里,我们只讨论单域(single area)的OSPF配置.配置OSPF的2个要素:
1.启用OSPF
2.配置OSPF的区域

Enabling OSPF

启用OSPF在全局配置模式下使用router ospf [进程ID]命令,进程ID范围是1到65535.可以在同1个router上使用不止1个的OSPF进程,但是这并不等诙嘤?multi-area)的OSPF.第二个进程保持完整的拓扑数据库的拷贝,而且独立于第一个进程进行管理通信

Configuring OSPF Areas

OSPF使用wildmask来进行配置,如下:
RouterA(config)#router ospf 1
RouterA(config-router)#network 10.0.0.0 0.255.255.255 area 0
如上,0.255.255.255为wildmask,0的部分表示必须精确匹配,255表示为任意匹配.network 10.0.0.0 0.255.255.255 area 0这个命令的作用是:鉴定OSPF*作的接口,而且也会加进OSPF LSA通告的范围呢.OSPF使用这个命令查找所有处在10.0.0.0的网络里的接口,然后把它们放进区域0

来看1个配置实例,如图:

Router    Network Address            Interface   Address
RouterA   192.168.10.0               fa0/0      192.168.10.1
          192.168.20.0               s0/0       192.168.20.1
RouterB   192.168.20.0               s0/0       192.168.20.2
          192.168.40.0               s0/1       192.168.40.1
          192.168.30.0               fa0/0      192.168.30.1
RouterC   192.168.40.0               s0/0       192.168.40.2
          192.168.50.0               fa0/0      192.168.50.1

由于OSPF的AD为110,IGRP的为100,EIGRP的为90.所以要先去掉之前所配置的协议,RouterA配置如下:
RouterA(config)#no router eigrp 10
RouterA(config)#no router igrp 10
RouterA(config)#no router rip
RouterA(config)#router ospf 132
RouterA(config-router)#network 192.168.10.1 0.0.0.0 area 0
RouterA(config-router)#network 192.168.20.1 0.0.0.0 area 0
RouterA(config-router)#^Z
RouterA#

RouterB的配置如下:
RouterB(config)#no router eigrp 10
RouterB(config)#no router igrp 10
RouterB(config)#no router rip
RouterB(config)#router ospf 1
RouterB(config-router)#network 192.168.0.0 0.0.255.255 area 0
RouterB(config-router)#^Z
RouterB#
注意这里的参数192.168.0.0 0.0.255.255;代表查找192.168.0.0里的任何接口,并把它们放到区域0里

RouterC的配置如下:
RouterC(config)#no router eigrp 10
RouterC(config)#no router igrp 10
RouterC(config)#no router rip
RouterC(config)#router ospf 64999
RouterC(config-router)#network 192.168.40.0 0.0.0.255 area 0
RouterC(config-router)#network 192.168.50.0 0.0.0.255 area 0
RouterC(config-router)#^Z
RouterC#

Verifying OSPF Configuration

使用show ip route命令来验证下,如下:
RouterA#sh ip route
(略)
O    192.168.30.0/24 [110/65] via 192.168.20.2, 00:01:07, Serial0/0
(略)
注意上面的O代表OSPF,AD为110,度为65

其他的一些验证命令:

show ip ospf:显示每条或所有ODPF进程的相关信息,包括RID,区域信息,SPF信息和LAS计时器信息等,如下:
RouterA#sh ip ospf
Routing Process “ospf 132” with ID 192.168.20.1
(略)
如上可知道RID为192.168.20.1.即router的最高的那个IP地址

show ip ospf database:显示拓扑数据库信息,如下:
RouterA#sh ip ospf database
                OSPF Router with ID (192.168.20.1) (Process ID 132)
                           Router Link States (Area 0)
Link ID         ADV Router       Age    Seq#         Checksum      Link count
192.168.20.1     192.168.20.1       648  0x80000003     0x005E2B          3
(略)

show ip ospf interface:
1.接口IP地址信息
2.区域的分配信息
3.进程ID
4.RID
5.网络类型
6.耗费(cost)
7.优先级(priority)
8.DR/BDR
9.计时器间隔(timer intervals)
10.邻接的邻居信息

show ip ospf neighbor:显示邻居的信息,如果DR和BDR存在的话,它们的信息也会被显示出来

show ip protocols:显示配置了的所有路由协议的相关信息

OSPF and Loopback Interfaces

在配置OSPF路由协议的时候配置回环(loopback)接口是很重要的1件事.Cisco建议你配置OSPF的时候顺便配置回环接口.所谓回环接口,是逻辑接口而非物理接口,即不是你触摸的到的router上的真正的接口.作用是作为诊断OSPF而用.如果router的某一个接口由于故障down 掉而不可用了,此时你怎么通过telnet来连接并进行管理用呢?所以就引入了回环接口是概念,回环接口永远不会down掉,你就可以通过连上回环接口来进行管理

Configuring Loopback Interfaces

配置回环接口前先使用show ip ospf命令查看RID,接下来对接口进行配置,如下:
RouterA的配置:
RouterA(config)#int loopback0
RouterA(config-if)#ip address 172.16.10.1 255.255.255.0
RouterA(config-if)#no shut
RouterA(config-if)#^Z
RouterA#
RouterB的配置:
RouterB(config)#int lo0
RouterB(config-if)#ip address 172.16.20.1 255.255.255.0
RouterB(config-if)#no shut
RouterB(config-if)#^Z
RouterB#
RouterC的配置:
RouterC(config)#int lo0
RouterC(config-if)#ip address 172.16.30.1 255.255.255.0
RouterC(config-if)#no shut
RouterC(config-if)#^Z
RouterC#
注意2个回环接口的IP地址配置机制为任意配置,但是IP地址必须处于不同的子网内

Verifying Loopbacks and RIDs

验证回环接口的地址,可以使用show running-config的命令查看,如下:
RouterC#sh run
(略)
!
interface Loopback0
ip address 172.16.30.1 255.255.255.0
!
(略)

可以使用show ip ospf database命令,show ip ospf interface命令和show ip ospf命令查看RID信息.记住在你重新启动router前,新的RID是不会显示出来的,如下,启动后的RID信息:
RouterC#sh ip ospf
Routing Process “ospf 64999” with ID 172.16.30.1 and Domain ID 0.0.253.231
(略)
如上可以看出假如回环接口IP地址高于物理接口IP地址,将以回环接口的IP地址作为新的RID

论坛徽章:
0
3 [报告]
发表于 2004-05-12 12:40 |只看该作者

[原创]Cisco网络专家教程Phase1-网络互连基础教程

Chapter7 Layer 2 Switching


Switching Services

路由协议有在阻止层3的循环的过程.但是假如在你的switches间有冗余的物理连接,路由协议并不能阻止层2循环的发生,这就必须依*生成树协议(Spanning Tree Protocol,STP)

不像bridges使用软件来创建和管理MAC地址过滤表,switches使用ASICs来创建和管理MAC地址表,可以把switches想象成多端口的bridges

层2的switches和bridges快于层3的router因为它们不花费额外的时间字查看层3包头信息,相反,它们查看帧的硬件地址然后决定是转发还是丢弃.每个端口为1个冲突域,所有的端口仍然处于1个大的广播域里

层2交换提供:
1.基于硬件的桥接(ASIC)
2.线速(wire speed)
3.低延时(latency)
4.低耗费

Bridging vs. LAN Switching

桥接和层2交换的一些区别和相似的地方:
1.bridges基于软件,switches基于硬件
2.switches和看作多端口的bridges
3.bridges在每个bridge上只有1个生成树实例,而switches可以有很多实例
4.switches的端口远多于bridges
5.两者均转发层2广播
6.两者均通过检查收到的帧的源MAC地址来学习
7.两者均根据层2地址来做转发决定

Three Switch Function at Layer 2

层2交换的一些功能:
1.地址学习(address learning):通过查看帧的源MAC地址来加进1个叫做转发/过滤表的MAC地址数据库里
2.转发/过滤决定(forward/filter decisions):当1个接口收到1个帧的时候,switch在MAC地址数据库里查看目标MAC地址和出口接口,然后转发到符合条件的那个目标端口去
3.循环避免(loop avoidance):假如有冗余的连接,可能会造成循环的产生,STP就用来破坏这些循环

Spanning Tree Protocol(STP)
Spanning Tree Terms

Digital Equipment Coporation(DEC)在被收购和重命名为Compaq的时候,创建了原始的STP,
之后IEEE创建了自己的STP叫做802.1D版本的STP.和之前的DEC的STP不兼容.STP的主要任务是防止层2的循环,STP使用生成树算法(spanning-tree algorithm,STA)来创建个拓扑数据库,然后查找出冗余连接并破坏它

我们来看些关于STP的术语:
1.STP:bridges之间交换BPDU信息来检测循环,并通过关闭接口的方式来破坏循环
2.根桥(root bridge):拥有最好的bridge ID即为根桥,网络中的一些诸如哪些端口被堵塞(block)哪些端口作为转发模式的决定都由根桥来决定
3.BPDU:Bridge Protocol Data Unit,所有的switches通过交换这些信息来选择根switch
4.bridge ID:用于STP跟踪网络中的所有switches,这个ID由bridge优先级(priority)和MAC地址符合而成,优先级默认为32768,ID最低的即为根桥
4.非根桥(nonroot bridge):不是根桥的全为非根桥,非根桥交换BPDUs来更新STP拓扑数据库
5.根端口(root port):与根桥直接相连的端口,或者是到根桥最短的接口.如果到根桥的连接不止1条,将比较每条连接的带宽,耗费(cost)低的作为根端口;如果耗费相同就比较bridge ID,ID低的将被选用
6.指定端口(designated port):耗费低的端口,作为转发端口
7.端口耗费(port cost):带宽来决定
8.非指定端口(nondesignated port):耗费较高,为堵塞模式(blocking mode),即不转发帧
9.转发端口(forwarding port):转发端口用来转发帧
10.堵塞端口(blocked port):不转发帧,用来防止循环的产生,虽然不转发,但是它可以监听(listen)帧

Spanning Tree Operations

之前说过:STP的任务就是查找出网络中的所有连接,并关闭些会造成循环的冗余连接.STP首先选举1个根桥,用来对网络中的拓扑结构做决定.当所有的switches认同了选举出来的根桥后,所有的bridge开始查找根端口.假如在switches之间有许多连接,只能有1个端口作为指定端口

Selecting the Root Bridge

bridge ID用来在STP域里选举根桥和决定根端口,这个ID是8字节长,包含优先级和设备的MAC地址,IEEE版本的STP的默认优先级是32768.决定谁是根桥,假如优先级一样,那就比较MAC地址,MAC地址小的作为根桥

Selecting the Designated Port

假如不止1个连接到根桥,那就开始比较端口耗费,耗费低的作为根端口,下面是一些典型的耗费标准:
1.10Gbps:2
2.1Gbps:4
3.100Mbps:19
4.10Mbps:100

Spanning-Tree Port States

运行STP的bridges和switches的5种状态:
1.堵塞(blocking):不转发帧,只监听BPDUs,主要目的是防止循环的产生.默认情况下,当switch启动时所有端口均为blocking状态
2.监听(listening):端口监听BPDUs,来决定在传送数据帧之前没有循环会发生
3.学习(learning):监听BPDUs和学习所有路径,学习MAC地址表,不转发帧
4.转发(forwarding):转发和接收数据帧
5.禁用(disabled):不参与帧的转发和STP,一般在这个状态的都是不可*作的

一般来说,端口只处于转发和堵塞状态,如果网络拓扑发生了变化,端口会进入监听和学习状态,这些状态是临时的

Convergence

汇聚,也叫收敛(convergence):当所有端口移动到非转发或堵塞状态时,开始收敛,在收敛完成前,没有数据将被传送.收敛保证了所有的设备拥有相同的数据库达到一致.一般来说从堵塞状态进入到转发状态需要50秒

Spanning Tree Example

我们来看1个STP的例子,拓扑图给出了已知的MAC地址,并且所有优先级均为32768:

注意A的MAC地址最小,优先级均为32768,所以A作为根桥,并且要注意的是根桥的所有端口均作为转发模式(指定端口).接下来决定根端口,直接与根桥相连的作为根端口,而且作为转发模式,所以可以判定出根端口个指定端口,bridge ID决定指定和非指定端口.但是注意D和E之间,由于D的bridge ID小,所以D的为指定端口,E的作为非指定端口,如下:


LAN Switch Types

LAN的交换类型决定了当switch的端口接收到1个帧的时候如何去处理
延时(latency):指数据包进入一个网络设备到离开该设备的出口接口所花的时间,这个根据不同的交换模式也不一样

3种交换模式:
1.cut-through(fastforward):Cisco称这种模式叫cut-through,fastforward或者real time模式,使用这种模式的时候,LAN switch只读取到帧的目标地址为止,减少延时,但是不适合与高偏向错误率的网络
2.fragmentfree(modified cut-through):和cut-through类似,但是LAN switch读取到数据(data)部分的前64字节,这个是Catalyst 1900的默认模式
3.store-and-forward:在这个模式下,LAN switch复制整个帧到它的缓冲区里,然后计算CRC,也帧的长短可能不一样,所以延时根据帧的长短而变化.如果CRC不正确,帧将被丢弃;如果正确,LAN switch查找硬件目标地址然后转发它们
3种模式对帧的读取程度具体如下:


Configuring the Catalyst 1900 and 2950 Switches

1900是款低端switch产品,分为1912和1924系列:1912是有12个10BaseT端口而1924是有24个10BaseT端口

1900 and 2950 Switch Startup

当1900启动后,先运行POST,此时每个端口的发光二级管(LEDs)是绿色的,当POST完成后,LEDs开始闪烁然后熄灭;假如POST发现某个端口出问题了的话,系统LED和那个出问题的端口的LED开始变黄.假如你的console线缆接好了的话,POST开始显示菜单,如下:
1 user(s) now active on Management Console.

          User Interface Menu

  [M] Menus
  [K] Command Line
  [I] IP Configuration
Enter Selection:K
       CLI session with the switch is open
       To end the CLI session, enter [Exit].
>;

而2950的启动,有点像router,先进入setup模式.但是默认你可以不对其进行配置,启动如下:
     --- System Configuration Dialog ---
Would you like to enter the initial configuration dialog? [yes/no]: no

Press RETURN to get started!

00:04:53: %LINK-5-CHANGED: Interface Vlan1, changed state to administratively down
00:04:54: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down
Switch>;

Setting the Passwords

配置密码:
1.登陆密码(用户模式):防止未授权用户登陆
2.启用密码(特权模式):防止未授权用户修改配置

Setting the User Mode and Enable Mode Passwords

1900下,输入K进入CLI,输入enable进入特权模式,再输入config t进入全局配置模式,如下:
>;en
#config t
(config)#
当进入全局配置模式后,使用enable password命令配置登陆密码个启用密码,如下:
(config)#enable password ?
level Set exec level password
(config)#enable password level ?
<1-15>; Level Number
level1为登陆密码,level15为启用密码,密码长度范围是4到8字符之间,如下:
(config)#enable password level 1 nocoluvsnoko
Error: Invalid password length.
Password must be between 4 and 8 characters
重配置并验证:
(config)#enable password level 1 noco
(config)#enable password level 15 noko
(config)#exit
#exit

2950下的配置和配置router有点类似,如下:
Switch>;en
Switch#conf t
Switch(config)#line ?
<0-16>;   First Line number
console   Primary terminal line
vty   Virtual terminal
Switch(config)#line vty ?
<0-15>;   First Line number
Switch(config)#line vty 0 15
Switch(config-line)#login
Switch(config-line)#password noko
Switch(config-line)#line con 0
Switch(config-line)#login
Switch(config-line)#password noco
Switch(config-line)#exit
Switch(config)#exit
Switch#

Set the Enable Secret Password

enable secret比enable password更安全,而且同时设置了2者的话,只有前者起作用
1900下的配置,注意在1900下,enable secret和enable password可以设置成一样的,如下:
(config)#enable secret noko
2950下的配置和router类似,但是enable secret和enable passwor不可以设置成一样的,如下:
Switch(config)#enable password noko
Switch(config)#enable secret noko
The enable secret you have chosen is the same as your enable password.
This is not recommended. Re-enter the enable secret.
Switch(config)#enable secret noco
Switch(config)#

Setting the Hostname

给1900配置主机名,使用hostname命令,如下:
(config)#hostname Noko
Noko(config)#
给2950配置主机名,使用hostname命令,如下:
Switch(config)#hostname Noco
Noco(config)#

Setting IP Information

你可以不配置IP信息,直接把线缆插进端口,一样可以工作.配置IP地址信息有2点原因:
1.通过telnet或其他软件方式来管理switch
2.配置VLANs和其他等网络功能

默认下,没有IP地址和默认网关信息配置,在1900下,使用show ip命令查看默认IP配置,如下:
1900#sh ip
IP Address: 0.0.0.0
Subnet Mask: 0.0.0.0
Default Gateway: 0.0.0.0
Management VLAN: 1
Domain name:
Name server 1: 0.0.0.0
Name server 2: 0.0.0.0
HTTP server: Enable
HTTP port: 80
RIP: Enable
在1900下使用ip address和ip default-gateway命令来配置IP地址信息和默认网关信息,如下:
1900(config)#ip address 172.16.10.16 255.255.255.0
1900(config)#ip default-gateway 172.16.10.1
1900(config)#

2950下的配置是在VLAN1接口下配置,VLAN1是管理VLAN,默认所有接口均是VLAN1的成员,配置如下:
2950(config)#int vlan1
2950(config-if)#ip address 172.16.10.17 255.255.255.0
2950(config-if)#no shut
2950(config-if)#exit
2950(config)#ip default-gateway 172.16.10.1
2950(config)#
注意2950的IP地址配置是在VLAN1接口下,另外要注意打开接口

Configuring Interface Description

配置描述信息,在接口配置模式下使用description命令,1900下的描述信息不能使用空格键,如下:
1900(config)#int e0/1
1900(config-if)#description Cisco_VLAN
1900(config-if)#int f0/26
1900(config-if)#description trunk_to_building_4
1900(config-if)#

2950下的描述就可以使用空格键,如下:
2950(config)#int fa 0/1
2950(config-if)#description Sales Printer
2950(config-if)#^Z
可以使用show interface和show running-config命令来查看这些描述信息

Erasing the Switch Configuration

1900和2950的配置文件是存储在NVRAM里的,但是1900里你不能查看NVRAM或startup-config的内容,只能查看running-config的内容,在1900里,你对配置所进行的修改自动被复制到NVRAM里,所以没有copy run start这样的命令;但是2950就有startup-config和running-config,使用copy run start来保存配置到NVRAM里,擦除2950里startup-config文件使用erase startup-config命令;擦除1900里的使用delete命令.如下:
1900#delete ?
  nvram   NVRAM configuration
  vtp   Reset VTP configuration to defaults
1900#delete nvram
2950如下:
2950#erase startup-config


Chapter8 Virtual LANs(VLANs)


VLAN Basics

如何在1个交换性的网络里,分割广播域呢?答案是创建VLAN.VLAN是连接到定义好了的switch的端口的网络用户和资源的逻辑分组.给不同的子网分配不同的端口,就可以创建更小的广播域.默认情况下,在某个VLAN中的主机是不可以与其他VLAN通信的,除非你使用router来创建VLAN间的通信

VLAN的一些特点:
1.网络的增加,移动和改变,只需要在适当的VLAN中配置合适的端口
2.安全,因为不同VLAN的用户不能互相通信,除非依*router来做VLAN间的通信
3.因为VLAN可以被认为是按功能划分的逻辑分组,所以VLAN和物理位置,地理位置无关
4.VLAN增加安全性
5.VLAN增加广播域的数量,而减小广播域的大小

Broadcast Control

每种协议都会有广播的现象发生,至于发生不频率,次数,一般由以下几点决定:
1.协议类型
2.在网络上运行的应用程序
3.这些服务如何的被使用

Security

安全性是VLAN的1大特点,不同VLAN的用户不能互相通信,除非依*router来做VLAN间的通信

Flexibility and Scalability

VLAN的灵活性和可扩展性:
1.可以不管物理位置如何,把适当的端口分配到适当的 VLAN中就可以了.可以把VLAN理解正下面的样字,如图:

2.当VLAN增加的太大以后,你可以划分更多的VLAN,来减少广播消耗掉更多带宽的影响,在VLAN中的用户越少,被广播影响的就越少
来比较下下面2个图,明显可以发现,图2,即VLAN的具有更高的灵活性和可扩展性,如下:



VLAN Memberships

手动由管理员分配端口划分的VLAN叫静态VLAN(static VLAN);使用智能管理软件,动态划分VLAN的叫动态VLAN(dynamic VLAN)

Static VLANs

静态VLAN:静态VLAN安全性较高,手动划分端口给VLAN,和设备的物理位置没什么关系.而且,每个VLAN中的主机必须拥有正确的IP地址信息,如VLAN2配置为172.16.20.0/24

Dynamic VLANs

动态VLAN:使用智能管理软件,可以基于MAC地址,协议,甚至应用程序来动态创建VLAN.Cisco设备管理员可以使用VLAN管理策略服务器(VLAN Management Policy Server,VMPS)的服务来建立个MAC地址数据库,来根据这个动态创建VLAN,VMPS数据库把MAC地址映射VLAN上

Identifying VLANs

当帧在网络中被交换,switches根据类型对其跟踪,加上根据硬件地址来判断如何对它们进行*作.有1点要记住的是:在不同类型的连接中,帧被处理的方式也不一样

交换环境中的2种连接类型:
1.access links:指的是只属于一个VLAN,且仅向该VLAN转发数据帧的端口,也叫做native VLAN.switches把帧发送到access-link设备之前,移去任何的VLAN信息.而且access-link设备不能与VLAN外通信,除非数据包被路由
2.trunk links:指的是能够转发多个不同VLAN的通信的端口.trunk link必须使用100Mbps以上的端口来进行点对点连接,1次最多可以携带1005个VLAN信息.trunk link使你的单独的1个端口同时成为数个VLAN的端口,这样可以不需要层3设备.当你在switches之间使用了trunk link,多个VLAN的信息将从这个连接上通过;如果在你switches之间没有使用trunk link而使用一般的连接,那么只有VLAN1的信息通过这个连接被互相传递.VLAN1默认作为管理VLAN

Frame Tagging

frame tagging:帧的鉴别方法.当帧到达每个switch,首先先检查VLAN ID,然后决定如何对帧进行处理.当帧到达和VLAN ID所匹配的access link的时候,switch移去VLAN标识符

VLAN Identification Method

VLAN标识符:在交换机的trunk link上,可以通过对数据帧附加VLAN信息,构建跨越多台交换机的VLAN.附加VLAN信息的方法,最具有代表性的有:
1.Inter-Switch Link(ISL):属于Cisco私有,只能在快速和千兆以太网连接中使用,ISL路由可以使用在switch的断端口,router的接口和服务器接口卡等
2.IEEE 802.1Q:俗称dot 1 Q.由IEEE创建,所以在Cisco和非Cisco设备之间,就不能使用ISL必须使用802.1Q.802.1Q所附加的VLAN识别信息,位于数据帧中的源MAC地址与类型字段之间.基于IEEE802.1Q附加的VLAN信息,就像在传递物品时附加的标签
当然ISL和802.1Q的主要目的是提供VLAN间通信

Inter-Switch Link(ISL) Protocol

ISL:ISL运作在层2,ISL是1种外部标签处理过程,所以原始的数据帧不被改变,ISL在数据帧头部加上26字节长的ISL头部信息,在数据帧尾部加上4字节的FCS字段进行CRC运算,所以只有支持ISL的设备才能对它进行读取,最大程度1522字节.当帧被传送到access link时,ISL封装信息将被移去

使用trunk link在多个VLAN中行走,比使用router连接的好处是:减少延时间

VLAN Trunking Protocol(VTP)

VTP也是Cisco创建的,但是现在已经不为Cisco所私有.VTP的主要目的是在1个交换性的环境中管理所有配置好的VLAN使所有的VLAN保持一致性VTP允许增加,删除和重命名VLAN,然后这些修改后的信息传播到整个VTP域里的所有switches上

VTP的一些优点:
1.保持VLAN信息的连续性
2.精确跟踪和监视VLAN
3.动态报告增加了的VLAN信息给VTP域中所有switch
4.可以使用即插即用(plug-and-play)的方法增加VLAN
5.可以在混合型网络中进行trunk link,比如以太网到ATM LANE,FDDI等

在你使用VTP管理VLAN之前,必须先创建个VTP服务器(VTP server),所有要共享VLAN信息的服务器必须使用相同的域名.而且,假如你把某个switch和其他的switch配置在1个VTP域里,这个switch就只能和这个VTP域里的switch共享VLAN信息.其实,如果你只有1个VLAN,就不需要使用VTP了.VTP信息通过trunk端口进行发送和接收.可以给VTP配置密码,但是要记住的是,所有的switch必须配置相同的密码

switch通告VTP管理域信息,加上版本号和已知VLAN配置参数信息.还有种叫做透明VTP模式(transparent VTP mode),在这种模式里,你可以给switch配置成通过trunk端口转发VTP信息,但是不接受VTP更新信息来更新它自己的VTP数据库

switch通过VTP通告检测到增加的VLAN,然后把新增加的VLAN和已有的联结在一起共享信息.新的更新信息在之前的版本号上加1

VTP Modes of Operation

在VTP域里*作的3种模式:
1.服务器模式(server mode):所有Catalyst switches的默认设置,1个VTP域里必须至少要有1个服务器用来传播VLAN信息,对VTP信息的改变必须在服务器模式下*作.配置保存在NVRAM里
2.客户机模式(client mode):在这种模式下,switches从VTP服务器接受信息,而且它们也发送和接收更新,但是它们不能做任何改变.在VTP服务器通知客户switches说增加了新的VLAN之前,你不能在客户switch的端口上增加新的VLAN.配置不保存在NVRAM里
3.透明模式(transparent mode):该模式下的switch不能增加和删除VLAN,因为它们保持的有自己的数据库,不和其他的共享.配置保存在NVRAM里

VTP Pruning

VTP pruning:减少广播,组播,单播,保留带宽.VTP pruning只在trunk link上发送广播.默认情况,VTP pruning在所有的switches上是没有启用的.当你在VTP服务器上启用了VTP pruning,整个VTP域就启用了VTP pruning,默认只能在VLAN2到VLAN1005,VLAN1是管理VLAN

Routing between VLANs

可以使用支持ISL路由的router来连接VLAN,支持ISL路由的最低型号是2600系列,1600,1700和2500系列都不支持.如下图,就是router和每个VLAN之间的关联,每个router的接口都插入1个access link,这个同时也说明了router的每个接口的IP地址都是每个VLAN的默认网关:

假如你有太多的VLAN,数量超过了router接口数量,明显上面的方法就不适用了.你可以使用Cisco的3层switch Cisco3550,或者使用router的快速以太网接口来做ISL或者802.1Q的 trunk link,这样的方法叫做单臂路由(router on a stick).如下图:


Configuring VLANs

创建VLAN:
1900下,使用vlan [vlan#] name [name] [vlan#]命令, 如下:
>;en
#config t
(config)#hostname 1900
1900(config)#vlan 2 name sales
1900(config)#vlan 3 name marketing
1900(config)#vlan 4 name mis
1900(config)#exit
验证,使用show vlan命令,记住在你没给VLAN分配端口之前,之前做的VLAN是不会起作用的.而且所有的端口默认是处在VLAN1的,VLAN1是管理VLAN.如下:
1900#sh vlan
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      Enable         1-12, AUI, A, B
2   sales                        Enable
3   marketing                    Enable
(略)
在2950下创建VLAN,在特权模式下使用vlan database命令,创建命令和1900下的类似,注意结尾使用apply命令.如下:
2950#vlan database
2950(vlan)#vlan 2 name Marketing
VLAN 2 modified:
    Name: Marketing
2950(vlan)#vlan 3 name Accounting
VLAN 3 added:
    Name: Accounting
2950(vlan)#apply
APPLY complete
2950(vlan)#Ctrl+C
2950#
使用show vlan或者show vlan brief命令验证下:
2950#sh vlan brief
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      active         Fa0/1...Fa0/12
2   Marketing                        active
3   Accounting                       active
(略)

Assigning Switch Ports to VLANs

创建了VLAN,接下来要做的就是给VLAN分配端口.1900下,使用vlan-membership命令1次只能分配1个,可以static或dynamic作为参数,如下:
1900(config)#int e0/2
1900(config-if)#vlan-membership static 2
1900(config)#int e0/4
1900(config-if)#vlan-membership static 3
1900(config)#int e0/5
1900(config-if)#vlan-membership static 4
1900(config-if)#exit
1900(config)#exit
1900#
验证,如下:
1900#sh vlan
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      Enable         1-12, AUI, A, B
2   sales                        Enable         2
3   marketing                    Enable         4
(略)
2950下的配置,使用switchport access vlan [vlan#]命令,如下:
2950(config-if)#int f0/2
2950(config-if)#switchport access vlan 2
2950(config-if)#int f0/3
2950(config-if)#switchport access vlan 3
2950(config-if)#int f0/4
2950(config-if)#switchport access vlan 4
2950(config-if)#exit
2950(config)#exit
2950#
验证配置信息,如下:
2950#sh vlan brief
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      active         Fa0/1 Fa0/5...Fa0/12
2   Marketing                   active         Fa0/2
3   Accounting                  active         Fa0/3
(略)

Configuring Trunk Ports

1900只使用动态ISL(DISL)封装方式,在快速以太网配置trunk,在接口配置模式下使用trunk [参数]的命令,如下,将26接口设置为trunk端口:
1900(config)#int f0/26
1900(config-if)#trunk ?
  auto        Set DISL state to AUTO
  desirable    Set DISL state to DESIRABLE
  nonegotiate  Set DISL state to NONEGOTIATE
  off         Set DISL state to OFF
  on         Set DISL state to ON
1900(config-if)#trunk on
设置参数为on即接口将作为永久ISL的trunk端口,可以和和相连的设备协商,并且把连接转换成trunk link
2950下在接口配置模式,使用switchport命令,如下:
2950(config)#int f0/12
2950(config-if)#switchport mode trunk
2950(config-if)#^Z
2950#
验证配置信息:
2950#sh run
(略)
!
interface FastEthernet0/12
  switchport mode trunk
  no ip address
!
(略)

Configuring Inter-VLAN Routing

使VLAN间互相通信,就必须使用router或者3层switch来连接.要在router的快速以太网接口支持ISL和802.1Q,要把接口划分成许多逻辑接口(非物理),1个接口对应1个VLAN.这些接口就叫子接口(subinterfaces).还有要必须知道的是,默认你不可能在1900和2950之间做trunk连接,因为1900只支持ISL路由而2950只支持802.1Q路由,2种相互不兼容

给连接1900的trunk端口配置,使用encapsulation isl [vlan#]命令,如下:
2600Router(config)#int f0/0.1
2600Router(config-subif)#encapsulation isl [vlan#]
给连接2950的这样配置,如下:
2600Router(config)#int f0/0.1
2600Router(config-subif)#encapsulation dot1q [vlan#]

Configuring VTP

默认下,1900和2950都被配置成VTP服务器模式,配置VTP,先配置VTP域名,还有密码,是否pruning等.
1900下,在全局配置模式下使用vtp命令,如下:
1900(config)#vtp ?
  client       VTP client
  domain      Set VTP domain name
  password    Set VTP password
  pruning      VTP pruning
  server       VTP server
  transparent   VTP transparent
  trap         VTP trap
1900(config)#vtp server
1900(config)#vtp domain noco
1900(config)#vtp password noko
在特权模式下使用show vtp命令验证,如下:
1900#sh vtp
   VTP version: 1
   Configuration revision: 0
   Maximum VLANs supported locally: 1005
   Number of existing VLANs: 5
   VTP domain name: noco
   VTP password: noko
VTP operating mode: Server
(略)
2950如下:
2950(config)#vtp mode server
2950(config)#vtp domain noco
验证信息,如下:
2950#sh vtp ?
counters     VTP statistics
status       VTP domain status
2950#sh vtp status
(略)

Configuring Switching in Our Sample Internetwork

配置实例:

先配置2950C,如下
2950C(config)#enable secret noko
2950C(config)#line con 0
2950C(config-line)#login
2950C(config-line)#password noco
2950C(config-line)#line vty 0 15
2950C(config-line)#login
2950C(config-line)#password noco
2950C(config-line)#banner motd #
2950C
#
2950C(config-line)#exit
2950C(config)#int vlan1
2950C(config-if)#ip address 172.16.10.2 255.255.255.0
2950C(config-if)#no shut
2950C(config-if)#exit
2950C(config)#up default-gateway 172.16.10.1
2950C(config)#^Z
2950C#copy run start
配置2950B,如下:
2950B(config)#enable secret noko
2950B(config)#line con 0
2950B(config-line)#login
2950B(config-line)#password noco
2950B(config-line)#line vty 0 15
2950B(config-line)#login
2950B(config-line)#password noco
2950B(config-line)#banner motd #
2950B
#
2950B(config-line)#exit
2950B(config)#int vlan1
2950B(config-if)#ip address 172.16.10.3 255.255.255.0
2950B(config-if)#no shut
2950B(config-if)#exit
2950B(config)#up default-gateway 172.16.10.1
2950B(config)#^Z
2950B#copy run start
配置trunk,2950B如下:
2950B(config)#int f0/1
2950B(config-if)#switchport mode trunk
2950B(config-if)#int f0/4
2950B(config-if)#switchport mode trunk
2950B(config-if)#int f0/5
2950B(confgi-if)#switchport mode trunk
配置trunk,2950C如下:
2950C(config)#int f0/4
2950C(confgi-if)#switchport mode trunk
2950C(config-if)#int f0/5
2950C(config-if)#switchport mode trunk
验证trunk信息,使用show interface trunk命令.如下:
2950B#sh int trunk
Port     Mode      Encapsulation     Status         Native vlan
Fa0/1    on         802.1q           trunking       1
Fa0/4    on         802.1q           trunking       1
Fa0/5    on         802.1q           trunking        1
(略)
之前我们已经对2950B和2950C做了基本配置和trunk端口的配置,接下来应该设置VTP和创建VLAN,并且进行验证.2950C如下:
2950C(config)#vtp mode server
2950C(config)#vtp domain Cisco
2950C(config)#^Z
2950C#vlan database
2950C(vlan)#vlan 2 name sales
2950C(vlan)#vlan 3 name marketing
2950C(vlan)#apply
2950C(vlan)#^C
2950C#sh vlan brief
(略)
接下来分配端口,把Fa0/2分配给VLAN2,Fa0/3分配给VLAN3,默认所有的端口都处在VLAN1下,配置如下:
2950C(config)#int fa0/2
2950C(config-if)#switchport access vlan2
2950C(config)#int fa0/3
2950C(config-if)#switchport access vlan3
验证信息,注意VLAN1里的Ports栏,如下:
2950C#sh vlan brief
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      active         Fa0/1 Fa0/5...Fa0/10
2   sales                        active         Fa0/2
3   marketing                    active         Fa0/3
配置2950B,把它设置成客户模式,2950B从2950C接收VLAN信息,如下:
2950B(config)#vtp mode client
2950B(config)#vtp domain Cisco
2950B(config)#^Z
验证,注意2950B已经从2950C知道了VLAN的信息,如下:
2950B#sh vlan brief
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      active         Fa0/1...Fa0/12
2   sales                        active         
3   marketing                    active        
但是仍然要给2950B分配端口,如下:
2950B(config)#int fa0/2
2950B(config-if)#switchport access vlan2
2950B(config)#int fa0/3
2950B(config-if)#switchport access vlan3
验证信息,如下:
VLAN Name                     Status         Ports
----------------------------------------------------------------------------
1   default                      active         Fa0/1 Fa0/5...Fa0/12
2   sales                        active         Fa0/2
3   marketing                    active         Fa0/3
到现在,2950C和2950B的配置就算是完成了,经过验证,我们也没发现什么问题,接下来该配置什么呢?当然是配置VLAN间的通信,根据上面的拓扑图,可以知道需要在RouterB上进行配置,如下:
RouterB(config)#hostname Trunkrouter
Trunkrouter(config)#int f0/0
Trunkrouter(config-if)#no ip address
Trunkrouter(config-if)#no shut
创建子接口,并定义封装类型,如下:
Trunkrouter(config-if)#int f0/0.1
Trunkrouter(config-subif)#encapsulation dot1q 1
Trunkrouter(config-subif)#ip address 172.16.10.1 255.255.255.0
Trunkrouter(config-if)#int f0/0.2
Trunkrouter(config-subif)#encapsulation dot1q 2
Trunkrouter(config-subif)#ip address 172.16.20.1 255.255.255.0
Trunkrouter(config-if)#int f0/0.3
Trunkrouter(config-subif)#encapsulation dot1q 3
Trunkrouter(config-subif)#ip address 172.16.30.1 255.255.255.0
Trunkrouter(config-if)#exit
创建子接口,每个接口对应1个VLAN.注意,如果你试图在第一个子接口分配IP地址,将收到错误信息,除非你先定义了封装类型,如下:
Trunkrouter(config-if)#int f0/0.1
Trunkrouter(config-subif)#ip address 172.16.10.1 255.255.255.0
Configuring IP routing on a LAN subinterface is only allowed if that subinterface is already configured as part of an IEEE 802.10, IEEE 802.1Q, or ISL VLAN.
验证配置信息,如下:
Trunkrouter#sh run
(略)



Chapter9 Managing a Cisco Interwork


The Internal Components of a Cisco Router

Cisco Router的一些组件:
bootstrap:存储在ROM中的微码(microcode)中,用来在初始化的时候启动router,然后加载IOS
POST:存储在ROM中的微码中,用来检查硬件基本配置是否正常,然后决定哪些接口可用
ROM monitor:存储在ROM中的微码中,作用是测试和排疑等
Mini-IOS:Cisco叫它RXBOOT或bootloader,它是存储在ROM中的,IOS的简化版本,用来把IOS加载到闪存中
RAM(random-access memory):用来保存数据包缓存,ARP缓存,路由表,和running-config配置文件.某些router上,IOS可以从RAM中运行
ROM(read-only memory):用来启动和维持router正常化
Flash memory(闪存):用来存放IOS,当router重新启动的时候闪存是不会被擦除的,由Intel创造的EEPROM
NVRAM(nonvolatile RAM):存储startup-config配置文件,当router重新启动的后,这些文件是不会被擦除的
configuration register:用来控制router如何启动,这个值可以使用show version来查看,一般为0x2102(16进制),含义是告诉router从闪存里加载IOS和从NVRAM里加载配置文件

The Router Boot Sequence

启动序列用来测试硬件和加载所必需的软件,包括以下几个步骤:
1.先进行POST,测试硬件
2.bootstrap查找和加载IOS
3.IOS在NVRAM中查找有效的startup-comfig配置文件
4.如果在NVRAM里查找到了这个配置文件,router就可*作;如果文件不存在,router进到setup模式

Managing Configuration Registers

Cisco的router有1个存储在NVRAM中的,16位长的configuration register.默认这个值0x2102设置成从闪存中加载IOS和从NVRAM中查找启动配置文件

Understanding the Configuration Register Bits

一些常见的位的含义:
1.第0到3位:启动字段
2.第6位:忽略NVRAM内容
3.第8位:禁用BREAK

启动字段(00到03):
1.设置成00:ROM monitor模式,进入到这个模式,configuration register的值设置成2100.然后要启动router的话需要手动在命令行提示符rommon>;下输入b(感觉有点类似Solaris的OpenBoot哈哈)
2.设置成01:从ROM中的镜象启动,把configuration register的值设置成2101,提示符为router(boot)>;
3.设置成02到0F:定义默认启动文件名,在NVRAM中查找

Checking the Current Configuration Register value

使用show version命令可以查看当前configuration register的值,在输出的最下部分.这个命令将会显示硬件的配置信息,软件版本,配置文件信息,启动镜象等

Changing the Configuration Register

可以通过修改configuration register的值来决定router的启动和运行方式.在全局配置模式下使用config-register的命令.修改值为0x101,注意输出内容,如下:
Router(config)#config-register 0x101
Router(config)#^Z
Router#sh ver
(略)
Configuration register is 0x2102 (will be 0x0101 at next reload)
注意修改后的值和当前值,修改后的值只在重新启动后生效

Recovering Passwords

如果你把密码忘记了怎么办?之前提到过,位6可以忽略掉NVRAM里的储存的启动配置文件的内容,默认是0x2102,所以我们把值修改成0x2142,就可以达到忽略NVRAM这个效果.下面是密码恢复的主要几个步骤:
1.在启动router的时候使用BREAK中断启动
2.把configuration register的值设置成0x2142
3.重新启动
4.进入特权模式
5.把startup-config文件复制到running-config文件中
6.修改密码
7.把configuration register的值还原为0x2102
8.保存配置
9.重新启动

具体的修改,2500系列和2600系列有一点不一样,我们先来看2600系列的修改实例,使用Ctrl+BREAK中断启动.注意提示monitor: command “boot” aborted due to user interrupt.
如下:
System Bootstrap, Version 11.3(2)XA4, RELEASE SOFTWARE (fc1)
(略)
PC = 0xfff0a530, Vector = 0x500, SP = 0x80004374
monitor: command “boot” aborted due to user interrupt
rommon 1 >;confreg 0x2142
You must reset or power cycle for new config to take effect
提示重新启动,如下:
rommon 1>;reset
重新启动后,进入特权模式,把startup-config复制到running-config中,并修改密码.如下:
Router#copy start run
Router#conf t
Router(config)#enable secret noko
把configuration register的值还原,并保存,如下:
Router(config)#config-register 0x2102
Router(config)#^Z
Router#copy run start

2500系列下的修改,在启动时输入o中断启动,再用o/r修改configuration register的值,如下:
System Bootstrap, Version 11.0(10c), SOFTWARE
(略)
Abort at 0x1098FEC (PC)
>;o
(略)
>;0x2142
重新启动,输入I,如下:
>;I
接下来的步骤和2600系列一样,如下:
Router#copy start run
Router#conf t
Router(config)#enable secret noko
把configuration register的值还原,并保存,如下:
Router(config)#config-register 0x2102
Router(config)#^Z
Router#copy run start

Backing Up and Restoring the Cisco IOS

把IOS备份到TFTP服务器前的准备工作:
1.确认你可以访问TFTP服务器
2.确认TFTP服务器是否有足够空间来保存IOS文件
3.确定名称和路径

Verifying Flash Memory

验证闪存信息,使用show flash命令,如下:
Router#sh flash
System flash directory:
File   Length     Name/status
1     8121000    c2500-js-l.112-18.bin

Backing Up the Cisco IOS

把IOS备份到TFTP服务器上,特权模式下使用copy flash tftp命令,记住备份之前最好对服务器ping下看是否是通的

Restoring or Upgrading the Cisco Router IOS

从TFTP恢复或者升级IOS,特权模式下使用copy tftp flash命令

Backing Up and Restore the Cisco Configuration

把配置文件备份到TFTP服务器,和把IOS备份到TFTP服务器的命令类似;恢复也是如此:
1.startup-config文件的备份:copy startup-config tftp
2.startup-config文件的恢复:copy tftp startup-config
3.running-config文件的备份:copy running-config tftp
4.running-config文件的恢复:copy tftp running-config

验证命令为show running-config和show startup-config

Erasing the Configuration

擦除启动配置文件startup-config文件,在特权模式下使用erase startup-config命令,擦除了以后,立即重新启动的话,router将进到setup模式

Using Cisco Discovery Protocol(CDP)

Cisco发现协议(CDP)是Cisco私有,帮助用来管理员收集本地相连和远程设备的信息.

Getting CDP Timers and Holdtime Information

之前提到过CDP的一些介绍,show cdp命令提供2个信息给你:
1.CDP timer:CDP包传给每个活跃接口的时间间隔,默认是60秒
2.CDP holdtime:某设备从相邻设备收到的包的保持时间,默认是180秒
如下:
Router#sh cdp
Global CDP information:
       Sending CDP packets every 60 seconds
       Sending a holdtime value of 180 seconds
Router#
可以修改默认的时间,分别在全局配置模式下使用cdp timer和cdp holdtime命令,如下:
Router#conf t
Router(config)#cdp timer 90
Router(config)#cdp holdtime 240
在所有接口上关闭CDP,在全局配置模式下使用no cdp run命令;关闭某个接口的CDP使用no cdp enable命令.再次打开分别使用cdp run和ccdp enable命令.如下:
Router(config)#no cdp run
Router(config)#int fa0/1
Router(config-if)#no cdp enable

Gathering Neighbor Information

使用show cdp neighbour可以显示直接相连的设备的信息,如下:
Router#sh cdp nei
Capability Codes: R – Router, T – Trans Bridge,
  B – Source Route Bridge, S – Switch, H – Host,
  I – IGMP, r – Repeater
Device ID    Local Intrfce  Holdtime  Capability  Platform  Port ID
1900Switch     Eth 0       238        T S      1900      2
2500B         Ser 0       138          R       2500    Ser 0
Router#
一些选项的解释如下:
1.Device ID:直接相连的设备的主机名
2.Local Interface:接收CDP包的接口
3.Holdtime:某设备从相邻设备收到的包的保持时间,如果过了这个时间仍然没收到新的CDP包,就将被丢弃
4.Capability:见输出最顶部信息
5.Platform:Cisco设备的类型
6.Port ID:相连设备的接受CDP包信息的接口
要查看更为详细的CDP信息可以使用show cdp neighbor detail或show cdp entry *命令

Gathering Interface Traffic Information

使用show cdp traffic命令显示接口CDP包流量信息,如下:
Router#sh cdp traffic
CDP counters:
       Packets output: 13, Input: 8
       Hdr syntax: 0, Chksum error: 0, Encaps failed: 0
       No memory: 0, Invalid packet: 0, Fragmented: 0
Router#

Gathering Port and Interface Information

使用show cdp interface命令显示接口的CDP状态信息

Using Telnet

在特权模式下使用telnet [IP地址]的命令进行telnet,如下:
Router#telnet 172.16.10.2
Trying 172.16.10.2 … Open
Password required, but none set
[Connection to 172.16.10.2 closed by foreign host]
Router#
由上面提示可以看出,VTY没有密码配置的话是不允许你telnet的(除非你使用了no login命令,但是安全性几乎为0).所以在telnet前,记得先给目标设备的VTY线路配置密码

Telnetting into Multiple Devices Simultaneously

当你telnet到远程设备的时候,可以在任何情况下使用exit命令来终止连接.但是假如你想保持这个连接,同时又对另外1个设备进行telnet的时候,使用Ctrl+Shift+6,再按下X键,就可以回到本地console,再对另外1设备进行telnet.如下:
2500#telnet 172.16.10.2
Trying 172.16.10.2 … Open
User Access Verification
Password:
2600>;[Ctrl+Shift+6,X]
2500#telnet 192.168.0.32
(略)

Checking Telnet Connections

查看从本地到远程的连接会话,使用show sessions命令,如下:
2500#sh sessions
Conn   Host               Address       Byte  Idle  Conn Name
  1    172.16.10.2         172.16.10.2      0     0   172.16.10.2
*2    192.168.0.32        192.168.0.32     0     0    192.168.0.32
2500#
注意*所在的会话代表你的最后1个会话,可以直接敲2下Enter键回到*号会话,也可以输入前面的数字,再敲2下Enter键回到相应会话

Checking Telnet Users

使用show users命令列举本地所有活动console和VTY端口,如下:
2500#sh users
  Line    User     Host(s)          Idle Location
* 0 con 0         172.16.10.2          00:07:52
                 192.168.0.32        00:07:18
注意上面输出的con代表本地console,这个例子可以看到从本地console连接了远程的2个设备.接下来在我们远程设备上使用这个命令,如下:
2600>;sh users
  Line    User     Host(s)          Idle Location
0 con 0             idle                 9
*2 vty 0
这个输出内容可以看出console是活动的,而且VTY端口2被使用

Closing Telnet Sessions

之前说过,要终止telnet会话,在远程(被telnet)设备上使用exit命令.但是要从本地设备终止会话的话,就需要在本地使用disconnect命令,如下:
2500#disconnect ?
<1-2>;   The number of an active network connection
WORD  The name of an active network connection
<cr>;
2500#disconnect 1
Closing connection to 172.16.10.2 [confirm]
2500#
验证如下:
2600#sh users
  Line    User     Host(s)          Idle Location
*0 con 0             idle                 0
1 aux 0             idle                 0
2 vty 0              idle           172.16.10.1
清除连接,使用clear line命令,并验证,如下:
2600#clear line 2
[confirm]
[OK]
2600#sh users
  Line    User     Host(s)          Idle Location
*0 con 0             idle                 0
1 aux 0             idle                 1
2600#

Resolving Hostnames

2种解析主机名到IP地址的办法:
1.在每个router上建立主机表(host table)
2.建立DNS服务器(Domain Name System server),这个类似动态主机表

Building a Host Table

主机表只提供包含其中的解析,建立主机表的命令是ip host [主机名] [TCP端口号] [IP地址],默认TCP端口号为23.1个主机可以对应最多8个IP地址.如下:
2500(config)#ip host 2501B 172.16.10.2
2500(config)#ip host 1900S 192.168.0.32
2500(config)#^Z
使用show hosts命令验证新建的主机表,如下:
2500#sh hosts
Default domain is not set
Name/address lookup uses domain service
Name servers are 255.255.255.255
Host       Flags     Age  Type  Address(es)
2501B   (perm, OK)   0     IP   172.16.10.2
1900S   (perm, OK)   0     IP    192.168.0.32
2500#
注意Flags选项的perm,代表是手动输入的,如果这项是temp的话,表明是由DNS解析的

Using DNS to Resolve Names

假如你在CLI下输入了1个Cisco设备不能识别的命令,它会默认通过DNS来进行解析(它认为是主机名).这个不好的地方是要花费额外的时间等待DNS解析完.可以在全局配置模式下使用no ip domain-lookup命令关闭它

假如你在你的网络里有DNS服务器,可以使用1些命令使DNS解析开始工作:
1.第一条命令是:ip domain-lookup,这个命令默认是打开了的.如果你之前使用了no ip domain-lookup的话,就要用这条命令打开它
2.第二条命令是:ip name-server.设置DNS服务器的IP地址,可以使1个IP地址对应多达6个服务器
3.最后条命令是:ip domain-name.虽然这个命令是可选的,但是最好还是设置1下
实例如下:
2500(config)#ip domain-lookup
2500(config)#ip name-server 192.168.0.23
2500(config)#ip domain-name noko.com
2500(config)#^Z
2500#
可以使用ping命令来严正下,如下:
2500#ping 1900S
Translating “1900S”…domain server (192.168.0.23) [OK]
(略)
使用show hosts命令验证下,如下:
2500#sh hosts
Default domain is noko.com
Name/address lookup uses domain service
Name servers are 192.168.023
Host               Flags     Age  Type  Address(es)
2501B           (perm, OK)   0     IP   172.16.10.2
1900S.noko.com   (temp, OK)   0     IP    192.168.0.32
2500#

Checking Network Connectivity

ping和traceroute命令是检查网络连接是否完好的有利工具



Chapter10 Managing Traffic with Access Lists


Introduction to Access Lists

访问列表(access list,ACL)的主要作用是过滤你不想要的数据包.设置ACL的一些规则:
1.按顺序的比较,先比较第一行,再比较第二行..直到最后1行
2.从第一行起,直到找到1个符合条件的行;符合以后,其余的行就不再继续比较下去
3.默认在每个ACL中最后1行为隐含的拒绝(deny),如果之前没找到1条许可(permit)语句,意味着包将被丢弃.所以每个ACL必须至少要有1行permit语句,除非你想想所有数据包丢弃

2种主要的访问列表:
1.标准访问列表(standard access lists):只使用源IP地址来做过滤决定
2.扩展访问列表(extended access lists):它比较源IP地址和目标IP地址,层3的协议字段,层4端口号来做过滤决定

利用ACL来过滤,必须把ACL应用到需要过滤的那个router的接口上,否则ACL是不会起到过滤作用的.而且你还要定义过滤的方向,比如是是想过滤从Internet到你企业网的数据包呢还是想过滤从企业网传出到Internet的数据包呢?方向分为下面2种:
1.inbound ACL:先处理,再路由
2.outbound ACL:先路由,再处理

一些设置ACL的要点:
1.每个接口,每个方向,每种协议,你只能设置1个ACL
2.组织好你的ACL的顺序,比如测试性的最好放在ACL的最顶部
3.你不可能从ACL从除去1行,除去1行意味你将除去整个ACL,命名访问列表(named access lists)例外(稍后介绍命名访问列表)
4.默认ACL结尾语句是deny any,所以你要记住的是在ACL里至少要有1条permit语句
5.记得创建了ACL后要把它应用在需要过滤的接口上
6.ACL是用于过滤经过router的数据包,它并不会过滤router本身所产生的数据包
7.尽可能的把IP标准ACL放置在离目标地址近的地方;尽可能的把IP扩展ACL放置在离源地址近的地方

Standard Access Lists

介绍ACL设置之前先介绍下通配符掩码(wildcard masking).它是由0和255的4个8位位组组成的.0代表必须精确匹配,255代表随意,比如:172.16.30.0 0.0.0.255,这个告诉router前3位的8位位组必须精确匹配,后1位8位位组的值可以为任意值.如果你想指定172.16.8.0到172.16.15.0,则通配符掩码为0.0.7.255(15-8=7)

配置IP标准ACL,在特权模式下使用access-lists [范围数字] [permit/deny] [any/host]命令.范围数字为1到99和1300到1999;permit/deny分别为允许和拒绝;any为任何主机,host为具体某个主机(需要跟上IP地址)或某1段

我们来看1个设置IP标准ACL的实例:

如图,router有3个LAN的连接1个Internet的连接.现在,销售部的用户不允许访问金融部的用户,但是允许他们访问市场部和Internet连接.配置如下:
Router(config)#access-list 10 deny 172.16.40.0 0.0.0.255
Router(config)#access-list 10 permit any
注意隐含的deny any,所以末尾这里我们要加上permit any,any等同于0.0.0.0 255.255.255.255.接下来把ACL应用在接口上,之前说过了尽可能的把IP标准ACL放置在离目标地址近的地方,所以使用ip access-group命令把ACL 10放在E1接口,方向为出,即out.如下:
Router(config)#int e1
Router(config-if)#ip access-group 10 out

Controlling VTY(Telnet) Access

使用IP标准ACL来控制VTY线路的访问.配置步骤如下:
1.创建个IP标准ACL来允许某些主机可以telnet
2.使用access-class命令来应用ACL到VTY线路上

实例如下:
Router(config)#access-list 50 permit 172.16.10.3
Router(config)#line vty 0 4
Router(config-line)#access-class 50 in
如上,进入VTY线路模式,应用ACL,方向为进来,即in.因为默认隐含的deny any,所以上面的例子,只允许IP地址为172.16.10.3的主机telnet到router上

Extended Access Lists

扩展ACL:命令是access-list [ACL号] [permit/deny] [协议] [源地址] [目标地址] [*作符] [端口] [log].ACL号的范围是100到199和2000到2699;协议为TCP,UDP等,*作符号有eq(表等于),gt(大于),lt(小于)和neq(非等于)等等;log为可选,表示符合这个ACL,就记录下这些日志

来看1个配置扩展ACL的实例:

假如要拒telnet和FTP到绝位于金融部的主机172.16.30.5,配置如下:
Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 21
Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 23
Router(config)#access-list 110 permit ip any any
记住默认隐含的deny all.应用到E1接口,注意方向为out,如下:
Router(config)#int e1
Router(config-if)#ip access-group 110 out

Named Access Lists

命名访问列表是创建标准和扩展访问列表的另外1种方法.它允许你使用命名的方法来创建和应用标准或者扩展访问列表.使用ip access-list命令来创建,如下:

Router(config)#ip access-list ?
   extended  Extended Acc
   logging    Control access list logging
   standard   Standard Access List
Router(config)#ip access-list standard ?
   <1-99>;     Standard IP access-list number
   WORD     Access-list name
Router(config)#ip access-list standard BlockSales
Router(config-std-nacl)#?
Standard Access List configuration commands:
   default   Set a command to its defaults
   deny     Specify packets to reject
   exit       Exit from access-list configuration mode
   no       Negate a command or set its default
   permit    Specify packets to forward
Router(config-std-nacl)#deny 172.16.40.0 0.0.0.255
Router(config-std-nacl)#permit any
Router(config-std-nacl)#exit
Router(config)#^Z
Router#sh run
(略)
!
ip access-list standard BlockSales
deny  172.16.40.0 0.0.0.255
permit any
!
(略)
接下来应用到接口上,如下:
Router(config)#int 1
Router(config-if)#ip access-group BlockSales out
Router(config-if)#^Z
Router#

Monitoring Access Lists

一些验证ACL的命令,如下:
1.show access-list:显示router上配置了的所有的ACL信息,但是不显示哪个接口应用了哪个ACL的信息
2.show access-list [number]:显示具体第几号ACL信息,也不显示哪个接口应用了这个ACL
3.show ip access-list:只显示IP访问列表信息
4.show ip interface:显示所有接口的信息和配置的ACL信息
5.show ip interface [接口号]:显示具体某个接口的信息和配置的ACL信息
6.show running-config:显示DRAM信息和ACL信息,以及接口对ACL的应用信息

论坛徽章:
0
4 [报告]
发表于 2004-05-12 12:40 |只看该作者

[原创]Cisco网络专家教程Phase1-网络互连基础教程

Chapter11 Wide Area Networking Protocols


Introduction to Wide Area Networks

WAN是覆盖地理范围相对较为广阔的数据通信网络,它一般是利用公共载体(比如电信公司)提供的设备进行传输.WAN技术运行在OSI的最下3层

广域网(Wide Area Network,WAN)的一些术语
1.客户前端设备(customer premises equipment,CPE):位于用户(subscriber)前端,用户所拥有的设备
2.分界点(demarcation point):服务提供商(service provider,SP)和CPE的分隔点,一般位于电信(telecommunication)机房,由电信公司所拥有.用户这边连接到CSU/DSU或者ISDN接口来扩展延伸分界点
3.本地回路(local loop):把分界点连接到1个叫做central office(CO)的交换机房
4.CO:连接用户到服务商交换环境网络的点,有时候CO也叫做point of presence(POP)
5.toll network:Internet service provider(ISP)拥有,各种网络设备资源集合的网络

WAN Connection Types

WAN连接的一些类型,如下图:

如图:
1为租用线路,有时候也叫专线或点对点连接.预先布置好的通信路径,该路径从客户端通过电信公司的网络连接到远程网络.因为这样的通信线路通常是通过从电信公司租用而来,所以就叫做租用线路.这样线路方式一般由带宽和距离来定价,价格相对其他技术比如帧中继(frame relay)更为昂贵.速度可以达到45Mbps,一般使用HDLC和PPP的封装格式

2为电路交换型,这样的方式是连接只在有数据需要传输的时候才进行连接,通信完成后终止连接.这个和日常中打电话的过程很相似.一般用于对带宽要求过低的数据传输.例子有综合业务数字网络(Integrated Service Digital Network,ISDN).router向远程站点发送数据时,交换线路用远程网络的线路号进行启动.对于ISDN,实际情况为拨远程ISDN线路的电话号码.当2个网络连接并验证以后,就开始传输数据,数据传输完成,连接终止,如下图:


3为包交换(或者翻译为分组交换),用户共享电信公司资源,成本较低.在这样的网络中,网络连接电信公司网络,许多客户共享电信公司网络.然后电信公司在客户站点之间建立虚拟线路,数据包通过网络进行传输.这类例子有帧中继,ATM,X.25等.速度可以从56Kpbs达到T3的45Mbps,如下图:


WAN Support

WAN的一些技术:
1.帧中继(frame relay):一种包交换的技术,高性能,运行在OSI的最下2层即物理层和数据链路层.它其实是X.25技术的简化版本,省略了X.25技术的一些功能比如窗口技术和数据重发功能,这是因为帧中继工作在性能更好的WAN设备上;而且它比X.25有更好的传输效率,速度可以从64Kbps达到T3的45Mbps.它还提供带宽的动态分配和拥塞控制功能
2.ISDN:ISDN是1种在已有的电话线路上传输语音和数据等数字服务.如果你对那种传统的拨号(dial-up)上网的速度感到不满的时候,你可以使用ISDN的方式.ISDN也可作为比如帧中继或者T1连接的备份连接
3.平衡链路访问过程(Link Access Procedure,Balanced,LAPB):工作在OSI参考模型的数据链路层,是1种面向连接的协议,一般和X.25技术一起进行数据传输.因为它有严格的窗口和超时功能,所以使得代价很高
4.高级数据链路控制(High-Level Data-Link Control,HDLC):这个是由IBM创建的同步数据链路控制(Synchronous Data Link Control,SDLC)衍生而来的.工作在OSI参考模型的数据链路层.相比LAPB,HDLC成本较低.HDLC不会把多种网络层的协议封装在同1个连接上.各个厂商的HDLC都有他自己鉴定网络层协议的方式,所以各个厂商的HDLC是不同的,私有化的
5.点对点协议(Point-to-Point Protocol,PPP):1种工业标准(industry-standard)协议.因为各个厂商的HDLC私有,所以PPP可以用在不同厂商的设备之间的连接.PPP使用网络控制协议(Network Control Protocol,NCP)来验证上层的OSI参考模型的网络层协议
6.异步传输模式(Asynchronous Transfer Mode,ATM):国际电信联盟电信标准委员会(ITU-T)制定的信元(cell)中继续标准.ATM使用固定长度的53字节长的信元方式进行传输,ATM网络的面向连接的

Cabling the Wide Area Network

Cisco的串行连接支持几乎所有类型的WAN服务.HDLC,PPP和帧中继使用相同的物理层定义的接口,但是和ISDN的不一样.我们先来回顾下router的接口类型:

1.局域网接口
常见的以太网接口主要有AUI,BNC和RJ-45接口,还有FDDI,ATM,千兆以太网等都有相应的网络接口,下面分别介绍主要的几种局域网接口

(1).AUI接口
AUI接口它就是用来与粗同轴电缆连接的接口,它是一种D型15针接口,这在令牌环网或总线型网络中是一种比较常见的接口之一.router可通过粗同轴电缆收发器实现与10Base-5网络的连接.但更多的则是借助于外接的收发转发器(AUI-to-RJ-45),实现与10Base-T以太网络的连接.当然,也可借助于其他类型的收发转发器实现与细同轴电缆(10Base-2)或光缆(10Base-F)的连接.AUI接口示意图如图所示:


(2).RJ-45接口
RJ-45接口是我们最常见的接口了,它是我们常见的双绞线以太网接口.因为在快速以太网中也主要采用双绞线作为传输介质,所以根据接口的通信速率不同RJ-45接口又可分为10Base-T网RJ-45接口和100Base-TX网RJ-45接口两类.其中,10Base-T网的RJ-45 接口在router中通常是标识为ETH,而100Base-TX 网的RJ-45接口则通常标识为10/100bTX.如下图所示为10Base-T 网RJ-45接口:

而下图所示的为10/100Base-TX网RJ-45接口.其实这两种RJ-45接口仅就接口本身而言是完全一样的,但接口中对应的网络电路结构是不同的,所以也不能随便接:



Chapter11 Wide Area Networking Protocols


Introduction to Wide Area Networks

WAN是覆盖地理范围相对较为广阔的数据通信网络,它一般是利用公共载体(比如电信公司)提供的设备进行传输.WAN技术运行在OSI的最下3层

广域网(Wide Area Network,WAN)的一些术语
1.客户前端设备(customer premises equipment,CPE):位于用户(subscriber)前端,用户所拥有的设备
2.分界点(demarcation point):服务提供商(service provider,SP)和CPE的分隔点,一般位于电信(telecommunication)机房,由电信公司所拥有.用户这边连接到CSU/DSU或者ISDN接口来扩展延伸分界点
3.本地回路(local loop):把分界点连接到1个叫做central office(CO)的交换机房
4.CO:连接用户到服务商交换环境网络的点,有时候CO也叫做point of presence(POP)
5.toll network:Internet service provider(ISP)拥有,各种网络设备资源集合的网络

WAN Connection Types

WAN连接的一些类型,如下图:

如图:
1为租用线路,有时候也叫专线或点对点连接.预先布置好的通信路径,该路径从客户端通过电信公司的网络连接到远程网络.因为这样的通信线路通常是通过从电信公司租用而来,所以就叫做租用线路.这样线路方式一般由带宽和距离来定价,价格相对其他技术比如帧中继(frame relay)更为昂贵.速度可以达到45Mbps,一般使用HDLC和PPP的封装格式

2为电路交换型,这样的方式是连接只在有数据需要传输的时候才进行连接,通信完成后终止连接.这个和日常中打电话的过程很相似.一般用于对带宽要求过低的数据传输.例子有综合业务数字网络(Integrated Service Digital Network,ISDN).router向远程站点发送数据时,交换线路用远程网络的线路号进行启动.对于ISDN,实际情况为拨远程ISDN线路的电话号码.当2个网络连接并验证以后,就开始传输数据,数据传输完成,连接终止,如下图:


3为包交换(或者翻译为分组交换),用户共享电信公司资源,成本较低.在这样的网络中,网络连接电信公司网络,许多客户共享电信公司网络.然后电信公司在客户站点之间建立虚拟线路,数据包通过网络进行传输.这类例子有帧中继,ATM,X.25等.速度可以从56Kpbs达到T3的45Mbps,如下图:


WAN Support

WAN的一些技术:
1.帧中继(frame relay):一种包交换的技术,高性能,运行在OSI的最下2层即物理层和数据链路层.它其实是X.25技术的简化版本,省略了X.25技术的一些功能比如窗口技术和数据重发功能,这是因为帧中继工作在性能更好的WAN设备上;而且它比X.25有更好的传输效率,速度可以从64Kbps达到T3的45Mbps.它还提供带宽的动态分配和拥塞控制功能
2.ISDN:ISDN是1种在已有的电话线路上传输语音和数据等数字服务.如果你对那种传统的拨号(dial-up)上网的速度感到不满的时候,你可以使用ISDN的方式.ISDN也可作为比如帧中继或者T1连接的备份连接
3.平衡链路访问过程(Link Access Procedure,Balanced,LAPB):工作在OSI参考模型的数据链路层,是1种面向连接的协议,一般和X.25技术一起进行数据传输.因为它有严格的窗口和超时功能,所以使得代价很高
4.高级数据链路控制(High-Level Data-Link Control,HDLC):这个是由IBM创建的同步数据链路控制(Synchronous Data Link Control,SDLC)衍生而来的.工作在OSI参考模型的数据链路层.相比LAPB,HDLC成本较低.HDLC不会把多种网络层的协议封装在同1个连接上.各个厂商的HDLC都有他自己鉴定网络层协议的方式,所以各个厂商的HDLC是不同的,私有化的
5.点对点协议(Point-to-Point Protocol,PPP):1种工业标准(industry-standard)协议.因为各个厂商的HDLC私有,所以PPP可以用在不同厂商的设备之间的连接.PPP使用网络控制协议(Network Control Protocol,NCP)来验证上层的OSI参考模型的网络层协议
6.异步传输模式(Asynchronous Transfer Mode,ATM):国际电信联盟电信标准委员会(ITU-T)制定的信元(cell)中继续标准.ATM使用固定长度的53字节长的信元方式进行传输,ATM网络的面向连接的

Cabling the Wide Area Network

Cisco的串行连接支持几乎所有类型的WAN服务.HDLC,PPP和帧中继使用相同的物理层定义的接口,但是和ISDN的不一样.我们先来回顾下router的接口类型:

1.局域网接口
常见的以太网接口主要有AUI,BNC和RJ-45接口,还有FDDI,ATM,千兆以太网等都有相应的网络接口,下面分别介绍主要的几种局域网接口

(1).AUI接口
AUI接口它就是用来与粗同轴电缆连接的接口,它是一种D型15针接口,这在令牌环网或总线型网络中是一种比较常见的接口之一.router可通过粗同轴电缆收发器实现与10Base-5网络的连接.但更多的则是借助于外接的收发转发器(AUI-to-RJ-45),实现与10Base-T以太网络的连接.当然,也可借助于其他类型的收发转发器实现与细同轴电缆(10Base-2)或光缆(10Base-F)的连接.AUI接口示意图如图所示


(2).RJ-45接口
RJ-45接口是我们最常见的接口了,它是我们常见的双绞线以太网接口.因为在快速以太网中也主要采用双绞线作为传输介质,所以根据接口的通信速率不同RJ-45接口又可分为10Base-T网RJ-45接口和100Base-TX网RJ-45接口两类.其中,10Base-T网的RJ-45 接口在router中通常是标识为ETH,而100Base-TX 网的RJ-45接口则通常标识为10/100bTX.如下图所示为10Base-T 网RJ-45接口:

而下图所示的为10/100Base-TX网RJ-45接口.其实这两种RJ-45接口仅就接口本身而言是完全一样的,但接口中对应的网络电路结构是不同的,所以也不能随便接:


(3).SC接口
SC接口也就是我们常说的光纤接口,它是用于与光纤的连接.光纤接口通常是不直接用光纤连接至工作站,而是通过光纤连接到快速以太网或千兆以太网等具有光纤接口的switch.这种接口一般在高档router才具有,如图所示:


2.广域网接口
在上面就讲过,router不仅能实现局域网之间连接,更重要的应用还是在于局域网与广域网、广域网与广域网之间的连接.但是因为广域网规模大,网络环境复杂,所以也就决定了router用于连接广域网的接口的速率要求非常高,在以太网中一般都要求在100Mbps快速以太网以上.下面介绍几种常见的广域网接口

(1.)RJ-45接口
利用RJ-45接口也可以建立广域网与局域网VLAN之间,以及与远程网络或Internet的连接.如果使用router为不同VLAN提供路由时,可以直接利用双绞线连接至不同的VLAN接口.但要注意这里的RJ-45接口所连接的网络一般就不太可有是10Base-T这种了,一般都是100Mbps快速以太网以上.如果必须通过光纤连接至远程网络,或连接的是其他类型的接口时,则需要借助于收发转发器才能实现彼此之间的连接.如图所示:


2.AUI接口
AUI接口我们在局域网中也讲过,它是用于与粗同轴电缆连接的网络接口,其实AUI接口也被常用于与广域网的连接,但是这种接口类型在广域网应用得比较少.在Cisco 2600系列router上,提供了AUI与RJ-45两个广域网连接接口,如图:


(3).高速同步串口
在router的广域网连接中,应用最多的接口还要算高速同步串口(Serial)了.如图:


这种接口主要是用于连接目前应用非常广泛的DDN,帧中继,X.25,PSTN等网络连接模式.在企业网之间有时也通过DDN或X.25等广域网连接技术进行专线连接.这种同步接口一般要求速率非常高,因为一般来说通过这种接口所连接的网络的两端都要求实时同步

(4)异步串口
异步串口主要是应用于Modem或Modem池的连接,如图8所示.它主要用于实现远程计算机通过公用电话网拨入网络.这种异步接口相对于上面介绍的同步接口来说在速率上要求就松许多,因为它并不要求网络的两端保持实时同步,只要求能连续即可,主要是因为这种接口所连接的通信方式速率较低.如图:


(5).ISDN BRI接口
因ISDN这种互联网接入方式连接速度上有它独特的一面,所以在当时ISDN刚兴起时在互联网的连接方式上还得到了充分的应用.ISDN BRI接口用于ISDN线路通过router实现与Internet或其他远程网络的连接,可实现128Kbps的通信速率.ISDN有两种速率连接接口,一种是ISDN BRI(基本速率接口);另一种是ISDN PRI(基群速率接口).ISDN BRI接口是采用RJ-45标准,与ISDN NT1的连接使用RJ-45-to-RJ-45直通线.如图所示的BRI为ISDN BRI接口:


Serial Transmission

串行传输(serial transmission):1次1位,WAN普遍使用这种方式传输
并行传输(parallel transmission):1次8位

Cisco使用私有的60针脚的串行连接器.连接器的另外1端的类型可以有以下几种:
1.EIA/TIA-232
2.EIA/TIA-449
3.V.35(与CSU/DSU连接)
4.X.21(X.25中使用)
5.EIA-530

Data Terminal Equipment(DTE) and Data Communication Equipment(DCE)

Router的接口默认是DTE,它们和DCE比如CSU/DSU相连,DCE的主要作用就是提供始终频率

High-Level Data-Link Control(HDLC) Protocol

HDLC是1种ISO标准,面向比特(bit-oriented)的数据链路层协议.它定义了在同步串行连接的封装方法.HDLC是种在租用线路上使用的点对点协议.HDLC不使用验证(authentication)

在面向字节(byte-oriented)的协议中,控制信息使用整个字节进行编码;但是在面向比特的协议中,使用单独的1个比特(bit)来代表控制信息.面向比特的协议包括SDLC,LLC,HDLC,TCP,IP等

HDLC是Cisco同步串行连接中默认的封装格式.当然,Cisco的HDLC是私有的,即不能和其他厂商的HDLC相互通信.而且各个厂商的HDLC均是私有的.来看看Cisco的HDLC和HDLC的帧的格式,如图:

假如你有2个不同厂商的设备,就不能使用HDLC,就要使用PPP

Point-to-Point Protocol(PPP)

PPP是OSI参考模型层2协议,可以使用在异步串行连接比如拨号(dial-up)或者同步串行连接比如ISDN上.它使用链路控制协议(Link Control Protocol,LCP)来建立和保持连接.PPP的主要目的是通过数据链路层点对点的传输OSI参考模型层3数据包.来看下PPP的协议栈,如图:

PPP的4个组件如上图.注意PPP的协议栈只定义在OSI参考模型的层1和层2.NCP用于建立和配置多种网络层协议.PPP允许采用多种网络层协议.PPP可以工作在任何DCE/DTE接口比如EIA/TIA-323-C(以前为RS-232-C),ITU-T(原CCITT)V.35等.唯一要求是必须提供全双工线路

Link Control Protocol(LCP) Configuration Options

LCP提供不同的PPP封装选项包括:
1.验证:用于验证呼叫方身份,包括PAP和CHAP2种方法
2.压缩(compression):压缩数据,增加连接吞吐量.在接收方解压缩
3.错误检测(error detection):使用Quality和Magic Number来保证可*数据可*性
4.多连接(multilink):从IOS版本11.1开始,Cisco的router就支持多连接.这个使得多个单独的物理路径看上去像1条层3逻辑路径
5.PPP回叫信号(PPP callback):使用了callback以后,客户端连接远端并进行验证.验证完成后,远端将终止连接,然后重新初始化连接

PPP Session Establishment

PPP连接的3个阶段:
1.连接建立阶段
2.验证阶段
3.网络层协议配置阶段
在网络层数据包进行交换前,LCP先打开连接,并协调和配置参数.LCP允许有1个可选的链路质量检测阶段,在这1阶段,通过检测链路来决定链路是否满足网络层协议的要求,这1阶段是可选的.LCP完成链路质量检测后,网络层协议通过NCP进行单独的配置

LCP帧有3种:
1.链路建立帧:建立和配置链路
2.链路终止帧:终止链路
3.链路维护帧:管理和维护链路
这3种帧可以完成LCP各阶段的工作

PPP Authentication Methods

2种PPP的验证方式:
1.密码验证协议(Password Authentication Protocol,PAP)AP是2种验证方法中比较不安全的1种.密码使用明文(clear text)的方式发送.PAP只在初始化连接的时候执行.当PPP连接完成后,远端节点发回源router的用户名和密码直到验证被确认
2.挑战握手验证协议(Challenge Handshake Authentication Protocol,CHAP):用于初始化连接的时候,周期性对连接进行检查保证通信方没有改变被替换.当初始化连接的阶段完成后.本地router发送个挑战请求给远端设备.然后远端设备发送回1个用MD5方式加密的值给发送方.如果值不匹配,连接将立即被终止

Configuration PPP on Cisco Routers

配置PPP,在接口配置模式使用encapsulation ppp命令.如下
Noko(config)#int s0
Noko(config-if)#encap ppp
Noko(config-if)#^Z
Noko#
当然,既然是配置PPP连接,那就要在2个接口上都进行定义封装格式为PPP,如下:
Noco(config)#int s0
Noco(config-if)#encap ppp
Noco(config-if)#^Z
Noco#

Configuration PPP Authentication

当你定义了封装格式后,可以配置验证方式首先设置router的主机名;接下来设置用于远端连接本地router的用户名和密码,格式为在全局模式下使用username [用户名] password [密码].如下:
RouterB(config)#hostname Noco
Noco(config)#username Noko password 4noko
Noco(config)#^Z
NocoB#

RouterA(config)#hostname Noko
Noko(config)#username Noco password 4noko
Noko(config)#^Z
Noko#
注意用户名username之后跟的是连接你本地router的那个远程router,注意区分大小写.而且2端配置的密码必须一样.因为是明文密码,可以使用show running-config来查看密码;可以使用service password-encryption来加密密码
接下来选择验证类型比如CHAP或者PAP,如下:
Noco(config)#int s0
Noco(config-if)#ppp authentication chap pap
Noco(config-if)#^Z
Noco#
如上,当你使用了2种验证方法的时候,只有第一种方法被使用;第二种作为第一种失败的备份验证方法

Verifying PPP Encapsulation

使用show interface命令来验证,如下:
Noco#sh int s0
Serial0 is up, line protocol is up
(略)
Encapsulation PPP, loopback not set, keepalive set (10 sec)
LCP Open
(略)

使用debug ppp authentication命令来验证PPP的验证配置信息

Frame Relay

在过去十多年里,帧中继已经成为1种最流行的WAN服务了.它实际上是起源于X.25技术.但是之前我们说过,和X.25技术相比,它省略了窗口技术和数据重传功能.帧中继对应OSI参考模型的最下2层;而X.25还提供有第三层即网络层的服务.因而,帧中继比X.25拥有更好的性能和传输效率

Introduction to Frame Relay Technology

帧中继技术是种包交换(packet-switched)技术;还有要知道的是你不能使用类似encapsulation hdlc或encapsulation ppp的命令来对其进行配置;帧中继的运作不像点对点的租用线路那样(虽然看上去像,但是实际过程不一样);使用帧中继技术比使用租用线路便宜,开销更小

Frame Relay Technology

我们先看?≈屑淌侨绾喂ぷ鞯?如图:

如图,描述了帧中继实际的运行方式和router以及用户方他们所看到的情况

Committed Information Rate(CIR)

帧中继的一些术语:
1.访问速率(access rate):每个帧中继接口可以传输的最大带宽
2.约定信息速率(committed information rate,CIR):正常情况下,帧中继网络传输数据的速率,它是在最小单位时间内的传输数据平均值,单位为bps
3.约定猝发速率(committed burst rate,CBR):表示帧中继网络可通过的数据最大的传输速率,单位是bps
帧中继在业务量较少的时候,通过带宽动态分配技术,允许某些用户利用其他用户的空闲带宽传输自己的突发数据,实现带宽资源共享,降低成本;在网络业务量大并发生拥塞的情况下,由于为每个用户分配了CIR,按照优先级公平原则,将超过CIR的某些帧丢弃,并保证没有超过CIR的帧的可*传送.因此,不会用户因为拥塞而导致数据不合理的丢失

Frame Relay Encapsulation Types

当对Cisco的router进行配置帧中继的时候,你必须定义串行接口的封装类型.在接口配置模式下使用encapsulation frame-relay命令,如下:
Router(config)#int s0
Router(config-if)#encap frame-relay ?
  ietf   Use RFC1490 encapsulation
  <cr>;
注意,有2种封装类型:Cisco和IETF(Internet Engineer Task Force).默认为Cisco,用于连接Cisco设备和Cisco设备;除非你手动更改封装格式为IETF,用于连接Cisco设备和非Cisco设备.注意,帧中继连接设备的2端必须使用相同的封装类型

Virtual Circuits

帧中继使用提供面向连接的数据链路层的通信,这也意味着每对设备之间都存在1条定义好的通信连接,而且这个连接有1个连接识别码.这种服务通过帧中继的虚电路(virtual circuits)实现,即虚电路实现帧中继包交换网络中DTE的逻辑连接(非物理连接)

虚电路在DTE设备之间提供双向信道,并且通过数据链路连接标识符(Data Link Connection Identifiers,DLCIs)进行识别

有2种虚电路:
1.交换式虚电路(switched virtual circuit,SVC):是1种临时连接.它只在DTE设备之间需要跨越帧中继网络传输突发性数据的时候使用.它的建立过程类似打电话,过程是:建立呼叫状态;数据传输;空闲状态(如果超过一定时间仍然为空闲状态建立将被终止);终止连接
2.永久性虚电路(permanent virtual circuit,PVC):为了可以持续的传输数据,帧中继在DTE设备之间建立1条永久性的连接,这就是永久性虚电路.与SVC不同,PVC的通信不需要建立会话和终止会话.而且只会处于这2种状态:数据传输状态和空闲状态(与SVC不同,无论空闲时间多长,连接都不会被终止)

Data Link Connection Identifiers(DLCIs)

每条帧中继许电路都要用DLCI来标识自己,DLCI一般由服务商比如电信公司指定.而且DLCI是局部性的,也就是说DLCI在帧中继网络中不是唯一的.DLCI一般由16开始,把DLCI 16应用到接口上,如下:
RouterA#(config-if)#frame-relay interface-dlci ?
  <16-1007>;   Define a DLCI as part of the current subinterface
RouterA#(config-if)#frame-relay interface-dlci 16

Local Management Interface(LMI)

本地管理接口(Local Management Interface,LMI)是对基本的帧中继标准的扩展集.它是你的router和第一个帧中继switch之间的信令(signaling)标准.LMI使得DLCI具有全局性而不再是局部性.即DLCI的值成了DTE设备的地址.它提供以下信息:
1.keepalives:通过这个来验证数据是否有进行传输
2.组播:可选的LMI扩展.使用保留DLCIs 1019到1022
3.全局寻址(global addressing):使得DLCI具有全局性,使得帧中继网络看上去就像是LAN那样工作的
4.虚电路状态:提供DLCI状态
要记住的是,LMI不是用于你的router之间的通信,而是使得你的router和离你router最近的帧中继网络的switch通信

3种LMI信息类型:Cisco,ANSI和Q.933A.根据电信公司switch的类型和配置而不同.Cisco的设备默认LMI类型是Cisco.从IOS版本11.2开始,LMI类型就是自动检测了.如果你的设备没有这个功能,那就要手动配置,如下:
RouterA#(config-if)#frame-relay lmi-type ?
  cisco
  ansi
  q933a
  <cr>;

router的定义了封装类型为帧中继的接口从服务提供商的帧中继switch接收和更新虚电路的状态.3种不同的状态:
1.活跃(active)状态:配置正常,router之间可以交换信息
2.非活跃(inactive)状态:router接口为up状态,而且可以和帧中继switch进行通信,但是远端router没有工作
3.删除(deleted)状态:没有LMI信息在router接口和帧中继switch之间进行传递.可能是线路问题或者映射(mapping)出错

Frame Relay Congestion Control

为了降低开销,帧中继使用拥塞控制机制而不是虚电路的流控制机制.帧中继主要是在可*性高的媒体上实现.因此流控制可以由高层来完成而不会降低数据的完整性.下面是帧中继的帧中3种拥塞位和它们的含义:
1.丢弃适选者位(Discard Eligibility,DE):由DTE设备设置,长度为1位.用来表示1个帧的重要性比正在传输的其他帧低.在网络发生拥塞状态后,首先将丢弃那些设置了DE位的帧
2.向前显式拥塞通知(Forward Explicit Congestion Notification,FECN):长度为1位.当它被设置为1的时候,说明帧在从源地址到目标地址的传输线路上出现了拥塞
3.向后显式拥塞通知(Backward Explicit Congestion Notification,BECN):长度为1位.当它被设置为1的时候,说明帧在从源地址到目标地址的传输线路的相反方向上出现了拥塞

Frame Relay Implementation and Monitoring

假设你的物理接口只有1条PVC,而且分配给你的DLCI为101,看下router的配置,如下:
RouterA(config)#int s0/0
RouterA(config-if)#encap frame-relay
RouterA(config-if)#ip address 172.16.20.1 255.255.255.0
RouterA(config-if)#frame-relay lmi-type ansi
RouterA(config-if)#frame-relay interface-dlci 101
RouterA(config-if)#^Z
RouterA#
如上,进入接口配置模式以后,第一条命令是定义封装类型,默认为Cisco;第二步分配接口IP地址;接下来是定义LMI的类型为ANSI,默认为Cisco;最后根据分配给你的DLCI,把它加进PVC中去.还有要记住的是2端的router都要正确配置噢

现在我们来看看1个物理接口配置多个虚电路的实例.首先要创建子接口.子接口是逻辑接口,多个子接口可以只占用1个物理接口.这个也叫多路复用multiplexing.具体这样配置:先定义物理串行接口的封装类型;然后创建子接口,一般来说每个子接口1条PVC,如下:
RouterA(config)#int s0
RouterA(config-if)#encap frame-relay
RouterA(config-subif)#int s0.16 ?
  Multipoint     Treat as a multipoint link
  point-to-point   Treat as a point-to-point link
RouterA(config-subif)#int s0.16 point-to-point
注意上面的例子,有2种子接口模式:
1.multipoint:位于星形拓扑虚电路的中心,1点对多点.router的所有物理串行接口使用1个单独的子网号
2.point-to-point:点对点.每个子接口使用各自的子网号

Monitoring Frame Relay

检查PVC的状态,可以使用以下一些常用命令:
1.show frame lmi:提供本地router和帧中继switch的LMI信息交换的统计信息,包含LMI错误信息和LMI类型等等
2.show frame pvc:显示所有配置了的PVC和DLCI信息,提供每条PVC的连接信息和流量统计,还有每条PVC上接收到的BECN和FECN包的信息.如果具体想显示PVC 16的话,就使用show frame pvc 16命令
3.show interface:检查LMI流量.显示封装类型和OSI参考模型的层2和层3的信息.还包括协议,DLCI等信息
4.show frame map:显示OSI参考模型中的网络层到DLCI的映射
5.debug frame lmi:允许你根据交换了的正确的LMI信息来验证和排错帧中继连接

Integrated Services Digital Network(ISDN)

ISDN是种利用已有的电话网络提供数字化服务.ISDN支持数据和语音,可以在其上传播语音,数据,文本,图象,视频等服务.典型的ISDN的应用包括高速图象(比如G4传真)服务,高速文件传输和视频会议等.ISDN参考了ITU-T标准,运行在对应OSI参考模型的最下3层.ISDN标准定义了硬件和呼叫建立的机制来保证端到端的数字化连接

PPP和ISDN一起常用于提供数据传输,链路完整性,身份验证等.但是并不等于ISDN就是PPP,HDLC或者帧中继的替代.PPP是在ISDN连接中最常见的封装方法

ISDN的一些优点:
1.可以同时传输语音,数据和视频
2.建立会话的速度比老式的拨号(dial up)的要快,并且数据传输的速度也要快的多
3.成本较低,是小型办公和家庭用户的比较经济的解决方案
4.可以用做租用线路的备份连接
5.可以使用按需拨号(dial-on-demand,DDR)

ISDN Connections

ISDN基本速率接口(Basic Rate Interface)服务提供2个B信道和1个D信道(2B+D).BRI的B信道的速率为64Kbps用于传输数据;D信道速率为16Kbps,尽管D信道在某些环境下它可以传输用户数据,但是主要作用还是传输控制信息和信令(signaling)信息.D信道的信令协议对应OSI参考模型的最下3层

ISDN的BRI接口使用RJ-45连接器,采用直通线(straight-through cable).要记住的是不可以把console或者其他LAN接口的线缆插进BRI接口,那样会损坏BRI接口

ISDN Components

ISDN的组件包括参考点(reference points)和终端设备,如下图:

在北美地区,ISDN使用双芯线缆(two-wire)连接,叫做U参考点,连接到家庭或者办公室.NT1设备把4芯线缆(four-wire)转换成双线缆.现在的一般很多router都内建(built-in)NT1接口
连接到ISDN网络的设备叫做终端设备(terminal equipment,TE)和网络终端(network termination,NT)设备.分别来看看它们有哪些类型:
1.TE1:专用的ISDN终端设备,可直接接入到ISDN网络中去
2.在ISDN标准出现之前就有了的非ISDN终端设备,TE2要通过使用TA才能连接到ISDN网络中去
3.TA:终端适配器(terminal adapter,TA)用来把非ISDN信令标准转换为ISDN信令标准.TA可以是独立的设备,也可以是TE2上的1块电路板.如果TE2是独立的设备,就可以通过标准的物理层接口连接到TA上,如EIA/TIA-232-C,V.24和V.35
4.NT1:用来把4芯线缆的用户连线连接到双芯本地环路上.在北美,NT1是用户终端设备;而在其他地方,NT1则是网络服务商提供的网络组件
5.NT2:服务商设备,比如PBX或者switch..它执行OSI参考模型的层2和层3的协议功能和集中服务

参考点定义了功能组之间的逻辑接口,比如TA和NT1.ISDN包括以下几种参考点:
1.R参考点:TE2即非ISDN设备和TA之间的参考点
2.S参考点:用户终端和NT2之间的参考点
3.T参考点:NT1和NT2之间的参考点
4.U参考点:NT1与电信公司网络中的线路终端之间的参考点.U参考点只有北美才有用,因为那里是服商不提供NT1功能

ISDN Protocols

ITU-T定义了ISDN的协议,如图:


ISDN Switch Types

全局配置模式下使用isdn switch-type [keyword]命令来定义ISDN的switch类型,如果你不知道keyword是什么的话,可以向服务商询问.以下是些ISDN的switch类型的keyword:
1.AT&T basic rate switch:basic-5ess
2.AT&T 4ESS(ISDN PRI only):parimary-4ess
3.AT&T 5ESS(ISDN PRI only):parimary-5ess
4.Nortel DMS-100 basic rate switch:basic-dms100
5.Nortel DMS-100(ISDN PRI only):primary-dms100
6.National ISDN-1 switch:basic-ni1

Basic Rate Interface(BRI)

之前说过BRI使用2B+D的信道,B信道速率为64Kbps,D信道为16Kbps,总速度为2*64+16=144Kbps.D信道信令协议(Q.921和Q.931)对应OSI参考模型下3层

当你配置BRI的时候,首先你要获取的是服务档案标识符(service profile identifier,SPID),而且每个B信道对应1个SPID.SPID由数字组成,是唯一的.ISDN设备提交SPID到ISDN的switch上去.如果没有SPID,许多ISDN switch将不允许使用ISDN服务

建立BRI会话的几个步骤:
1.router和本地ISDN switch之间的D信道状态为up
2.ISDN switch使用SS7信令建立到远程switch的路径
3.远程switch建立到远程router的D信道连接
4.B信道端到端的连接

Primary Rate Interface(PRI)

在北美和日本,ISDN的主速率接口(PRI)提供23个B信道和1个D信道,其中D信道速率为64Kbps,总速率可达1.544Mbps.而在欧洲,澳大利亚等其他国家,PRI提供30个B信道和1个64Kbps的D信道,总速率可达2.048Mbps

ISDN with Cisco Routers

在Cisco的router上配置ISDN的时候,在接口配置模式下使用isdn spid1和isdn spid2命令.这些都是由ISDN服务商提供.SPID配置的第二部分是定义SPID的本地目录号,这个是可选的.如下:
RouterA(config)#isdn switch-type basic-ni
RouterA(config)#int bri0
RouterA(config-if)#encap ppp
RouterA(config-if)#isdn spid1 086506610100 8650661
RouterA(config-if)#isdn spid1 086506620100 8650662
注意上面的encap ppp命令也是可选命令.isdn switch-type命令用于全局配置模式下,使整个router的所有BRI接口都生效;但是假如你只有1个BRI接口的话,在全局模式使用这个命令和在BRI的接口配置模式使用这个命令效果是一样的

Dial-on-Demand Routing(DDR)

DDR是根据传输终端的需要动态建立和关闭电路交换的1种方式.DDR是用公共电话网提供了网络连接.通常的,广域网大多数用专线连接的,router连接到类似modem或ISDN TAs的数据终端DCE设备上.DDR比较适用于用户对数率要求不高,偶尔有数据传输或只是在特定时候传输数据,比如银行每晚传送报表等等情况下

当一个感兴趣的包到达router时,产生一个DDR请求.router发送呼叫建立信息给指定的串口的DCE设备.这个呼叫就把本地和远程的设备连接起来.一旦没有数据传输,空闲时间开始计时,超过设置的空闲时间,这一次连接终止

Configuring DDR

配置DDR的主要步骤:
1.定义静态路由
2.定义router感兴趣的流量
3.配置dialer信息

我们来具体看看DDR是如何配置的,首先要配置的是静态路由.要使得ISDN连接转发数据流量,就必须在每个router上定义静态路由.你也可以使用动态路由协议进行配置,但是这样的话ISDN链路就永远不会down掉.建议使用静态路由进行配置,而且如果是在stub网络中你还可以使用默认路由.来看1个配置实例,如下:
804B(config)#ip route 172.16.50.0 255.255.255.0 172.16.60.2
804B(config)#ip route 172.16.60.2 255.255.255.255 bri0
第一行命令告诉你通过IP地址为172.16.60.2的接口到达网络172.16.50.0.第二行命令是关键

接下来定义感兴趣的数据流量,在全局配置模式下使用dialer-list命令定义数据流量,如下:
804A#(config)#dialer-list 1 protocol ip permit
804rA#(config)#int bri0
804A#(config-if)#dialer-group 1
和以前配置ACL有点类似.记得要在BRI接口使用dialer-group命令使之生效

配置dialer信息有5个步骤:
1.选择接口
2.设置IP地址
3.定义封装类型
4.把之前定义好了的感兴趣的数据流量链接到接口上
5.配置号码或要拨的号码
具体如下:
804A(config)#int bri0
804A(config-if)#ip address 172.16.60.1 255.255.255.0
804A(config-if)#no shut
804A(config-if)#encap ppp
804A(config-if)#dialer-group 1
804A(config-if)#dialer string 8350661
可以使用更为安全的命令dialer map来代替dialer string命令,命令格式为dialer map [协议] [下1跳IP地址] name [主机名] [拨号串].如下:
804A(config-if)#dialer map ip 172.16.60.2 name 804B 8350661
dialer map命令使ISDN电话号与下1跳地址产生关联

在804B上验证下配置,如下;
804B#sh run
(略)
!
hostname 804B
!
ip subnet-zero
!
isdn switch-type basic-ni
!
interface Ethernet0
ip address 172.16.50.10 255.255.255.0
no ip directed-broadcast
!
interface BRI0
ip address 172.16.60.2 255.255.255.0
no ip directed-broadcast
!
encapsulation ppp
dialer idle-timeout 300
dialer string 8358661
dialer load-threshold 2 either
dialer-group 1
isdn switch-type basic-ni
isdn spid1 0835866201 8358662
isdn spid2 0835866401 8358664
hold-queue 75 in
!
ip classless
ip route 172.16.30.0 255.255.255.0 172.16.60.1
ip route 172.16.60.1 255.255.255.255 BRI0
!
dialer-list 1 protocol ip permit
!

Optional Commands

2个在BRI接口下的可选命令:
1.dialer load-threshold [范围值] [in/out/either]:范围值为1到255.255表示当第一个信道100%的加载以后才使B信道up.默认是out
2.dialer idel-timeout:定义空闲超时时间,默认是120秒

DDR with Access Lists

看下dialer list和ACL的综合配置,如下:
804A(config)#dialer-list 1 protocol ip list 110
804A(config)#access-list 110 permit tcp any any eq smtp
804A(config)#access-list 110 permit tcp any any eq telnet
804A(config)#int bri0
804A(config-if)#dialer-group 1

Verifying the ISDN Operation

一些关于ISDN的验证配置的命令:
1.show dialer:检查拨号信息
2.show isdn active:检查被叫号码和是否在处理进程中
3.show isdn status:拨号之前的有利工具.提示你的SPID是否有效和是否与服务商的ISDN switch进行通信
4.debug isdn q921:只检查层2信息
5.debug isdn q931:只检查层3信息
6.debug dialer:检查建立与终止连接的活动
7.isdn disconnect int bri0:断开连接.和在接口使用shutdown命令效果是一样的


Postscript


Noko#sh run
!
Written by 红头发 a.k.a. Noco
Description 欢迎转po,请保留作者信息
Mar.26th.2004
!

Special thanks Noko & all my friends…

论坛徽章:
0
5 [报告]
发表于 2004-05-12 12:41 |只看该作者

[原创]Cisco网络专家教程Phase1-网络互连基础教程

后续:更进一步的原创教程:
http://bbs.chinaunix.net/forum/30/20040512/323077.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP