??
CCNP路由实验之十七广域网技术之一
广域网(WAN,Wide Area Network)也称远程网(long haul network )。通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。如因特网(Internet)是世界范围内最大的广域网。广域网WAN一般最多只包含OSI参考模型的底下三层,而且大部分广域网都采用存储转发方式进行数据交换,也就是说,广域网是基于报文交换或分组交换技术的(传统的公用电话交换网除外)。广域网中的交换机先将发送给它的数据包完整接收下来,然后经过路径选择找出一条输出线路,最后交换机将接收到的数据包发送到该线路上去,以此类推,直到将数据包发送到目的结点。
广域网链路的交换技术可以分成:电路交换、报文交换、分组交换(包交换)和信元交换。
-
电路交换网络。使用同一条实际的物理链路,通信中自始至终使用该链路进行信息传输,且不允许其它计算机或终端同时共亨该电路。例如传统的PSTN上网就是这样,当你上网时,你就不能打电话了。
- 报文交换网络(Messageswitching):又称存储转发交换,是数据交换的三种方式之一,报文整个地发送,一次一跳。数据传输单位是报文,报文就是站点一次性要发送的数据块,其长度不限且可变。当一个站要发送报文时,它将一个目的地址附加到报文上,网络节点根据报文上的目的地址信息,把报文发送到下一个节点,一直逐个节点地转送到目的节点。每个节点在收到整个报文并检查无误后,就暂存这个报文,然后利用路由信息找出下一个节点的地址,最后,在下一跳路由空闲时,将数据转发给下一跳路由。因此,端与端之间无需先通过呼叫建立连接,一个报文在每个节点的延迟时间,等于接收报文所需的时间加上向下一个节点转发所需的排队延迟时间之和。报文从源点传送到目的地采用"存储--转发"方式,在传送报文时,一个时刻仅占用一段通道。在交换节点中需要缓冲存储,报文需要排队,故报文交换不能满足实时通信的要求。
- 分组交换网络。报文交换是分组交换的前身,分组交换是将数据包进行分开,成为几组,然后几组可同时进行发送,达到目的地后再将分组重新组装成原型数据包。分组交换分为两种有虚电路分组交换和数据报分组交换两种。在虚电路分组交换中,为了进行数据传输,网络的源节点和目的节点之间要先建一条逻辑通路。每个分组除了包含数据之外还包含一个虚电路标识符。在预先建好的路径上的每个节点都知道把这些分组引导到哪里去,不再需要路由选择判定。最后,由某一个站用清除请求分组来结束这次连接。它之所以是“虚”的,是因为这条电路不是专用的。虚电路分组交换的主要特点是:在数据传送之前必须通过虚呼叫设置一条虚电路。但并不像电路交换那样有一条专用通路,分组在每个节点上仍然需要缓冲,并在线路上进行排队等待输出。在数据报分组交换中,每个分组的传送是被单独处理的。每个分组称为一个数据报,每个数据报自身携带足够的地址信息。一个节点收到一个数据报后,根据数据报中的地址信息和节点所储存的路由信息,找出一个合适的出路,把数据报原样地发送到下一节点。由于各数据报所走的路径不一定相同,因此不能保证各个数据报按顺序到达目的地,有的数据报甚至会中途丢失。整个过程中,没有虚电路建立,但要为每个数据报做路由选择。分组交换实质上是在“存储—转发”基础上发展起来的。它兼有电路交换和报文交换的优点。分组交换在线路上采用动态复用技术传送按一定长度分割为许多小段的数据—分组。每个分组标识后,在一条物理线路上采用动态复用的技术,同时传送多个数据分组。把来自用户发端的数据暂存在交换机的存储器内,接着在网内转发。到达接收端,再去掉分组头将各数据字段按顺序重新装配成完整的报文。比如X.25、帧中继和交换式多兆位数据服务(SMDS)。
- 信元交换技术是一种快速分组交换技术,它结合了电路交换技术延迟小和分组交换技术灵活的优点。信元是固定长度的分组,ATM采用信元交换技术,其信元长度为53字节。信元头5字节,数据48字节。ATDM信元传输采用异步时分复用(Asynchronous Time Division Multioles),又称统计复用(Statistic Multiptx)。ATM信元:ATM数据传送单位是一固定长度的分组,称为信元,它有一个信元头及一个信元信息域。信元长度为53个字节,其中信元头占5个字节,信息域占48个字节。信元头主要功能是:信元的网络路由。ATM采用了异步时分多路复用技术ATDM,ATDM采用排队机制,属于不同源的各个信元在发送到介质上之前,都要被分隔并存入队列中,这样就需要速率的匹配和信元的定界。ATM信元标识:ATM采用虚拟信道模式,通信信道用一个逻辑号标识。对于给定的多路复用器,该标识是本地的,并在任何交换部件处改变。通道的标识基于两种标识符,即虚拟通路标识VPI和虚拟通道标识VCI。一个虚拟通路VP包含有若干个虚拟通道VC。 虚拟通道和虚拟通路者用来描述ATM信元单向传输的路由。每个虚拟通路可以用复用方式容纳多达65535个虚拟信道,属于同一虚拟通道的信元群,拥用相同虚拟通道标识VCI,它是信元头一部分。
多路复用技术:数据通信系统或计算机网络系统中,传输媒体的带宽或容量往往会大于传输单一信号的需求,为了有效地利用通信线路,希望一个信道同时传输多路信号,这就是所谓的多路复用技术(Multiplexing)。采用多路复用技术能把多个信号组合起来在一条物理信道上进行传输。
- 频分复用(FDM)按频谱划分信道,多路基带信号被调制在不同的频谱上。因此它们在频谱上不会重叠,即在频率上正交,但在时间上是重叠的,可以同时在一个信道内传输。在频分复用系统中,发送端的各路信号m1(t),m2(t),…,mn(t)经各自的低通滤波器分别对各路载波f1(t),f2(t),…,fn(t)进行调制,再由各路带通滤波器滤出相应的边带(载波电话通常采用单边带调制),相加后便形成频分多路信号。在接收端,各路的带通滤波器将各路信号分开,并分别与各路的载波f1(t),f2(t),…,fn(t)相乘,实现相干解调,便可恢复各路信号,实现频分多路通信。频分复用已成为现代模拟通信中最主要的一种复用方式,在模拟式遥测、有线通信、微波接力通信和卫星通信中得到广泛应用。
- 时分复用:若媒体能达到的位传输速率超过传输数据所需的数据传输速率,则可采用时分多路复用TDM技术,也即将一条物理信道按时间分成若干个时间片轮流地分配给多个信号使用。每一时间片由复用的一个信号占用,而不像FDM那样,同一时间同时发送多路信号。这样,利用每个信号在时间上的交叉,就可以在一条物理信道上传输多个数字信号。这种交叉可以是位一级的,也可以是由字节组成的块或更大的信息组进行交叉。时分多路复用TDM不仅仅局限于传输数字信号,也可以同时交叉传输模拟信号。另外,对于模拟信号,有时可以把时分多路复用和频分多路复用技术结合起来使用。一个传输系统,可以频分成许多条子信道,每条子信道再利用时分多路复用技术来细分。在宽带局域网络中可以使用这种混合技术
- 光波分多路复用:是指在一根光纤中传输多种不同波长的光信号,由于波长不同,所以各路光信号互不干扰,最后再用波长解复用器将各路波长分解出来。所选器件应具有灵敏度高、稳定性好、抗电磁干扰、功耗小、体积小、重量轻、器件可替换性强等优点。光源输出的光信号带宽为40nm,在此宽带基础上可实现多个通道传感器的大规模复用
- 码分多址(CDMA,Code-DivisionMultipleAccess)通信系统中,用户传输信息所用的信号不是靠频率或时隙的不同来区分,而是用各自不同的编码序列来区分,或者说,靠信号的不同波形来区分。如果从频域或时域来观察,多个CDMA信号是互相重叠的。接收机用相关器可以在多个CDMA信号中选出其中使用预定码型的信号。其它使用不同码型的信号因为和接收机本地产生的码型不同而不能被解调。它们的存在类似于在信道中引入了噪声和干扰,通常称之为多址干扰。在CDMA蜂窝通信系统中,用户之间的信息传输是由基站进行转发和控制的。为了实现双工通信,正向传输和反向传输各使用一个频率,即通常所谓的频分双工。无论正向传输或反向传输,除去传输业务信息外,还必须传送相应的控制信息。为了传送不同的信息,需要设置相应的信道。但是,CDMA通信系统既不分频道又不分时隙,无论传送何种信息的信道都靠采用不同的码型来区分。 类似的信道属于逻辑信道,这些逻辑信道无论从频域或者时域来看都是相互重叠的,或者说它们均占用相同的频段和时间。目前,国际上最具代表性的3G技术标准有三种,分别是TD-SCDMA、WCDMA和CDMA2000。其中TD-SCDMA属于时分双工(TDD)模式,是由中国提出的3G技术标准;而 WCDMA和CDMA2000属于频分双工(FDD)模式。
- 空分多址: 指为多光束频率复用。它通过标记不同方位的相同频率的天线光束来进行频率的复用。SDMA系统可使系统容量成倍增加,使得系统在有限的频谱内可以支持更多的用户,从而成倍的提高频谱使用效率。
广域网的封装(一种封装多协议数据报的方法)
- HDLC(High-Level Data Link Control,高级数据链路控制),是一个在同步网上传输数据、面向比特的数据链路层协议。HDLC协议为厂商私有协议,各个厂商互不兼容。Cisco路由器上的默认WAN接口封装协议,是思科私有协议,如果同不同厂商的设备连接需要改成其他的封装协议进行通信。链路控制协议着重于对分段成物理块或包的数据的逻辑传输,块或包由起始标志引导并由终止标志结束,也称为帧。帧是每个控制、每个响应以及用协议传输的所有信息的媒体的工具。所有面向比特的数据链路控制协议均采用统一的帧格式,不论是数据还是单独的控制信息均以帧为单位传送。每个帧前后均有一标志码01111110,用作帧的起始、终止指示及帧的同步。标志码不允许在帧的内部出现,以免引起歧义。为保证标志码的唯一性但又兼顾帧内数据的透明性,可以采用“0比特插入法”来解决。该法在发送端监视除标志码以外的所有字段,当发现有连续5个“1”出现时,便在其后添插一个“0”,然后继续发后继的比特流。在接收端,同样监除起始标志码以外的所有字段。当连续发现5个“1”出现后,若其后一个比特“0”则自动删除它,以恢复原来的比特流;若发现连续6个“1”,则可能是插入的“0”发生差错变成的“1”,也可能是收到了帧的终止标志码。后两种情况,可以进一步通过帧中的帧检验序列来加以区分。“0比特插入法”原理简单,很适合于硬件实现。在面向比特的协议的帧格式中,有一个8比特的控制字段,可以用它以编码方式定义丰富的控制命令和应答,相当于起到了BSC协议中众多传输控制 字符和转义序列的功能。HDLC具有如下特点
1.HDLC是面向比特的数据链路控制协议的典型代表,该协议不依赖于任何一种字符编码集;
2.数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现;为实现透明传输,HDLC定义了一个特殊标志,这个标志是一个8位的比特序列,(01111110),用它来指明帧的开始和结束。同时,为保证标志的唯一性,在数据传送时,除标志位外,采取了0比特插入法,以区别标志符,即发送端监视比特流,每当发送了连续5个1时,就插入一个附加的0,接收站同样按此方法监视接收的比特流,当 发现连续5个1时而第六位为0时,即删除这位0。
3.全双工通信,有较高的数据链路传输效率;其工作方式可以支持半双工、全双工传送,支持点到点、多点结构,支持交换型、非交换型信道
4.所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高;HDLC帧格式包括地址域、控制域、信息域和帧校验序列
5.传输控制功能与处理功能分离,具有较大灵活性。
6.HDLC协议只支持点到点链路,不支持点到多点。不支持子接口
7.HDLC不支持IP地址协商,不支持认证。协议内部通过Keepalive报文来检测链路状态。
8.HDLC协议只能封装在同步链路上,如果是同异步串口的话,只有当同异步串口工作在同步模式下才可以应HDLC协议。
9.目前应用的接口为:工作在同步模式下的Serial接口和POS接口等。
HDLC的完整的帧由标志字段(F)、地址字段(A)、控制字段(C)、信息字段(I)、帧校验序列字段(FCS)等组成,HDLC中有信息帧(I帧)、监控帧(S帧)和无编号帧(U帧)三种不同类型的帧。控制字段中第1或第1、2位表示传送帧的类型,第1位为“0”表示是信息帧,第1、2位为“10”是监控帧,“11”是无编号帧。
- 信息帧(I帧)用于传送有效信息或数据,通常简称I帧。I帧以控制字第一位为“0”来标志。信息帧的控制字段中的N(S)用于存放发送帧序号,以使发送方不必等待确认而连续发送多帧。N(R)用于存放接收方下一个预期要接收的帧的序号,N(R)=5,即表示接收方下一帧要接收5号帧,换言之,5号帧前的各帧接收到。N(S)和N(R)均为3位二进制编码,可取值0~7。信息帧用于在链路上传送数据,并封装OSI体系的高层。
- 监控帧(S帧)用于差错控制和流量控制,通常简称S帧。S帧以控制字段第一、二位为“10”来标志。S帧不带信息字段,只有6个字节即48个比特。S帧的控制字段的第三、四位为S帧类型编码,共有四种不同编码,分别表示:
00——接收就绪(RR),由主站或从站发送。主站可以使用RR型S帧来轮询从站,即希望从站传输编号为N(R)的I帧,若存在这样的帧,便进行传输;从站也可用RR型S帧来作响应,表示从站希望从主站那里接收的下一个I帧的编号是N(R)。
01——拒绝(REJ),由主站或从站发送,用以要求发送方对从编号为N(R)开始的帧及其以后所有的帧进行重发,这也暗示N(R)以前的I帧已被正确接收。
10——接收未就绪(RNR),表示编号小于N(R)的I帧已被收到,但当前正处于忙状态,尚未准备好接收编号为N(R)的I帧,这可用来对链路流量进行控制。
11——选择拒绝(SREJ),它要求发送方发送编号为N(R)单个I帧,并暗示其它编号的I帧已全部确认。
可以看出,接收就绪RR型S帧和接收未就绪RNR型S帧有两个主要功能:首先,这两种类型的S帧用来表示从站已准备好或未准备好接收信息;其次,确认编号小于N(R)的所有接收到的I帧。拒绝REJ和选择拒绝SREJ型S帧,用于向对方站指出发生了差错。REJ帧用于GO-back-N策略,用以请求重发N(R)以前的帧已被确认,当收到一个N(S)等于REJ型S帧的N(R)的I帧后,REJ状态即可清除。SREJ帧用于选择重发策略,当收到一个N(S)等SREJ帧的N(R)的I帧时,SREJ状态即应消除。监控帧用于实现流量控制和差错恢复功能
- 无编号帧(U帧)因其控制字段中不包含编号N(S)和N(R)而得名,简称U帧。U帧用于提供对链路的建立、拆除以及多种控制功能,但是当要求提供不可靠的无连接服务时,它有时也可以承载数据。这些控制功能5个M位(M1、M2、M3、M4、M5,也称修正位)来定义。5个M位可以定义32种附加的命令功能或32种应答功能,但现在许多是空缺的。无编号帧用于提供链路的初始化和终止操作
- PPP协议是一种点对点串行通信协议。PPP具有处理错误检测、支持多个协议、允许在连接时刻协商IP地址、允许身份认证等功能,注意PPP不支持子接口。PPP提供了3类功能:成帧;链路控制协议LCP;网络控制协议NCP。PPP是面向字符类型的协议。是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。PPP为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet和 Novell的Internet网包交换(IPX)。众所周知网络是分层的,且对等层之间进行相互通信,而下层为上层提供服务。当对等层进行通信时首先需获知对方的地址,而对不同的网络,在数据链路层则表现为需要知道对方的MAC地址、X.121地址、ATM地址等;在网络层则表现为需要知道对方的IP地址、IPX地址等;而在传输层则需要知道对方的协议端口号。例如如果两个以太网上的主机希望能够通信的话,首先发送端需获知对端的MAC地址。但由于PPP协议是被运用在点对点的链路上的特殊性,它不像广播或多点访问的网络一样,因为点对点的链路就可以唯一标示对方,因此使用PPP协议互连的通信设备的两端无须知道对方的数据链路层地址,所以该字节已无任何意义,按照协议的规定将该字节填充为全1的广播地址。同地址域一样,PPP数据帧的控制域也没有实际意义,按照协议的规定通信双方将该字节的内容填充为0x03。PPP采用7EH作为一帧的开始和结束标志(F)用于区分每个帧;其中地址域(A)和控制域(C)取固定值(A=FFH,C=03H);协议域(两个字节)取0021H表示IP分组,取8021H表示网络控制数据,取C021H表示链路控制数据;帧校验域(FCS)也为两个字节,它用于对信息域的校验。若信息域中出现7EH,则转换为(7DH,5EH)两个字符。当信息域出现7DH时,则转换为(7DH,5DH)。当信息流中出现ASCII码的控制字符(即小于20H),即在该字符前加入一个7DH字符。
7E |
FF |
03 |
7E |
|||
标志 |
地址 |
控制 |
协议域 |
信息域 |
校验 |
标志 |
1B |
1B |
1B |
2B |
缺省1500B |
2B |
1B |
就PPP协议本身而言,我们最关心的内容应该是它的协议域和信息域。协议域可用来区分PPP数据帧中信息域所承载的数据报文的内容。协议域的内容必须依据ISO 3309的地址扩展机制所给出的规定。该机制规定协议域所填充的内容必须为奇数,也即是要求低字节的最低位为“1”,高字节的最低位为“0”。如果当发送端发送的PPP数据帧的协议域字段不符合上述规定,则接收端会认为此数据帧是不可识别的,那么接收端会向发送端发送一个Protocol-Reject报文,在该报文尾部将完整地填充被拒绝的报文。信息域缺省时最大长度不能超过1500字节,其中包括填充域的内容,1500字节大小等于PPP协议中配置参数选项MRU(MaximumReceive Unit)的缺省值,在实际应用当中可根据实际需要进行信息域最大封装长度选项的协商。信息域如果不足1500字节时可被填充,但不是必须的,如果填充则需通信双方的两端能辨认出有用与无用的信息方可正常通信。协议域和信息域是需要合在一起看的,目前主要用到的协议类型有LCP、NCP和普通的IP协议,而他们相对应的协议域字段则为0×C021、0×8021和0×0021。
- LCP是链路控制协议 是 PPP 中实际工作的部分。LCP 位于物理层的上方,支持同步和异步线路,也支持面向字节的和面向位的编码方式,可用于启动路线、测试线路、协商参数、以及关闭线路。
- NCP是网络控制协议 负责连接PPP(第二层)和网络协议 (第三层)。PPP允许多个网络协议共享一个链路,对于所使用的每个网络层协议,PPP 都分别使用独立的 NCP来连接。例如,IP 使用 IP 控制协议 (IPCP),IPX 使用 Novell IPX 控制协议 (IPXCP)。
- 成帧:他可以毫无歧义的分割出一帧的起始和结束。
PPP有两种认证方式一种是PAP,一种是CHAP。
1)PAP(PasswordAuthentication Protocol)验证为两次握手验证,密码为明文,PAP验证的过程如下:
- 被验证方发送用户名和密码到验证方;
- 验证方根据本端用户表查看是否有此用户以及密码是否正确,然后返回不同的响应(Acknowledgeor Not Acknowledge)。
- PAP不是一种安全的验证协议。当验证时,口令以明文方式在链路上发送,并且由于完成PPP链路建立后,被验证方会不停地在链路上反复发送用户名和口令,直到身份验证过程结束,所以不能防止攻击
2)CHAP单向验证是指一端作为验证方,另一端作为被验证方。双向验证是单向验证的简单叠加,即两端都是既作为验证方又作为被验证方。在实际应用中一般只采用单向验证。CHAP验证过程如下:
- 验证方主动发起验证请求,验证方向被验证方发送一些随机产生的报文(Challenge),并同时将本端的用户名附带上一起发送给被验证方;
- 被验证方接到验证方的验证请求后,检查本端接口上是否配置了缺省的CHAP密码,如果配置了则被验证方利用报文ID、该缺省密码和MD5算法对该随机报文进行加密,将生成的密文和自己的用户名发回验证方(Response);
- 如果被验证方检查发现本端接口上没有配置缺省的CHAP密码,则被验证方根据此报文中验证方的用户名在本端的用户表查找该用户对密码,如果在用户表找到了与验证方用户名相同的用户,便利用报文ID、此用户的密钥(密码)和MD5算法对该随机报文进行加密,将生成的密文和被验证方自己的用户名发回验证方(Response);
- 验证方用自己保存的被验证方密码和MD5算法对原随机报文加密,比较二者的密文,根据比较结果返回不同的响应
PPP运行过程如下:
- 在开始建立PPP链路时,先进入到Establish阶段。
- 在Establish阶段PPP链路进行LCP协商,协商内容包括工作方式(是Sigle PPP还是MultiLinkPPP)、验证方式和最大传输单元等。LCP协商成功后进入Opened状态,表示底层链路已经建立。
- 如果配置了验证(远端验证本地或者本地验证远端)则进入Authenticate阶段,开始CHAP或PAP验证。
- 如果验证失败进入Terminate阶段,拆除链路,LCP状态转为Down;如果验证成功就进入Network协商阶段(NCP),此时LCP状态仍为Opened,而IPCP状态从Initial转到Request。
- NCP协商支持IPCP协商,IPCP协商主要包括双方的IP地址。通过NCP协商来选择和配置一个网络层协议。只有相应的网络层协议协商成功后,该网络层协议才可以通过这条PPP链路发送报文。
- PPP链路将一直保持通信,直至有明确的LCP或NCP帧关闭这条链路,或发生了某些外部事件(例如用户的干预)。
PPP与其他的协议共同派生出了符合宽带接入要求的新的协议,如PPPoE(PPP overEthernet),PPPoA(PPP over ATM)。利用以太网(Ethernet)资源,在以太网上运行PPP来进行用户认证接入的方式称为PPPoE。PPPoE即保护了用户方的以太网资源,又完成了ADSL的接入要求,是目前ADSL接入方式中应用最广泛的技术标准;在ATM(异步传输模式,Asynchronous Transfer Mode)网络上运行PPP协议来管理用户认证的方式称为PPPoA。 PPPoE协议采用Client/Server方式,它将PPP报文封装在以太网帧之内,在以太网上提供点对点的连接。PPPoE有两个阶段:Discovery阶段和PPP Session阶段,具体如下:
- Discovery阶段 当一个主机想开始PPPoE进程的时候,它必须先识别接入端的以太网MAC地址,建立PPPoE的SESSION ID。这就是Discovery阶段的目的。
- PPP Session阶段 当PPPoE进入Session阶段后PPP报文就可以作为PPPoE帧的净荷封装在以太网帧发到对端,SESSION ID必须是Discovery阶段确定的ID,MAC地址必须是对端的MAC地址,PPP报文从Protocol ID开始。在Session阶段,主机或服务器任何一方都可发PADT(PPPoE Active Discovery Terminate)报文通知对方结束本Session
- 客户主机向对端发送一系列的 LCP 分组(封装成多个 PPP 帧)。这些分组及其响应选择一些 PPP 参数,和进行网络层配置(此前如有PAP或CHAP验证先要通过验证),
- 验证成功,NCP 给新接入的 客户主机机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。
- 通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。
广域网的接入方式
- DDN(数字数据网)即平时所说的专线上网方式,它是利用数字信道传输数据信号的数据传输网。数字数据网是一种利用光纤、数字微波或卫星等数字传输通道和数字交叉复用设备组成的数字数据传输网,它可以为用户提供各种速率的高质量数字专用电路和其他数字业务,以满足用户多媒体通信和组建中高速计算机通信网的需要。主要由六个部分组成:光纤或数字微波通信系统;智能节点或集线器设备;网络管理系统;数据电路终端设备;用户环路;用户端计算机或终端设备。)它的主要作用是向用户提供永久性和半永久性连接的数字数据传输信道,既可用于计算机之间的通信,也可用于传送数字化传真,数字话音,数字图像信号或其它数字化信号。永久性连接的数字数据传输信道是指用户间建立固定连接,传输速率不变的独占带宽电路。半永久性连接的数字数据传输信道对用户来说是非交换性的。但用户可提出申请,由网络管理人员对其提出的传输速率、传输数据的目的地和传输路由进行修改。DDN支持任何通信协议,使用何种协议由用户决定(如X.25或帧中继)。所谓半固定是指根据用户需要临时建立的一种固定连接。对用户来说,专线申请之后,连接就已完成,且连接信道的数据传输速率、路由及所用的网络协议等随时可根据需要申请改变。通过DDN节点的交叉连接,在网络内为用户提供一条固定的,由用户独自完全占有的数字电路物理通道。无论用户是否在传送数据,该通道始终为用户独享,除非网管删除此条用户电路。 这是一种电路交换方式。DDN可向用户提供2.4k、4.8k、9.6k、19.2k、N*64(N=1~31)及2048kbps速率的全透明的专用电路
- PSTN( Public Switched Telephone Network,公共电话交换网)是以电路交换技术为基础的用于传输模拟话音的网络。电话网概括起来主要由三个部分组成:本地回路、干线和交换机。其中干线和交换机一般采用数字传输和交换技术,而本地回路(也称用户环路)基本上采用模拟线路。P S T N就是采用本地回路是模拟的,因此当两台计算机想通过P S T N传输数据时,中间必须经双方M o d e m实现计算机数字信号与模拟信号的相互转换。P S T N是一种电路交换的网络,可看作是物理层的一个延伸,在P S T N内部并没有上层协议进行差错控制。在通信双方建立连接后电路交换方式独占一条信道,当通信双方无信息时,该信道也不能被其他用户所利用。用户可以使用普通拨号电话线或租用一条电话专线进行数据传输,使用P S T N实现计算机之间的数据通信是最廉价的,但由于P S T N线路的传输质量较差,而且带宽有限,再加上P S T N交换机没有存储功能,因此P S T N只能用于对通信质量要求不高的场合。目前通过P S T N进行数据通信的最高速率不超过5 6 K b p s。注意PSTN在上网时,电话是不可用嘎。
- ISDN(Integrated Services Digital Network:综合业务数字网)。又叫一线通。它有两种速率接入方式:BRI(Basic Rate Interface,基本速率接口),即2B+D;PRI(Primary Rate Interface,一次群速率接口),即30B+D。BRI接口包括两个能独立工作的B信道(64Kbps)和一个D信道(16Kbps),其中B信道一般用来传输话音、数据和图像,D信道用来传输信令或分组信息。PRI接口的B和D皆为64Kbps的数字信道。2B+D方式的用户设备通过NT1或NTI Plus设备实现联网;30B+D方式的用户设备则通过HDSL设备(利用市话双绞线)或光Modem及光端机(利用光纤)实现网络接入前者适用于个人用户和小型企业; ISDN 作为专用的全数字化网,它能以迅速、准确、高效的方式提供各种通信网络中现有的服务,不论信息是语音、文字,还是图形、图像都可以转换成数字信息进行传输。即使是如今时髦的多媒体会议电视,ISDN同样可以最大限度给以满足。由此可见,ISDN 的优点在于它可直接进行数字信号的交换和传输,具有完整的数字传输标准,并能根据需要分配其带宽。同时将通信技术和数据处理技术有机结合后,还可以延伸很多以前未曾涉及的新业务领域。ISDN 比现有的 PSTN 传输速度快很多,它能够真正实现 PSTN 的数字化。它能使未压缩的数字信息在全球范围内以 128kbps 的速率进行传输,而且通过现有的电话线路即可完成这一切工作。ISDN 与普通模拟 Modem 不同的是,数据联接可以实现真正瞬间完成。ISDN 采用“点对点”协议时,接入 Internet 快速简便,采用“多重链路”时可实现 128kbps 数据传输率。
- ADSL 非对称数字用户线(Asymmetric DigitalSubscriber Line),亦可称作非对称数字用户环路。ADSL是一种非对称的DSL技术,所谓非对称是指用户线的上行速率与下行速率不同,上行速率低,下行速率高,特别适合传输多媒体信息业务,如视频点播(VOD)、多媒体信息检索和其他交互式业务。它因为上行和下行带宽不对称,因此又被称为非对称数字用户线环路。ADSL采用频分复用技术把普通的电话线分成了电话、上行和下行三个相对独立的信道,从而避免了相互之间的干扰。即使边打电话边上网,也不会发生上网速率和通话质量下降的情况。通常ADSL可以提供最高1Mbps的上行速率和最高8Mbps的下行速率(也就是我们通常说的带宽),注意如果达到最高情况,此时线路已经无法提供正常的通话服务。最新的ADSL2+技术可以提供最高24Mbps的下行速率,ADSL2+打破了ADSL接入方式带宽限制的瓶颈,使其应用范围更加广阔。ADSL是一种异步传输模式(ATM)。在电信服务提供商端,需要将每条开通ADSL业务的电话线路连接在数字用户线路访问多路复用器(DSLAM)上。而在用户端,用户需要使用一个ADSL终端(因为和传统的调制解调器(Modem)类似,所以也被称为“猫”)来连接电话线路。由于ADSL使用高频信号,所以在两端还都要使用ADSL信号分离器将ADSL数据信号和普通音频电话信号分离出来,避免打电话的时候出现噪音干扰。通常的ADSL终端有一个电话Line-In,一个以太网口,有些终端集成了ADSL信号分离器,还提供一个连接的Phone接口。某些ADSL调制解调器使用USB接口与电脑相连,需要在电脑上安装指定的软件以添加虚拟网卡来进行通信。以 ITU-T G.992.1 标准为例,ADSL 在一对铜线上支持上行速率512Kbps~1Mbps,下行速率1Mbps~8Mbps,有效传输距离在3~5公里范围以内。传统的电话线系统使用的是铜线的低频部分(4kHz以下频段)。而ADSL采用DMT(离散多音频)技术,将原来电话线路4kHz到1.1MHz频段划分成256个频宽为4.3125khz的子频带。其中,4khz以下频段仍用于传送POTS(传统电话业务),20KhZ到138KhZ的频段用来传送上行信号,138KhZ到1.1MHZ的频段用来传送下行信号。DMT技术可以根据线路的情况调整在每个信道上所调制的比特数,以便充分地利用线路。一般来说,子信道的信噪比越大,在该信道上调制的比特数越多,如果某个子信道信噪比很差,则弃之不用。ADSL可达到上行640kbps、下行8Mbps的数据传输率。对于原先的电话信号而言,仍使用原先的频带,而基于ADSL的业务,使用的是话音以外的频带。所以,原先的电话业务不受任何影响,一条电话线可同时接听,拨打电话并进行数据传输,两者互不影响。虽然使用的还是原来的电话线,但adsl传输的数据并不通过电话交换机,所以adsl上网不需要缴付额外的电话费,节省了费用。adsl的数据传输速率是根据线路的情况自动调整的,它以“尽力而为”的方式进行数据传输(IP分组交换)。ADSL通常提供三种网络登录方式:桥接是直接提供静态IP;PPPoA(PPPoverATM,基于ATM的端对端协议,动态地给用户分配网络地址);PPPoE(PPPoverEthernet,基于以太网的端对端协议,动态地给用户分配网络地址)。另注DSL(数字用户线路,DigitalSubscriberLine)是以铜质电话线为传输介质的传输技术组合,它包括HDSL、SDSL、VDSL、 ADSL和RADSL等,一般称之为xDSL。它们主要的区别就是体现在信号传输速度和距离的不同以及上行速率和下行速率对称性的不同这两个方面。HDSL与SDSL支持对称的T1/E1(1.544Mbps/2.048Mbps)传输。其中HDSL的有效传输距离为3-4公里,且需要两至四对铜质双绞电话线;SDSL最大有效传输距离为3公里,只需一对铜线,对称DSL更适用于企业点对点连接应用,如文件传输、视频会议等收发数据量大致相应的工作;VDSL、ADSL和RADSL属于非对称式传输。其中VDSL技术是xDSL技术中最快的一种,在一对铜质双绞电话线上,下行数据的速率为13到 52Mbps,上行数据的速率为1.5到2.3Mbps,但是VDSL的传输距离只在几百米以内,VDSL可以成为光纤到家庭,RADSL能够提供的速度范围与ADSL基本相同,但它可以根据双绞铜线质量的优劣和传输距离的远近动态地调整用户的访问速度。正是RADSL的这些特点使RADSL成为用于网上高速冲浪、视频点播(IAV)、远程局域网络(LAN)访问的理想技术
- 帧中继( FrameRelay)是帧中继是一种封包交换通信网络,帧中继是面向连接的服务,是业界标准的纯数据链路层协议,它在所连接的设备之间采用HDLC封装,任何高层协议都独立于帧中继协议,因此,大大地简化了帧中继的实现。帧中继的主要应用之一是局域网互联,特别是在局域网通过广域网进行互联时,使用帧中继更能体现它的低网络时延、低设备费用、高带宽利用率等优点。帧中继是一种先进的广域网技术,实质上也是分组通信的一种形式,只不过它将X.25分组网中分组交换机之间的恢复差错、防止阻塞的处理过程进行了简化。帧中继在数据链路层采用统计复用方式,采用虚电路机制为每一个帧提供地址信息。通过不同编号的DLCI(DataLineConnection Identifier数据链路连接识别符)建立逻辑电路。一般来讲,同一条物理链路层可以承载多条逻辑虚电路,而且网络可以根据实际流量动态调配虚电路的可用带宽,帧中继的每一个帧沿着各自的虚电路在网络内传送。帧中继中有两种链路,永久性虚链路PVC(Permanent VC)和交换式虚链路SVC(Switch VC);帧中继在运行前必须构建好虚链路,永久虚电路(PVC)是通过帧中继网连接两个端节点的预先确定的通路。帧中继服务的提供者根据客户的要求,在两个指定的节点间分配PVC。这些信道保持连续不间断地运行,并且保证提供一种客户洽商好了的指定级别的服务。帧中继的接口有用户网路接口UNI(User-Network Interface)和NNI(Network-NetworkInterface)两大类,UNI又分成DCE(数据通信设备。它在DTE和传输线路之间提供信号变换和编码功能,并负责建立、保持和释放链路的连接,如Modem。在思科路由器上作为DCE端的接口需要提供时钟,才能使两端协议协商成功。使用showcontroller 命令可以查看接口是否属于DCE)和DTE(帧中继的客户端永远是DTE端);PVC两端的接口还应配置DLCI(Data-Link Connection Identifier)号用于FR的寻路。帧中继的带宽控制技术既是帧中继技术的特点,更是帧中继技术的优点。帧中继的带宽控制通过CIR(承诺的信息速率)、Bc(承诺的突发大小)和Be(超过的突发大小)3个参数设定完成。Tc(承诺时间间隔)和EIR(超过的信息速率)与此3个参数的关系是:Tc=Bc/CIR;EIR=Be/Tc。在传统的数据通信业务中,用户申请了一条64K的电路,那么他只能以64kbit/s的速率来传送数据;而在帧中继技术中,用户向帧中继业务运营商申请的是承诺的信息速率(CIR),而实际使用过程中用户可以以高于CIR的速率发送数据,却不必承担额外的费用。每个帧中继用户将得到一个接到帧中继节点的专线。特点:
1. 使用光纤作为传输介质,因此误码率极低,能实现近似无差错传输,减少了进行差错校验的开销,提高了网络的吞吐量,它的数据传输速率和传输时延比X.25网络要分别高或低至少一个数量级。
2. 因为采用了基于变长帧的异步多路复用技术,帧中继主要用于数据传输,而不适合语音、视频或其他对时延时间敏感的信息传输。
3. 仅提供面向连接的虚电路服务。
4. 仅能检测到传输错误,而不试图纠正错误,而只是简单地将错误帧丢弃。
5. 帧长度可变,允许最大帧长度在1600B以上。
6. 帧中继是一种宽带分组交换,使用复用技术时,其传输速率可高达44.6Mbps。
7.DLCI(data link connect identifier)数据链路连接标识符,作用:在帧中继网络中的二层封装地址,如同以太网中的MAC地址一样
8. LMI(link manage interface)链路管理接口,作用:学习PVC,如有多少条PVC,并将DLCI与接口相关联
9. InverseARP 反向ARP,学习PVC对端的IP地址,建立DLCI和IP映射关系
- 无线传输:一般被应用在使用电磁波的摇控资讯传输系统,像是无线电波作为载波和实体层的网路。典型的有GSM和GPRS,3G技术等
- 实验一、HDLC封装
-
R1配置:
R1#conf t
R1(config-if)#exit
R1(config)#ints1/0
R1(config-if)#ipadd 192.168.12.1 255.255.255.0
R1(config-if)#encapsulationhdlc //设置接口封装模式为HDLC,其实Cisco路由器串口默认就是HDLC封装可以不打此命令
R1(config-if)#nosh
R1(config-if)#exit
R2配置:
R2#conf t
R2(config)#ints1/0
R2(config-if)#ipadd 192.168.12.2 255.255.255.0
R2(config-if)#enc
R2(config-if)#encapsulationhdlc
R2(config-if)#nosh
R2(config-if)#exit
检查:
R1#sh interfacess1/0
Serial1/0 is up,line protocol is up
Hardware is M4T
Internet address is 192.168.12.1/24
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload1/255
Encapsulation HDLC, crc 16, loopbacknot set
Keepalive set (10 sec)
Restart-Delay is 0 secs
CRC checking enabled
Last input 00:00:08, output 00:00:08, outputhang never
Last clearing of "show interface"counters never
Input queue: 0/75/0/0(size/max/drops/flushes); Total output drops: 0
Queueing strategy: weighted fair
Output queue: 0/1000/64/0 (size/maxtotal/threshold/drops)
Conversations 0/1/256 (active/max active/max total)
Reserved Conversations 0/0 (allocated/maxallocated)
Available Bandwidth 1158 kilobits/sec
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0packets/sec
37 packets input, 2974 bytes, 0 no buffer
Received 37 broadcasts, 0 runts, 0 giants,0 throttles
0 input errors, 0 CRC, 0 frame, 0 overrun,0 ignored, 0 abort
48 packets output, 4122 bytes, 0 underruns
0 output errors, 0 collisions, 2 interfaceresets
0 output buffer failures, 0 output buffersswapped out
3 carrier transitions DCD=up DSR=up DTR=up RTS=up CTS=up
帧格式定义
帧头(0x7E) |
地址 |
控制 |
协议 |
数据 |
校验 |
帧尾(0x7E) |
帧头字段:0x7E ,标志字段启动
地址字段:标准HDLC可用于点到点连接和点到多点连接。它是一个标准的广播地址(0xFFFF),用于点到点连接时,该字段为空用于用户信道设备的识别
控制字段:控制字段有三种格式,这取决于HDLC帧的类型。HDLC帧的类型包括信息帧、管理帧和无编号帧。
协议字段:该字段仅限于Cisco HDLC,用于指定帧中封装的协议类型(如0x0800表示IP协议)。
数据字段:(由信道误码率和丢帧率确定)长度<1020,这是一个变长字段,包含第3层分组
帧校验序列(FCS):FCS位于帧尾标志字段前,通常是循环冗余校验(CRC)计算结果。在接收端将重新计算CRC,如果结果与帧中的值不同,将认为发生了错误
帧尾字段:0x7E ,标志字段结束
HDCL是点到点串行线路上(同点电路)的帧封装格式,其帧格式和以太网帧格式有很大的差别,HDLC帧没有源MAC地址和目的MAC地址。Cisco公司对HDLC进行了专有化,Cisco的HDLC封装和标准的HDLC不兼容。如果链路的两端都是Cisco设备,使用HDLC封装没有问题,但如果Cisco设备与非Cisco设备进行连接,应使用PPP协议。HDLC不能提供验证,缺少了对链路的安全保护。
实验二、PPP封装
R1配置:
R1#conf t
R1(config)#ints1/0
R1(config-if)#en
R1(config-if)#encapsulationppp //设置接口封装模式为PPP
R1(config-if)#ipadd 192.168.12.1 255.255.255.0
R1(config-if)#nosh
R1(config-if)#exit
R2配置:
R2#conf t
R2(config)#ints1/0
R2(config-if)#enc
R2(config-if)#encapsulationppp
R2(config-if)#ipadd 192.168.12.2 255.255.255.0
R2(config-if)#nosh
R2(config-if)#exit
检查测试:
R1#sh interfacess1/0
Serial1/0 is up,line protocol is up
Hardware is M4T
Internet address is 192.168.12.1/24
MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload1/255
Encapsulation PPP, LCP Open
Open: IPCP, CDPCP, crc 16, loopback not set
Keepalive set (10 sec)
Restart-Delay is 0 secs
CRC checking enabled
Last input 00:00:18, output 00:00:03, outputhang never
Last clearing of "show interface"counters 00:17:51
Input queue: 0/75/0/0(size/max/drops/flushes); Total output drops: 0
Queueing strategy: weighted fair
Output queue: 0/1000/64/0 (size/maxtotal/threshold/drops)
Conversations 0/2/256 (active/max active/max total
Reserved Conversations 0/0 (allocated/maxallocated
Available Bandwidth 1158 kilobits/sec
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0packets/sec
272 packets input, 11567 bytes, 0 nobuffer
Received 0 broadcasts, 0 runts, 0 giants,0 throttles
0 input errors, 0 CRC, 0 frame, 0 overrun,0 ignored, 0 abor
293 packets output, 11801 bytes, 0underrun
0 output errors, 0 collisions, 2 interfaceresets
0 output buffer failures, 0 output buffersswapped out
2 carrier transitions DCD=up DSR=up DTR=up RTS=up CTS=up
帧格式定义
帧头(0x7E) |
地址 |
控制 |
协议 |
数据 |
校验 |
帧尾(0x7E) |
帧头字段:0x7E ,标志字段启动
地址字段: 它总是被设置成二进制值:11111111,它是一个标准的广播地址,以表示所有的站都可以接受该帧。(注意:PPP通信不分配个人站地址)
控制字段:默认为二进制值:00000011,表示这是一个无序号帧。也就是说,在默认情况下,PPP协议并没有采用序列号和确认应答来实现可靠传输。在有噪声的环境下(如无线网络中),可以利用编号模式来实现可靠传输。
协议字段:识别帧中Information字段封装的协议。已定义的协议代码包括:LCP、NCP、IP、IPX、AppleTalk等。以0位作为开始的协议是网络层协议,如IP、IPX、XNS等;以1位作产开始的协议被用于协商其他的协议,如LCP、NCP。协议的默认大小为2字节,但是通过LCP可以将它协商为1个字节。
信息字段(又称“净荷域”):可以是任意长度,包含Protocol字段中指定的协议数据报。如果在线路建立过程中没有通过LCP协商该长度,则使用默认长度1500字节。如果有需要的话,在该字段之后可以加上一些填充字节
帧校验序列(FCS)字段 :通常为16位(2个字节长),也可以为4个字节。PPP的执行可以通过预先协议采用32位FCS来提高差错检测效果
帧头字段:0x7E ,标志字段结束
实验三、PPP的PAP单向认证
R1配置:
R1#conf t
R1(config)#ints1/0
R1(config-if)#encapsulationppp //设置接口封装模式为PPP
R1(config-if)#ipadd 192.168.12.1 255.255.255.0
R1(config-if)#ppppap sent-username user1 password 123456//使用pap方式发送认证的用户名、密码
R1(config-if)#nosh
R1(config-if)#exit
R2配置:
R2#conf t
R2(config)#usernameuser1 password 123456 //配置被验证方用户名、密码
R2(config)#ints1/0
R2(config-if)#encapsulationppp //设置接口封装模式为PPP
R2(config-if)#pppauthentication pap //设置ppp使用pap认证
R2(config-if)#ipadd 192.168.12.2 255.255.255.0
R2(config-if)#nosh
R2(config-if)#exit
检查测试:
R2#debug pppauthentication
PPPauthentication debugging is on
*Mar 1 00:18:40.779: Se1/0 PPP: Authorizationrequired
*Mar 1 00:18:40.831: Se1/0 PAP: I AUTH-REQ id 3len 17 from "user1"
*Mar 1 00:18:40.831: Se1/0 PAP: Authenticatingpeer user1
*Mar 1 00:18:40.839: Se1/0 PPP: Sent PAP LOGINRequest
*Mar 1 00:18:40.847: Se1/0 PPP: Received LOGINResponse PASS
*Mar 1 00:18:40.851: Se1/0 PPP: Sent LCP AUTHORRequest
*Mar 1 00:18:40.855: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:18:40.859: Se1/0 LCP: Received AAAAUTHOR Response PASS
*Mar 1 00:18:40.863: Se1/0 IPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:18:40.863: Se1/0 PAP: O AUTH-ACK id 3 len5
*Mar 1 00:18:40.871: Se1/0 PPP: Sent CDPCP AUTHORRequest
*Mar 1 00:18:40.879: Se1/0 CDPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:18:40.887: Se1/0 PPP: Sent IPCP AUTHORRequest
1、验证由客户端发起,它向服务端发送用户名和密码;
2、服务端查询自己的数据库,如果有匹配的用户名和密码,则验证通过,发送接受消息,否则拒绝连接
密码口令以明文发送,安全性较低
实验四、PPP的PAP双向认证
R1配置:
R1#conf t
R1(config)#usernameuser2 password abcdef //创建被验证方用户名、密码
R1(config)#ints1/0
R1(config-if)#encapsulationppp //设置接口封装模式为PPP
R1(config-if)#pppauthentication pap //设置ppp使用pap认证模式
R1(config-if)#ppppap sent-username user1 password 123456//使用pap方式发送认证的自己的用户名和密码
R1(config-if)#ipadd 192.168.12.1 255.255.255.0
R1(config-if)#nosh
R1(config-if)#exit
R2配置:
R2#conf t
R2(config)#usernameuser1 password 123456 //创建被验证方用户名、密码
R2(config)#ints1/0
R2(config-if)#encapsulationppp //设置接口封装模式为PPP
R2(config-if)#pppauthentication pap //设置ppp使用pap认证模式
R2(config-if)#ppppap sent-username user2 password abcdef //使用pap方式发送认证的自己的用户名和密码
R2(config-if)#ipadd 192.168.12.2 255.255.255.0
R2(config-if)#nosh
R2(config-if)#exit
检查测试:
R1#debug ppp authentication
PPP authentication debuggingis on
*Mar 1 00:39:04.179: Se1/0 PPP: Authorizationrequired
*Mar 1 00:39:04.191: Se1/0 PAP: Using hostnamefrom interface PAP
*Mar 1 00:39:04.195: Se1/0 PAP: Using passwordfrom interface PAP
*Mar 1 00:39:04.195: Se1/0 PAP: O AUTH-REQ id 5len 17 from "user1"
*Mar 1 00:39:04.195: Se1/0 PAP: I AUTH-REQ id 2len 17 from "user2"
*Mar 1 00:39:04.199: Se1/0 PAP: Authenticatingpeer user2
*Mar 1 00:39:04.203: Se1/0 PPP: Sent PAP LOGINRequest
*Mar 1 00:39:04.207: Se1/0 PPP: Received LOGINResponse PASS
*Mar 1 00:39:04.215: Se1/0 PPP: Sent LCP AUTHORRequest
*Mar 1 00:39:04.215: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:39:04.227: Se1/0 LCP: Received AAA AUTHORResponse PASS
*Mar 1 00:39:04.227: Se1/0 IPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:39:04.231: Se1/0 PAP: O AUTH-ACK id 2len 5
*Mar 1 00:39:04.283: Se1/0 PAP: I AUTH-ACK id 5len 5
*Mar 1 00:39:04.287: Se1/0 PPP: Sent CDPCP AUTHORRequest
*Mar 1 00:39:04.291: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:39:04.303: Se1/0 CDPCP: Received AAAAUTHOR Response PASS
R2#debug ppp authentication
PPP authentication debuggingis on
*Mar 1 00:29:54.299: Se1/0 PAP: Using hostnamefrom interface PAP
*Mar 1 00:29:54.303: Se1/0 PAP: Using passwordfrom interface PAP
*Mar 1 00:29:54.303: Se1/0 PAP: O AUTH-REQ id 1len 17 from "user2"
*Mar 1 00:29:54.335: Se1/0 PAP: I AUTH-REQ id 4len 17 from "user1"
*Mar 1 00:29:54.335: Se1/0 PAP: Authenticatingpeer user1
*Mar 1 00:29:54.339: Se1/0 PPP: Sent PAP LOGINRequest
*Mar 1 00:29:54.343: Se1/0 PPP: Received LOGINResponse PASS
*Mar 1 00:29:54.351: Se1/0 PPP: Sent LCP AUTHORRequest
*Mar 1 00:29:54.351: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:29:54.359: Se1/0 LCP: Received AAAAUTHOR Response PASS
*Mar 1 00:29:54.363: Se1/0 IPCP: Received AAAAUTHOR Response PAS
*Mar 1 00:29:54.363: Se1/0 PAP: O AUTH-ACK id 4len 5
*Mar 1 00:29:54.371: Se1/0 PAP: I AUTH-ACK id 1len 5
*Mar 1 00:29:54.379: Se1/0 PPP: Sent CDPCP AUTHORRequest
*Mar 1 00:29:54.383: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:29:54.391: Se1/0 CDPCP: Received AAAAUTHOR Response PASS
实验五、PPP的chap单向认证
R1配置:
R1#conf t
R1(config)#int s1/0
R1(config-if)#encapsulationppp //设置封装模式为ppp
R1(config-if)#ppp chaphostname user1 //设置发送chap认证时的用户名
R1(config-if)#ppp chappassword 123456 //设置发送chap认证时的密码
R1(config-if)#ip add192.168.12.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#
R2配置:
R2#conf t
R2(config)#int s1/0
R2(config-if)#enc
R2(config-if)#encapsulationppp//设置封装方式为ppp
R2(config-if)#pppauthentication chap//设置ppp的验证方式为chap
R2(config-if)#ip add192.168.12.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#username user1password 123456 //创建被认证的用户和密码
检查测试:
R2(config)#do debug pppauthentication
PPP authentication debuggingis on
*Mar 1 00:06:22.743: Se1/0 PPP: Authorizationrequired
*Mar 1 00:06:22.755: Se1/0 CHAP: O CHALLENGE id 13len 23 from "R2"
*Mar 1 00:06:22.951: Se1/0 CHAP: I RESPONSE id 13len 26 from "user1"
*Mar 1 00:06:22.955: Se1/0 PPP: Sent CHAP LOGINRequest
*Mar 1 00:06:22.963: Se1/0 PPP: Received LOGINResponse PASS
*Mar 1 00:06:22.967: Se1/0 PPP: Sent LCP AUTHORRequest
*Mar 1 00:06:22.971: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:06:22.975: Se1/0 LCP: Received AAAAUTHOR Response PASS
*Mar 1 00:06:22.979: Se1/0 IPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:06:22.983: Se1/0 CHAP: O SUCCESS id 13len 4
*Mar 1 00:06:22.987: Se1/0 PPP: Sent CDPCP AUTHOR Request
R2(config)#do debug pppauthentica
*Mar 1 00:06:22.999: Se1/0 CDPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:06:23.003: Se1/0 PPP: Sent IPCP AUTHORRequest
CHAP验证为三次握手验证,验证过程如下:
1、Challenge:被验证方主动发起验证请求,主验证方向被验证方发送一个随机产生的hash数值,并同时将本端的用户名发送给被验证方。
2、Response:被验证方接收到主验证方的验证请求后,检查本地密码。如果本端接口上配置了默认的CHAP密码,则被验证方选用此密码;如果没有配置默认的CHAP密码,则被验证方根据主验证方的用户名在本端的用户表中查找该用户对应密码,并选用找到的密码。随后,被验证方利用MD5算法对报文ID,密码和随机数生成一个摘要,并将此摘要和自己的用户名发回给主验证方。
3、Acknowledge orAcknowledge:主验证方用MD5算法对报文ID、本地保存的被验证方密码和原随机数生成一个摘要,并与收到的摘要值进行比较。如果相同则向被验证方发送Acknowledge消息声明验证通过;如果不同则不通过,向被验证方发送NotAcknowledge。
实验六、PPP的chap双向认证
R1配置:
R1#conf t
R1(config)#username user2password 123456
R1(config)#int s1/0
R1(config-if)#encapsulationppp
R1(config-if)#ppp authentication chap
R1(config-if)#ppp chaphostname user1
R1(config-if)#ppp chappassword 123456
R1(config-if)#ip add192.168.12.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#
R2配置:
R2#conf t
R2(config)#int s1/0
R2(config-if)#encapsulationppp
R2(config-if)#pppauthentication chap
R2(config-if)#ppp chaphostname user2
R2(config-if)#ppp chappassword 123456
R2(config-if)#ip add192.168.12.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#username user1 password123456
检查配置:
R2(config)#do debug pppauthentication
*Mar 1 00:18:20.391: Se1/0 PPP: Authorizationrequired
*Mar 1 00:18:20.455: Se1/0 CHAP: O CHALLENGE id 55len 26 from "user2"
*Mar 1 00:18:20.459: Se1/0 CHAP: I CHALLENGE id 42len 26 from "user1"
*Mar 1 00:18:20.467: Se1/0 CHAP: I RESPONSE id 55len 26 from "user1"
*Mar 1 00:18:20.471: Se1/0 CHAP: Using hostnamefrom interface CHAP
*Mar 1 00:18:20.471: Se1/0 CHAP: Using passwordfrom AAA
*Mar 1 00:18:20.475: Se1/0 CHAP: O RESPONSE id 42len 26 from "user2"
*Mar 1 00:18:20.479: Se1/0 PPP: Sent CHAP LOGINRequest
*Mar 1 00:18:20.487: Se1/0 PPP: Received LOGINResponse PASS
*Mar 1 00:18:20.491: Se1/0 PPP: Sent LCP AUTHORRequest
*Mar 1 00:18:20.495: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:18:20.499: Se1/0 LCP: Received AAAAUTHOR Response PASS
*Mar 1 00:18:20.503: Se1/0 IPCP: Received AAAAUTHOR Response PASS
*Mar 1 00:18:20.503: Se1/0 CHAP: O SUCCESS id 55len 4
*Mar 1 00:18:20.651: Se1/0 CHAP: I SUCCESS id 42len 4
*Mar 1 00:18:20.655: Se1/0 PPP: Sent CDPCP AUTHORRequest
*Mar 1 00:18:20.659: Se1/0 PPP: Sent IPCP AUTHORRequest
*Mar 1 00:18:20.667: Se1/0 CDPCP: Received AAAAUTHOR Response PASS
注意:双向认证时两端使用的用户名可以不同但是密码必须相同。
实验七、PPP overethernet(PPPoE)模拟ADSL拨号上网
PC1配置:
Router#conf t
Router(config)#hostname PC1
PC1(config)#int fa0/0
PC1(config-if)#ip address dhcp
PC1(config-if)#no sh
Internet配置:
Internet#conf t
Internet(config)#int fa0/0
Internet(config-if)#ip add 202.100.100.1 255.255.255.0
Internet(config-if)#no sh
Internet(config-if)#exit
Internet(config)#router ospf 1
Internet(config-router)#net 0.0.0.0 255.255.255.255 area 0
Internet(config-router)#exit
ISP配置:
ISP#conf t
ISP(config)#int fa0/0
ISP(config-if)#ip add 202.100.100.100 255.255.255.0
ISP(config-if)#no sh
ISP(config-if)#exit
ISP(config)#username user1 password adsl123456 //创建拨号认证的账户
ISP(config)#int virtual-template 1 //创建虚拟拨号模板接口
ISP(config-if)#mtu 1492 //修改虚拟接口的MTU,因为增加了8 byte的PPPoe与ppp封装,而以太网IP封装不能超过1500byte
ISP(config-if)#ppp authentication chap //此虚拟拨号接口使用PPP的chap认证,客户端必须发用户名跟密码
ISP(config-if)#ip address 80.80.80.1 255.255.255.0 //配置此虚拟接口的IP地址
ISP(config-if)#ppp ipcp dns 8.8.8.8 4.4.4.4//拨号用户认证成功后获得的域名服务器地址
ISP(config-if)#peer default ip address pool ADSL-POOL //拨号用户chap认证成功后可以获得的地址池地址
ISP(config-if)#no sh//开启接口
ISP(config-if)#exit
ISP(config)#bba-group pppoe ADSL //建立全局bba组
ISP(config-bba-group)#virtual-template 1 //将前面创建的虚拟拨号模板放到bba组中
ISP(config-bba-group)#sessions per-mac limit 1 //设置此拨号组中的每个mac地址的pppoe会话数限制为1
ISP(config-bba-group)#exit
ISP(config)#int fa0/1
ISP(config-if)#pppoe enable group ADSL//将物理接口关联到bba组ADSL,并使能PPPOE
ISP(config-if)#no sh //开启接口
ISP(config-if)#exit
ISP(config)#router ospf 1
ISP(config-router)#net 0.0.0.0 255.255.255.255 area 0
ISP(config-router)#passive-interface fa0/1
ISP(config-router)#exit
R1配置:
Router>en
Router#conf t
Router(config)#hostname R1
R1(config)#ip dhcp pool LAN-POOL //创建为内部用户分配的DHCP地址池
R1(dhcp-config)#network 192.168.1.0 //设置地址池分配的网络地址
R1(dhcp-config)#dns-server 8.8.8.8 4.4.4.4//设置地址池分配的DNS服务器地址
R1(dhcp-config)#default-router 192.168.1.1//设置地址池分配的默认网关
R1(dhcp-config)#lease 7//设置地址池租约期限为7天
R1(dhcp-config)#exit
R1(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.99//设置 DHCP地址池不分配的IP段
R1(config)#ip dhcp excluded-address 192.168.1.201 192.168.1.254//设置 DHCP地址池不分配的IP段
R1(config)#int fa0/0
R1(config-if)#ip add 192.168.1.1 255.255.255.0
R1(config-if)#ip nat inside //接口开启内部NAT
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int Dialer 1 //创建拨号虚拟接口 1
R1(config-if)#mtu 1492 //修改虚拟接口的MTU,因为增加了8 byte的PPPoe与ppp封装,而以太网IP封装不能超过1500byte
R1(config-if)#ip address negotiated//此接口IP地址根据协商获得,即有ISP分配
R1(config-if)#encapsulation ppp //设置此接口为PPP封装
R1(config-if)#ppp authentication chap callin//路由器R1先发起呼叫到路由器ISP,ISP路由器收到呼叫会挑战路由器R1,但路由器R1不会挑战路由器ISP。实质就是单向认证。此命令可以不打
R1(config-if)#ppp chap host user1 //设置chap认证使用的用户名
R1(config-if)#ppp chap password adsl123456 //设置chap认证使用的密码
R1(config-if)#ppp ipcp dns request accept //当IPCP协商完全成功时,请求并接受ISP端发过来的DNS服务器地址
R1(config-if)#ppp ipcp route default//当IPCP协商完全成功时,增加一个预设路由路径到系统的路由表,将对端当作默认路由使用。这个路由条目在ppp连线中断后会移除。
R1(config-if)#ip nat outside//此接口开启外部 NAT
R1(config-if)#dialer pool 1 //将此接口加入拨号池1
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int fa0/1
R1(config-if)#pppoe enable group global //物理接口使能PPPoe,关联bba全局组
R1(config-if)#pppoe-client dial-pool-number 1//将物理接口关联拨号池1
R1(config-if)#no sh //开启接口
R1(config-if)#exit
R1(config)#access-list 1 permit 192.168.1.0 0.0.0.255//标记可以NAT的网段
R1(config)#ip nat inside source list 1 interface dialer 1 overload//设置端口复用NAT
检查测试:
ISP#debug ppp authentication
*Mar 1 00:13:38.823: ppp3 PPP:Using vpn set call direction
*Mar 1 00:13:38.827: ppp3 PPP:Treating connection as a callin
*Mar 1 00:13:38.827: ppp3 PPP:Session handle[22000005] Session id[3]
*Mar 1 00:13:39.023: ppp3 PPP:Authorization required
*Mar 1 00:13:39.087: ppp3 CHAP: OCHALLENGE id 1 len 24 from "ISP"
*Mar 1 00:13:39.147: ppp3 CHAP: IRESPONSE id 1 len 26 from "user1"
*Mar 1 00:13:39.159: ppp3 PPP:Sent CHAP LOGIN Request
*Mar 1 00:13:39.167: ppp3 PPP:Received LOGIN Response PASS
*Mar 1 00:13:39.263: Vi1.1 PPP:Sent LCP AUTHOR Request
*Mar 1 00:13:39.267: Vi1.1 PPP:Sent IPCP AUTHOR Requestl
*Mar 1 00:13:39.283: Vi1.1 LCP:Received AAA AUTHOR Response PASS
*Mar 1 00:13:39.287: Vi1.1 IPCP:Received AAA AUTHOR Response PASS
*Mar 1 00:13:39.291: Vi1.1 CHAP:O SUCCESS id 1 len 4
R1#sh ip int brief
Interface IP-Address OK? MethodStatus Protocol
FastEthernet0/0 192.168.1.1 YES manual up up
FastEthernet0/1 unassigned YES unset up up
NVI0 192.168.1.1 YES unset up up
Virtual-Access1 unassigned YES unset up up
Virtual-Access2 unassigned YES unset up up
Dialer1 80.80.80.101 YES IPCP up up
R1#sh ip name-server
8.8.8.8
4.4.4.4
R1#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRPexternal, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA externaltype 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1,E2 - OSPF external type 2
i - IS-IS, su - IS-ISsummary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * -candidate default, U - per-user static route
o - ODR, P - periodicdownloaded static route
Gateway of last resort is 80.80.80.1 to network 0.0.0.0
80.0.0.0/32 is subnetted, 2subnets
C 80.80.80.101 is directlyconnected, Dialer1
C 80.80.80.1 is directlyconnected, Dialer1
C 192.168.1.0/24 is directlyconnected, FastEthernet0/0
S* 0.0.0.0/0 [1/0] via 80.80.80.1
PC1#ping 202.100.100.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 202.100.100.100, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 28/60/96 ms
R1#debug ip nat
IP NAT debugging is on
*Mar 1 00:36:46.379: NAT*: s=192.168.1.100->80.80.80.101,d=202.100.100.100 [5]
*Mar 1 00:36:46.455: NAT*:s=202.100.100.100, d=80.80.80.101->192.168.1.100 [5]
*Mar 1 00:36:46.507: NAT*:s=192.168.1.100->80.80.80.101, d=202.100.100.100 [6]
*Mar 1 00:36:46.523: NAT*:s=202.100.100.100, d=80.80.80.101->192.168.1.100 [6
PPPOE发现阶段的帧
帧头 |
Pppoe Discovery |
数据 |
FCS |
帧尾 |
PPPOE会话阶段的帧
帧头 |
pppoe session (6byte) |
ppp协议 (2byte) |
数据 |
FCS |
帧伪 |
PPPoE(Point-to-PointProtocol over Ethernet),以太网上的点对点协议,是将点对点协议(PPP)封装在以太网(Ethernet)框架中的一种网络隧道协议。由于协议中集成了PPP协议,所以实现了传统以太网不能提供的身份验证、加密以及压缩等功能,也可用于缆线调制解调器(cable modem)和数字用户线路(DSL)等以以太网协议向用户提供接入服务的协议体系。这种有登陆和口令的标准连接,方便了接入供应商的记费。并且,连接的另一端仅当PPPoE连接接通时才分配IP地址,所以允许IP地址的动态复用。本质上,它是一个允许在以太广播域中的两个以太网接口间创建点对点隧道的协议。PPPoE分为两个阶段:
- PPPoE发现阶段:由于传统的PPP连接是创建在串行链路或拨号时创建的ATM虚电路连接上的,所有的PPP帧都可以确保通过电缆到达对端。但是以太网是多路访问的,每一个节点都可以相互访问。以太帧包含目的节点的物理地址(MAC地址),这使得该帧可以到达预期的目的节点。 因此,为了在以太网上创建连接而交换PPP控制报文之前,两个端点都必须知道对端的MAC地址,这样才可以在控制报文中携带MAC地址。PPPoE发现阶段做的就是这件事。除此之外,在此阶段还将创建一个会话ID,以供后面交换报文使用。发现过程包含四个步骤
- 客户端到服务器:PADI为PPPoE ActiveDiscovery Initiation。如果一个用户想要使用DSL拨号连入Internet,那么他的计算机必须首先在其ISP的网络服务提供点(POP)找到DSL访问集中器(DSL-AC)。在以太网上通讯只能通过MAC地址。由于计算机不知道DSL-AC的MAC地址,于是就在以太网上广播一个PADI报文。这个报文中包含发送者的MAC地址。
- 服务器到客户端: PADO为PPPoE ActiveDiscovery Offer。一旦用户计算机发送了PADI报文,DSL-AC就会使用PADI中提供的MAC地址回复一个PADO报文。PADO报文中包含了DSL-AC的MAC地址、名称以及服务名。如果多于一个POP的DSL-AC回复了PADO报文,用户计算机就使用提供的名称和服务来从中选择一个。
- 客户端到服务器:PADR为PPPoE ActiveDiscovery Request当用户计算机收到一个来自DSL-AC的可接受的PADO报文后,就会发送一个PADR报文给DSL-AC,用来确认接受发送PADO报文的DSL-AC所提供的PPPoE连接。
- 服务器到客户端:Session-confirmation(PADS)PADS为PPPoE Active DiscoverySession-confirmation上面的PADR报文由DSL-AC的PADS报文进行确认,并在其中携带一个会话ID。客户端和服务器之间进行PPP的LCP协商,建立链路层通信。同时,协商使用PAP、CHAP认证方式。这里假设使用chap认证,服务器通过Challenge报文发送给认证客户端,提供一个128bit的Challenge。客户端收到Challenge报文后,将密码和Challenge做MD5算法后的Challenge—Password,在Response回应报文中把它发送给服务器。服务器根据用户信息判断用户是否合法,然后回应认证成功/失败报文到客户端。如果成功,携带协商参数,以及用户的相关业务属性给用户授权。如果认证失败,则流程到此结束。如果认证成功,用户进行NCP(如IPCP)协商,通过服务器获取到规划的IP地址等参数。此时用户计算机与此DSL-AC的连接现在就完整创建了。
- 任何一方:PADT为PPPoE ActiveDiscovery Termination。这个报文终结用户计算机与POP的的连接,可由用户计算机或DSL-AC任意一方发
- PPP会话阶段:用户主机与接入集中器根据在发现阶段所协商的PPP会话连接参数进行PPP会话。一旦PPPoE会话开始,PPP数据就可以以任何其他的PPP封装形式发送。所有的以太网帧都是单播的。PPPoE会话的SESSION-ID一定不能改变,并且必须是发现阶段分配的值。PPPoE还有一个PADT分组,它可以在会话建立后的任何时候发送,来终止PPPoE会话,也就是会话释放。它可以由主机或者接入集中器发送。当对方接收到一个PADT分组,就不再允许使用这个会话来发送PPP业务。PADT分组不需要任何标签,其CODE字段值为0×a7,SESSION-ID字段值为需要终止的PPP会话的会话标识号码。在发送或接收PADT后,即使正常的PPP终止分组也不必发送。PPP对端应该使用PPP协议自身来终止PPPoE会话,但是当PPP不能使用时,可以使用PADT。
实验八、帧中继之配置全互联网络并运行EIGRP(或RIP)
R1配置:
R1#conf t
R1(config)#int s1/1
R1(config-if)#encapsulation frame-relay //启用帧中继封装
R1(config-if)#frame-relay intf-type dte //设置接口为DTE,DTE能够通过网络发送和接收模拟或数字信号形式数据的设备,此命令可以不输入,因为默认就是DTE
R1(config-if)#frame-relay map ip 10.10.10.1 102//静态映射dlci与IP,此dlci必须存在于FR-SW中(16-1007),使得自己ping通自己
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#router eigrp 1
R1(config-router)#no auto-summary
R1(config-router)#net 1.1.1.0 255.255.255.0
R1(config-router)#net 10.10.10.0 255.255.255.0
R2配置:
R2#conf t
R2(config)#int s1/2
R2(config-if)#encapsulation frame-relay
R2(config-if)#frame-relay intf-type dte
R1(config-if)#frame-relay map ip 10.10.10.2 102
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#router eigrp 1
R2(config-router)#no auto-summary
R2(config-router)#net 2.2.2.0 255.255.255.0
R2(config-router)#net 10.10.10.0 255.255.255.0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int s1/3
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay intf-type dte
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#router eigrp 1
R3(config-router)#no auto-summary
R3(config-router)#net 3.3.3.0 255.255.255.0
R3(config-router)#net 10.10.10.0 255.255.255.0
R3(config-router)#exit
FR-SW配置:
FR-SW#conf t
FR-SW(config)#frame-relay switching //配置路由器作为帧中继交换机
FR-SW(config)#int s1/1
FR-SW(config-if)#encapsulation frame-relay //s1/1接口开启帧中继封装
FR-SW(config-if)#frame-relay intf-type dce//设置接口为DCE,它在DTE和传输线路之间提供信号变换和编码功能,并负责建立、保持和释放链路的连接
FR-SW(config-if)#frame-relay route 102 interface s1/2 201 //建立帧中继永久虚电路交换的路由,从此接口进来的dlci 102要从接口s1/2出去,并与对端的dlci 201交换
FR-SW(config-if)#frame-relay route 103 interface s1/3 301//建立帧中继永久虚电路交换的路由,从此接口进来的dlci 103要从接口s1/3出去,并与对端的dlci 301交换
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/2
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 201 interface s1/1 102
FR-SW(config-if)#frame-relay route 203 interface s1/3 302
FR-SW(config-if)#exit
FR-SW(config)#int s1/3
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 301 interface s1/1 103
FR-SW(config-if)#frame-relay route 302 interface s1/2 203
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
检查测试:
R1#sh frame-relay pvc //查看虚链路状态
PVC Statistics for interface Serial1/1 (Frame Relay DTE)
Active Inactive Deleted Static
Local 2 0 0 0
Switched 0 0 0 0
Unused 0 0 0 0
DLCI = 102, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/1
input pkts 2 output pkts 1 in bytes 68
out bytes 34 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 1 out bcast bytes 34
5 minute input rate 0 bits/sec,0 packets/sec
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:07:17, last timepvc status changed 00:06:57
DLCI = 103, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/1
input pkts 1 output pkts 1 in bytes 34
out bytes 34 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 1 out bcast bytes 34
5 minute input rate 0 bits/sec,0 packets/sec
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:04:00, lasttime pvc status changed 00:03:10
R1#sh frame-relay map //帧中继map表其实相当于我们的arp缓存表,必须要有dlci关联才能通信,动态学习到的dlci是通过反转ARP学到的
Serial1/1 (up): ip 10.10.10.1 dlci 102(0x66,0x1860), static,
CISCO, status defined, active
Serial1/1 (up): ip 10.10.10.2 dlci 102(0x66,0x1860), dynamic,
broadcast,, statusdefined, active
Serial1/1 (up): ip 10.10.10.3 dlci 103(0x67,0x1870), dynamic,
broadcast,, statusdefined, active
R1#ping 10.10.10.1 //ping自己时数据包要先发到网络上,再发回来
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 40/69/180 ms
R1#ping 10.10.10.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 40/60/108 ms
R1#ping 10.10.10.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/88/140 ms
R1#sh ip rou eigrp
2.0.0.0/24 is subnetted, 1subnets
D 2.2.2.0 [90/2297856] via10.10.10.2, 00:03:50, Serial1/1
3.0.0.0/24 is subnetted, 1subnets
D 3.3.3.0 [90/2297856] via10.10.10.3, 00:02:54, Serial1/1
1、帧中继的包格式:
标志 |
地址 |
信息 |
帧校验 |
标志 |
标志:是一个01111110的比特序列,用于指示下一个帧的起始和结束。
地址:包含数据链路的标识符(DLCI)、前向显式拥塞通知(FECN)、后向显式拥塞通知(BECN)、可掉弃指示(DE)。注意DLCI只具有本地有效。在一个帧中继的链接中,链接两端的用户使用的两个DLCI是独立选取的。帧中继可同时将多条不同的DLCI逻辑的复用到同一条物理信道中。DLCI是帧中继中的二层封装地址,就像以太网的MAC地址一样
信息:用于承载用户数据和第三层的IP包
帧校验:检测出差错时就掉弃该帧。
注意:在帧中继full-mesh网络中运行动态路由协议RIP、EIGRP没有问题。但是OSPF就不可以了
实验九、帧中继之配置星型网络并尝试运行EIGRP(RIP)
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#frame-relay map ip 10.10.10.1 102
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#router eigrp 1
R1(config-router)#net 0.0.0.0 255.255.255.255
R1(config-router)#no auto-summary
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#frame-relay map ip 10.10.10.2 201
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router eigrp 1
R2(config-router)#net 0.0.0.0 255.255.255.255
R2(config-router)#no auto-summary
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay map ip 10.10.10.3 301
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router eigrp 1
R3(config-router)#net 0.0.0.0 255.255.255.255
R3(config-router)#no auto-summary
FR-SW配置:
FR-SW#conf t
FR-SW(config)#frame-relay switching
FR-SW(config)#int s1/1
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 102 interface s1/2 201
FR-SW(config-if)#frame-relay route 103 interface s1/3 301
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/2
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 201 interface s1/1 102
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/3
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 301 interface s1/1 103
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
检查测试:
R1#sh frame-relay pvc
PVC Statistics for interface Serial1/0 (Frame Relay DTE)
Active Inactive Deleted Static
Local 2 0 0 0
Switched 0 0 0 0
Unused 0 0 0 0
DLCI = 102, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/0
input pkts 10 output pkts 11 in bytes 58
out bytes 628 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 6 out bcast bytes 324
5 minute input rate 0 bits/sec,0 packets/sec
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:05:36, lasttime pvc status changed 00:05:26
DLCI = 103, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/0
input pkts 28 output pkts 28 in bytes 2318
out bytes 2354 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 7 out bcast bytes 418
5 minute input rate 0 bits/sec,0 packets/se
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:05:37, lasttime pvc status changed 00:05:27
R1#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 102(0x66,0x1860), static,
CISCO, statusdefined, active
Serial1/0 (up): ip 10.10.10.2 dlci 102(0x66,0x1860), dynamic,
broadcast,
CISCO, statusdefined, active
Serial1/0 (up): ip 10.10.10.3 dlci 103(0x67,0x1870), dynamic
broadcast,, statusdefined, active
R1#ping 10.10.10.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/50/92 ms
R1#ping 10.10.10.3
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/55/88 ms
R1#sh ip rou eigrp
2.0.0.0/24 is subnetted, 1subnets
D 2.2.2.0 [90/2297856] via10.10.10.2, 00:04:09, Serial1/0
3.0.0.0/24 is subnetted, 1subnets
D 3.3.3.0 [90/2297856] via10.10.10.3, 00:05:52, Serial1/0
R2#sh ip rou eigrp //学不到全部路由
1.0.0.0/24 is subnetted, 1subnets
D 1.1.1.0 [90/2297856] via10.10.10.1, 00:04:27, Serial1/0
R3#sh ip route eigrp//学不到全部路由
1.0.0.0/24 is subnetted, 1subnets
D 1.1.1.0 [90/2297856] via10.10.10.1, 00:06:40, Serial1/0
在帧中继星型网络中不难发现,只有R1这个中心路由器学习到了所有路由,而R2、R3并没有学习到全部路由,这是因为RIP和EIGRP的水平分割问题导致的路由更新问题。另外运行OSPF路由协议也会有问题的
实验十、帧中继之配置点对点子接口让星型网络正常运行EIGRP(RIP)
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp//关闭反向ARP,自己手动配置映像
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s1/0.12 point-to-point
R1(config-subif)#ip add 10.10.10.1 255.255.255.252
R1(config-subif)#frame-relay interface-dlci 102
R1(config-fr-dlci)#exit
R1(config-subif)#exit
R1(config)#int s1/0.13point-to-point
R1(config-subif)#ip add 10.10.10.5 255.255.255.252
R1(config-subif)#frame-relay interface-dlci 103
R1(config-fr-dlci)#exit
R1(config-subif)#exit
R1(config)#router eigrp 1
R1(config-router)#net 0.0.0.0 255.255.255.255
R1(config-router)#no auto-summary
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201 broadcast//手动添加dlci关联,并启用广播支持
R2(config-if)#frame-relay map ip 10.10.10.2 201
R2(config-if)#ip add 10.10.10.2 255.255.255.252
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router eigrp 1
R2(config-router)#net 0.0.0.0 255.255.255.255
R2(config-router)#no auto-summary
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.5 301 broadcast
R3(config-if)#frame-relay map ip 10.10.10.3 301
R3(config-if)#ip add 10.10.10.6 255.255.255.252
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router eigrp 1
R3(config-router)#net 0.0.0.0 255.255.255.255
R3(config-router)#no auto-summary
FR-SW配置:
FR-SW#conf t
FR-SW(config)#frame-relay switching
FR-SW(config)#int s1/1
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 102 interface s1/2 201
FR-SW(config-if)#frame-relay route 103 interface s1/3 301
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/2
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 201 interface s1/1 102
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/3
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 301 interface s1/1 103
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
检查测试:
R1#sh fr pvc
PVC Statistics for interface Serial1/0 (Frame Relay DTE)
Active Inactive Deleted Static
Local 2 0 0 0
Switched 0 0 0 0
Unused 0 0 0 0
DLCI = 102, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/0.12
input pkts 15 output pkts 108 in bytes 924
out bytes 11712 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 103 out bcast bytes 11350
5 minute input rate 0 bits/sec,0 packets/sec
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:18:52, last timepvc status changed 00:18:52
DLCI = 103, DLCI USAGE = LOCAL, PVC STATUS = ACTIVE, INTERFACE =Serial1/0.13
input pkts 9 output pkts 82 in bytes 492
out bytes 8391 dropped pkts 0 in pkts dropped 0
out pkts dropped 0 out bytes dropped 0
in FECN pkts 0 in BECN pkts 0 out FECN pkts 0
out BECN pkts 0 in DE pkts 0 out DE pkts 0
out bcast pkts 75 out bcast bytes 7885
5 minute input rate 0 bits/sec,0 packets/sec
5 minute output rate 0 bits/sec,0 packets/sec
pvc create time 00:18:54, lasttime pvc status changed 00:18:54
R1#sh frame-relay map
Serial1/0.12 (up): point-to-point dlci, dlci 102(0x66,0x1860), broadcast
status defined, active
Serial1/0.13 (up): point-to-point dlci, dlci 103(0x67,0x1870), broadcast
status defined, active
R1#sh ip route eigrp
2.0.0.0/24 is subnetted, 1subnets
D 2.2.2.0 [90/2297856] via10.10.10.2, 00:02:39, Serial1/0.12
3.0.0.0/24 is subnetted, 1subnets
D 3.3.3.0 [90/2297856] via10.10.10.6, 00:01:46, Serial1/0.13
R2#sh ip route eigrp
1.0.0.0/24 is subnetted, 1subnet
D 1.1.1.0 [90/2297856] via10.10.10.1, 00:03:01, Serial1/0
3.0.0.0/24 is subnetted, 1subnets
D 3.3.3.0 [90/2809856] via10.10.10.1, 00:02:08, Serial1/0
10.0.0.0/30 is subnetted, 2subnets
D 10.10.10.4 [90/2681856]via 10.10.10.1, 00:03:01, Serial1/0
R3#sh ip route eigrp
1.0.0.0/24 is subnetted, 1subnets
D 1.1.1.0 [90/2297856] via10.10.10.5, 00:03:01, Serial1/0
2.0.0.0/24 is subnetted, 1subnets
D 2.2.2.0 [90/2809856] via10.10.10.5, 00:03:01, Serial1/0
10.0.0.0/30 is subnetted, 2subnets
D 10.10.10.0 [90/2681856]via 10.10.10.5, 00:03:01, Serial1/
此时我们在帧中继的点对点子接口网络中就可以运行RIP、EIGRP这两个距离矢量动态路由协议了
实验十一、帧中继网络中运行OSPF(多种解决方案)
默认情况下帧中继网络是无法运行OSPF协议的,因为帧中继(fram-relay)网络属于非广播型多路访问, 而OSPF协议规定路由器之间的Hello包是通过组播来传输(组播也属于非广播类型)因此帧中继上默认情况是无法运行OSPF协议的。一般在帧中继网络中,通过反向ARP学习到的PVC默认是自动支持二层广播封装的。帧中继当中广播发送的形式与以太网中的广播发送是不同的,路由器会将广播包为每条已经和IP地址建立起了映像关系的PVC(即在 frame-relaymap 中有显示)复制一份该广播包并发送。
广播型多路访问,目前而言指的就是以太网链路, 3. NBMA:网络中允许存在多台Router,物理上链路共享,通过二层虚链路(VC)建立逻辑上的连接。NBMA网络不是没有广播的能力,而是广播针对每一条VC发送,这样就使得一台路由器在不是Full-Mesh的NBMA拓扑中,发送的广播或组播分组可能无法到达其他所有路由器。 Hello和Dead 隔分别为30s 和120s
OSPF 的网络类型
- Broadcast(广播):支持发送组播/广播,选DR/BDR,hello间隔为10秒涉及IP 和MAC,用ARP实现二层和三层映射。选举DR/BDR,自动发现邻居。Hello间隔为10s,失效为40s
- NBMA(非广播型多路访问):不支持发送组播/广播,选DR/BDR,hello间隔为30秒,网络中允许存在多台Router,物理上链路共享,通过二层虚链路(VC)建立逻辑上的连接。NBMA网络不是没有广播的能力,而是广播针对每一条VC发送,这样就使得一台路由器在不是Full-Mesh的NBMA拓扑中,发送的广播或组播分组可能无法到达其他所有路由器。 Hello和Dead 隔分别为30s 和120s
- Point-to-multipoint(点到多点):支持发送组播/广播,不选DR/BDR,hello间隔为30秒
- Point-to-point(点到点):支持发送组播/广播,不选DR/BDR,hello间隔为10,:一个网络里仅有2个接口,使用HDLC或PPP封装,不需寻址,地址字段固定为FF ,在点到点链路上运行OSPF没有必要选举DR,因为就是两点一线,简单得很;而在NBMA网络中运行OSPF由于是多路访问,DR可以存在,通过调整成手动发现邻居可以防止过多的Hello 开销。OSPF会自动检测接口类型(发现封装模式为PPP或HDLC,就认为是点到点),OSPF数据包使用224.0.0.5发送,不知道DR是什么东西,就知道对端是谁,OSPF hello间隔为10s,失效为40s
子接口类型(母接口进行了帧中继封装,子接口不能单独配置帧中继封装)
- Multipoint:一个子接口出去,可以连接到多个节点。和主接口配置方式一样。意味着这个子接口对应多条VC,相同IP子网内有多于两台的路由器。当子接口被定义为multipoint时,其OSPF网络类型就变成了非广播
- Point-to-point:一个子接口出去只能连接到一个节点。注意:当子接口的类型被定义为point-to-point时,其OSPF网络类型就是point-to-point,在其他情况下,只要接口进行了帧中继封装,则默认的OSPF网络类型就是NBMA
在一个 NMBA网络执行以下命令允许运行OSPF的灵活性用不同的模式:
ip ospf network {广播 | 非广播 | {点对多点 [non-broadcast ] | 点到点 }}
FR配置:
FR-SW#conf t
FR-SW(config)#frame-relay switching
FR-SW(config)#int s1/1
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 102 interface s1/2 201
FR-SW(config-if)#frame-relay route 103 interface s1/3 301
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/2
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 201 interface s1/1 102
FR-SW(config-if)#frame-relay route 203 interface S1/3 302
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
FR-SW(config)#int s1/3
FR-SW(config-if)#encapsulation frame-relay
FR-SW(config-if)#frame-relay intf-type dce
FR-SW(config-if)#frame-relay route 301 interface s1/1 103
FR-SW(config-if)#frame-relay route 302 interface s1/2 203
FR-SW(config-if)#no sh
FR-SW(config-if)#exit
方案一:默认网络非广播类型,手工设置ospf网络类型为广播型,在指定fram-relay map时设置为broadcast
R1配置:
R1#conf t
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp//关闭接口的ARP逆向解析,即禁止本地DLCI向帧中继交换机发出反向地址解析,而是手工指定。
R1(config-if)#frame-relay map ip 10.10.10.2 102 broadcast //手动添加到R2的DLCI映射,并设置映射支持广播
R1(config-if)#frame-relay map ip 10.10.10.3 103 broadcast//手动添加到R3的DLCI映射,并设置映射支持广播
R1(config-if)#ip ospf network broadcast//帧中继默认是NBMA(非广播多点接入类型),不支持三层广播发送,而OSPF的邻居关系是通过广播hello包协商的,所以此处将指定该接口在OSPF协议中的类型为广播类型。
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#router ospf 1
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201 broadcast//手动添加到R1的DLCI映射,并设置映射支持广播
R2(config-if)#frame-relay map ip 10.10.10.3 203 //手动添加到R3的DLCI映射,但不支持广播。注意
R2(config-if)#ip ospf priority 0 //不参与ospf的DR选举,让R1作DR
R2(config-if)#ip ospf network broadcast
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#net
R2(config-router)#network 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.1 301 broadcast//手动添加到R1的DLCI映射,并设置映射支持广播,注意:最后跟的那个broadcast是指在二层开启广播支持功能
R3(config-if)#frame-relay map ip 10.10.10.2 302 //手动添加到R2的DLCI映射,但不支持广播。
R3(config-if)#ip ospf priority 0 //不参与ospf的DR选举,让R1作DR
R3(config-if)#ip ospf network broadcast
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#net
R3(config-router)#network 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查验证:
R1#sh frame-relay map
Serial1/0 (up): ip 10.10.10.2 dlci 102(0x66,0x1860), static,
broadcast,
CISCO, statusdefined, active
Serial1/0 (up): ip 10.10.10.3 dlci 103(0x67,0x1870), static,
broadcast,
CISCO, statusdefined, active
R2#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 201(0xC9,0x3090), static,
broadcast,
CISCO, statusdefined, active
Serial1/0 (up): ip 10.10.10.3 dlci 203(0xCB,0x30B0), static,
CISCO, statusdefined, active
R3#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 301(0x12D,0x48D0), static,
broadcast,
CISCO, statusdefined, active
Serial1/0 (up): ip 10.10.10.2 dlci 302(0x12E,0x48E0), static,
CISCO, statusdefined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 0 FULL/DROTHER 00:00:32 10.10.10.2 Serial1/0
3.3.3.3 0 FULL/DROTHER 00:00:38 10.10.10.3 Serial1/0
R1#sh ip rou ospf
2.0.0.0/32 is subnetted, 1subnets
O 2.2.2.2 [110/65] via10.10.10.2, 00:08:44, Serial1/0
3.0.0.0/32 is subnetted, 1subnets
O 3.3.3.3 [110/65] via10.10.10.3, 00:04:38, Serial1/0
R2#sh ip route ospf
1.0.0.0/32 is subnetted, 1subnets
O 1.1.1.1 [110/65] via10.10.10.1, 00:08:40, Serial1/0
3.0.0.0/32 is subnetted, 1subnets
O 3.3.3.3 [110/65] via10.10.10.3, 00:04:34, Serial1/0
R3#sh ip rou ospf
1.0.0.0/32 is subnetted, 1subnets
O 1.1.1.1 [110/65] via10.10.10.1, 00:12:23, Serial1/0
2.0.0.0/32 is subnetted, 1subnets
O 2.2.2.2 [110/65] via10.10.10.2, 00:12:23, Serial1/0
方案二:默认网络非广播类型,使用neighbor手工指定邻居,并手工指定DR
R1配置:
R1#conf t
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp
R1(config-if)#frame-relay map ip 10.10.10.2 102
R1(config-if)#frame-relay map ip 10.10.10.3 103
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#router ospf 1
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
R1(config-router)#neighbor 10.10.10.2 //手动指定R2为OSPF邻居,不用广播去发hello协商,而是用单播
R1(config-router)#neighbor 10.10.10.3//手动指定R3为OSPF邻居,不用广播去发hello协商,而是用单播
R1(config-router)#exit
R2配置:
R2# conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201
R2(config-if)#frame-relay map ip 10.10.10.3 203
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#ip ospf priority 0 //不参与DR选举,即让R1作为DR
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#network 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.1 301
R3(config-if)#frame-relay map ip 10.10.10.2 302
R3(config-if)#ip ospf priority 0//不参与DR选举,即让R1作为DR
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#network 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0 (up): ip 10.10.10.2 dlci 102(0x66,0x1860),static,
CISCO, status defined, active
Serial1/0 (up): ip 10.10.10.3 dlci 103(0x67,0x1870),static,
CISCO, status defined, active
R2#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 201(0xC9,0x3090),static,
CISCO, status defined, active
Serial1/0 (up): ip 10.10.10.3 dlci 203(0xCB,0x30B0),static,
CISCO, status defined, active
R3#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 301(0x12D,0x48D0),static,
CISCO, status defined, active
Serial1/0 (up): ip 10.10.10.2 dlci 302(0x12E,0x48E0),static,
CISCO, status defined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 0 FULL/DROTHER 00:01:59 10.10.10.2 Serial1/0
3.3.3.3 0 FULL/DROTHER 00:01:58 10.10.10.3 Serial1/0
R1#sh ip route ospf
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/65] via 10.10.10.2, 00:00:16, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/65] via 10.10.10.3, 00:00:16, Serial1/0
R2#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:01:00, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/65] via 10.10.10.3, 00:01:00, Serial1/0
R3#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:01:14, Serial1/0
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2 [110/65] via 10.10.10.2, 00:01:14,Serial1/0
方案三:默认网络非广播类型,设置OSPF网络类型为点到多点广播型,指定fram-relay map为broadcast
R1配置:
R1#conf t
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp
R1(config-if)#frame-relay map ip 10.10.10.2 102 broadcast
R1(config-if)#frame-relay map ip 10.10.10.3 103 broadcast
R1(config-if)#ip ospf network point-to-multipoint//当OSPF网络类型为point-to-multi时,那么此接口将会向外发送32位的路由更新,那么接受路由器将会得到一个32为的主机路由。此时OSPF的逻辑是:因为点到多点的接口连出去可能会有多个路由器与我处于同一网段,而此时的网络的二层结构可能不是以太网类型,也就是说可能无法使用ARP协议进行精确查找,所以为了让对方能够准确的找到我,必须使用32位主机路由。
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#router ospf 1
R1(config-router)#net 0.0.0.0 255.255.255.255 area 0
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201 broadcast//手动添加到R1的DLCI映射,并设置映射支持广播,注意:最后跟的那个broadcast是指在二层开启广播支持功能,不添加到R3的映射,让网络成为帧中继Hub-Spoke网络
R2(config-if)#ip ospf network point-to-multipoint
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#net 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.1 301 broadcast//手动添加到R1的DLCI映射,并设置映射支持广播,注意:最后跟的那个broadcast是指在二层开启广播支持功能,不添加到R2的映射,让网络成为帧中继Hub-Spoke网络
R3(config-if)#ip ospf network point-to-multipoint
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#net 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0 (up): ip 10.10.10.2 dlci 102(0x66,0x1860),static,
broadcast, CISCO, status defined, active
Serial1/0 (up): ip 10.10.10.3 dlci 103(0x67,0x1870),static,
broadcast,CISCO, status defined, active
R2#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 201(0xC9,0x3090),static,
broadcast,CISCO, status defined, active
R3#sh frame-relay map
Serial1/0 (up): ip 10.10.10.1 dlci 301(0x12D,0x48D0),static,
broadcast,CISCO, status defined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 0 FULL/ - 00:01:55 10.10.10.3 Serial1/0
2.2.2.2 0 FULL/ - 00:01:34 10.10.10.2 Serial1/0
R1#sh ip route ospf
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/65] via 10.10.10.2, 00:10:02, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3 [110/65]via 10.10.10.3, 00:10:02, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.2/32 [110/64] via 10.10.10.2, 00:10:02, Serial1/0
O 10.10.10.3/32 [110/64] via 10.10.10.3, 00:10:02, Serial1/0
R2#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:10:42, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/129] via 10.10.10.1, 00:10:32, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.3/32 [110/128] via 10.10.10.1, 00:10:32, Serial1/0
O 10.10.10.1/32 [110/64] via 10.10.10.1, 00:10:42, Serial1/0
R3#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:10:59, Serial1/0
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/129] via 10.10.10.1, 00:10:59, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.2/32 [110/128] via 10.10.10.1, 00:10:59, Serial1/0
O 10.10.10.1/32 [110/64] via 10.10.10.1, 00:10:59, Serial1/0
方案四:默认网络非广播类型,设置OSPF网络类型为点到多点非广播型,使用neighbor手工指定邻居
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp
R1(config-if)#frame-relay map ip 10.10.10.2 102
R1(config-if)#frame-relay map ip 10.10.10.3 103
R1(config-if)#ip ospf network point-to-multipointnon-broadcast
R1(config-if)#ip add 10.10.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#router ospf 1
R1(config-router)#net
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
R1(config-router)#neighbor 10.10.10.2
R1(config-router)#neighbor 10.10.10.3
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201
R2(config-if)#frame-relay map ip 10.10.10.3 203
R2(config-if)#ip ospf network point-to-multipointnon-broadcast//如果在PVC上没有启用组播和广播功能,即定义Map时没有使用关键字broadcast,那么这里配置point-to-multipointnon-broadcast 相应的取消OSPF组播hello的功能,然后在OSPF中手动配置邻居。单播发送hello包
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#net 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#frame-relay map ip 10.10.10.1 301
R3(config-if)#frame-relay map ip 10.10.10.2 302
R3(config-if)#ip ospf network point-to-multipointnon-broadcast
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#net 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0 (up): ip 10.10.10.2 dlci 102(0x66,0x1860),static,
CISCO, status defined, active
Serial1/0 (up): ip 10.10.10.3 dlci 103(0x67,0x1870),static,
CISCO, status defined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 0 FULL/ - 00:01:57 10.10.10.3 Serial1/0
2.2.2.2 0 FULL/ - 00:01:57 10.10.10.2 Serial1/0
R1#sh ip route ospf
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/65] via 10.10.10.2, 00:05:42, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/65] via 10.10.10.3, 00:02:42, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.2/32[110/64] via 10.10.10.2, 00:05:42, Serial1/0
O 10.10.10.3/32 [110/64] via 10.10.10.3, 00:02:42, Serial1/0
方案五:默认网络非广播类型,使用点到点子接口,设置OSPF网络类型为点到点网络类型。
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0 //父接口
R1(config-if)#encapsulation frame-relay//父接口配置帧中继封装,子接口不能单独配置帧中继封装
R1(config-if)#no frame-relay inverse-arp//关闭inverse-arp,采用静态映像的方式
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s1/0.12 point-to-point //子接口的属性继承父接口,当子接口的类型被定义为point-to-point时,其OSPF网络类型就是point-to-point
R1(config-subif)#frame-relay interface-dlci 102//在点到点子接口填写DLCI映射表的时候,无需将IP地址和PVC相关联因为在点到点的情况下,接口出去后所对应的设备是唯一的,所以不需要IP地址和PVC相关联,此处dlci 102指定R2
R1(config-subif)#ip add 10.10.10.1 255.255.255.252
R1(config-fr-dlci)#exit
R1(config-subif)#exit
R1(config)#int s1/0.13 point-to-point//子接口的属性继承父接口,当子接口的类型被定义为point-to-point时,其OSPF网络类型就是point-to-point
R1(config-subif)#frame-relay interface-dlci 103////在点到点子接口填写DLCI映射表的时候,无需将IP地址和PVC相关联因为在点到点的情况下,接口出去后所对应的设备是唯一的,所以不需要IP地址和PVC相关联,此处dlci 102指定R3
R1(config-subif)#ip add 10.10.10.5 255.255.255.252
R1(config-fr-dlci)#exit
R1(config-subif)#exit
R1(config)#router ospf 1
R1(config-router)#net 0.0.0.0 255.255.255.255 area 0
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201 broadcast//手动建立映射,并开启二层广播支持,
R2(config-if)#ip ospf network point-to-point//设置ospf的网络类型为点对点网络
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config-if)#router ospf 1
R2(config-router)#net 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay no fr
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.5 301 broadcast
R3(config-if)#ip ospf network point-to-point
R3(config-if)#ip add 10.10.10.6 255.255.255.252
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#net 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0.12 (up): point-to-point dlci, dlci102(0x66,0x1860), broadcast
statusdefined, active
Serial1/0.13 (up): point-to-point dlci, dlci 103(0x67,0x1870),broadcast
statusdefined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
3.3.3.3 0 FULL/ - 00:00:36 10.10.10.6 Serial1/0.13
2.2.2.2 0 FULL/ - 00:00:30 10.10.10.2 Serial1/0.12
R1#sh ip route ospf
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/65] via 10.10.10.2, 00:12:50, Serial1/0.12
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/65] via 10.10.10.6, 00:10:13, Serial1/0.13
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.0/24 [110/128] via 10.10.10.2, 00:12:50, Serial1/0.12
R2#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:13:31, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/129] via 10.10.10.1, 00:10:54, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.0/30 [110/128] via 10.10.10.1, 00:13:31, Serial1/0
O 10.10.10.4/30 [110/128] via 10.10.10.1, 00:11:25, Serial1/0
R3#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.5, 00:11:36, Serial1/0
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/129] via 10.10.10.5, 00:11:36, Serial1/0
10.0.0.0/8 isvariably subnetted, 3 subnets, 2 masks
O 10.10.10.0/30 [110/128] via 10.10.10.5, 00:11:36, Serial1/0
O 10.10.10.0/24 [110/192] via 10.10.10.5, 00:11:36, Serial1/0
方案六:默认网络非广播类型,使用点到多点子接口,并设置OSPF网络类型为广播类型。(像物理接口)
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0//父接口配置帧中继封装,子接口接口继承此属性
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s1/0.12 multipoint//配置多点子接口,此时ospf网络类型变成非广播
R1(config-subif)#frame-relay map ip 10.10.10.2 102broadcast
R1(config-subif)#frame-relay map ip 10.10.10.3 103broadcast
R1(config-subif)#ip ospf network broadcast
R1(config-subif)#ip add 10.10.10.1 255.255.255.0
R1(config-subif)#exit
R1(config)#router ospf 1
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip 10.10.10.1 201 broadcast
R2(config-if)#ip ospf network broadcast
R2(config-if)#ip ospfpriority 0//不参与DR/BDR选举,让R1称为DR
R2(config-if)#ip add 10.10.10.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#network 0.0.0.0 255.255.255.255 area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3 255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip 10.10.10.1 301 broadcast
R3(config-if)#ip ospf network broadcast
R3(config-if)# ip ospfpriority 0//不参与DR/BDR选举,让R1称为DR
R3(config-if)#ip add 10.10.10.3 255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#network 0.0.0.0 255.255.255.255 area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0.12 (up): ip 10.10.10.2 dlci 102(0x66,0x1860),static,
broadcast,
CISCO, status defined, active
Serial1/0.12 (up): ip 10.10.10.3 dlci 103(0x67,0x1870),static,
broadcast,
CISCO, status defined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 0 FULL/DROTHER 00:00:35 10.10.10.2 Serial1/0.12
3.3.3.3 0 FULL/DROTHER 00:00:36 10.10.10.3 Serial1/0.12
R1#sh ip route ospf
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/65] via 10.10.10.2, 00:10:57, Serial1/0.12
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/65] via 10.10.10.3, 00:02:28, Serial1/0.12
R2#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:11:58, Serial1/0
3.0.0.0/32 issubnetted, 1 subnets
O 3.3.3.3[110/129] via 10.10.10.1, 00:03:09, Serial1/0
R2#sh ip ospf nei
Neighbor ID Pri State Dead Time Address Interface
1.1.1.1 1 FULL/DR 00:00:39 10.10.10.1 Serial1/0
R3#sh ip route ospf
1.0.0.0/32 issubnetted, 1 subnets
O 1.1.1.1[110/65] via 10.10.10.1, 00:03:45, Serial1/0
2.0.0.0/32 issubnetted, 1 subnets
O 2.2.2.2[110/129] via 10.10.10.1, 00:03:45, Serial1/0
方案七:默认网络非广播类型,使用点到多点子接口,为OSPF手工指定邻居
R1配置:
R1#conf t
R1(config)#int lo 1
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#int s1/0
R1(config-if)#encapsulation frame-relay
R1(config-if)#no frame-relay inverse-arp
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#int s1/0.12 multipoint////配置多点子接口,此时ospf网络类型变成非广播
R1(config-subif)#frame-relay map ip 10.10.10.2 102
R1(config-subif)#frame-relay map ip 10.10.10.3 103
R1(config-subif)#ip add 10.10.10.1 255.255.255.0
R1(config-subif)#exit
R1(config)#router ospf 1
R1(config-router)#network 0.0.0.0 255.255.255.255 area 0
R1(config-router)#neighbor 10.10.10.2
R1(config-router)#neighbor 10.10.10.3
R1(config-router)#exit
R2配置:
R2#conf t
R2(config)#int lo 1
R2(config-if)#ip add 2.2.2.2255.255.255.0
R2(config-if)#exit
R2(config)#int s1/0
R2(config-if)#encapsulation frame-relay
R2(config-if)#no frame-relay inverse-arp
R2(config-if)#frame-relay map ip10.10.10.1 201
R2(config-if)#ip ospf priority 0//不参与dr/bdr选举,让R1称为DR
R2(config-if)#ip add 10.10.10.2255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#router ospf 1
R2(config-router)#net 0.0.0.0 255.255.255.255area 0
R2(config-router)#exit
R3配置:
R3#conf t
R3(config)#int lo 1
R3(config-if)#ip add 3.3.3.3255.255.255.0
R3(config-if)#exit
R3(config)#int s1/0
R3(config-if)#encapsulation frame-relay
R3(config-if)#no frame-relay inverse-arp
R3(config-if)#frame-relay map ip10.10.10.1 301
R3(config-if)#ip ospf priority 0//不参与DR/BDR选举,让R1称为DR
R3(config-if)#ip add 10.10.10.3255.255.255.0
R3(config-if)#no sh
R3(config-if)#exit
R3(config)#router ospf 1
R3(config-router)#network 0.0.0.0 255.255.255.255area 0
R3(config-router)#exit
检查测试:
R1#sh frame-relay map
Serial1/0.12 (up): ip 10.10.10.2 dlci102(0x66,0x1860), static,
CISCO, status defined, active
Serial1/0.12 (up): ip 10.10.10.3 dlci103(0x67,0x1870), static,
CISCO, status defined, active
R1#sh ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
2.2.2.2 0 FULL/DROTHER 00:01:45 10.10.10.2 Serial1/0.12
3.3.3.3 0 FULL/DROTHER 00:01:43 10.10.10.3 Serial1/0.12
R1#sh ip route ospf
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/65] via 10.10.10.2, 00:08:47, Serial1/0.12
3.0.0.0/32 is subnetted, 1 subnets
O 3.3.3.3 [110/65] via 10.10.10.3, 00:10:39, Serial1/0.12
R2#sh ip route ospf
1.0.0.0/32 is subnetted, 1 subnets
O 1.1.1.1 [110/65] via 10.10.10.1, 00:10:01, Serial1/0
3.0.0.0/32 is subnetted, 1 subnets
O 3.3.3.3 [110/65] via 10.10.10.3, 00:10:01, Serial1/0
R3#sh ip route ospf
1.0.0.0/32 is subnetted, 1 subnets
O 1.1.1.1 [110/65] via 10.10.10.1, 00:12:21, Serial1/0
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/65] via 10.10.10.2, 00:10:19, Serial1/0
总结:
1.包括to-point,to-multipoint,to-multipointnonbroadcast,均不需要选举DR/BDR,在Hub-and-Spoke这种星型拓扑中建议使用“Point-to系列”模式。
2.包括broadcast,non-broadcast),不管加不加non,多少都是广播型链路的翻版,需要选举DR/BDR。
3 .包括non-broadcast,point-to-multipoint nonbroadcast,一个non就是废除广播和组播能力,只能手动指定邻居。
4 .在Full-Mesh的拓扑中才可以应用non-broadcast 或broadcast 模式,配置较为简单,但是如果发生链路中断,DRother可能会找不到DR,导致路由信息丢失。
5. Hub-Spoke拓扑中如果运行non-broadcast模式,要在hub 位置配置neighbor 命令,并且都设置Spoke接口的优先级为0使其不参与DR/BDR选举。如果配置为点到多点模式,命令可大为简化。neighbor命令的对象是邻居路由器物理接口的地址,不是选出来的RID
6. 如果一个NBMA链路里有多个IP子网,则主接口网络类型一定是point-to-point,并且一定得用子接口,相同IP子网接口,多于两个就用点到多点子接口,因为点到点子接口只能容纳一个DLCI。
7. 如果在配置帧中继 map时没加关键字broadcast,则只能使用“non-broadcast系列”,即non-broadcast和point-to-multipoint broadcast两种网络类型。