天天看点

网关

中文名称:

网关

英文名称:

gateway;gw

定义:

在采用不同体系结构或协议的网络之间进行互通时,用于提供协议转换、路由选择、数据交换等网络兼容功能的设施。

所属学科:

通信科技(一级学科);通信网络(二级学科)

本内容由全国科学技术名词审定委员会审定公布

百科名片

网关工作原理图

网关(gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。同时,网关也可以提供过滤和安全功能。大多数网关运行在osi 7层协议的顶层--应用层。

目录

概念详解

默认网关

作用及工作流程

当前各类网关协议的区别

网关协议(ggp)

外部网关协议(egp)

内部网关协议(igp)

类型

传输网关

应用网关

解决跨网关技术

产品选用指南

施工、安装要点

内部网关协议rip

协议的局限性:

rip的限制

配置

分析

说明

内部网关协议ospf

链路状态

区域

ospf网络类型

指派路由器

ospf分层路由的思想

ospf中的四种路由器

外部网关协议bgp

egp有三大功能

egp报文类型描述

展开

  大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信

网关

息,也必须经过一道“关口”,这道关口就是网关。顾名思义,网关(gateway)就是一个网络连接到另一个网络的“关口”。

  在osi中,网关有两种:一种是面向连接的网关,一种是无连接的网关。当两个子网之间有一定距离时,往往将一个网关分成两半,中间用一条链路连接起来,我们称之为半网关。

  按照不同的分类标准,网关也有很多种。tcp/ip协议里的网关是最常用的,在这里我们所讲的“网关”均指tcp/ip协议下的网关。

  那么网关到底是什么呢?网关实质上是一个网络通向其他网络的ip地址。比如有网络a和网络b,网络a的ip地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络b的ip地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行tcp/ip通信的,即使是两个网络连接在同一台交换机(或集线器) 上,tcp/ip协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络a中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络b的网关,网络b的网关再转发给网络b 的某个主机(如附图所示)。网络b向网络a转发数据包的过程。

  所以说,只有设置好网关的ip地址,tcp/ip协议才能实现不同网络之间的相互通信。那么这个ip地址是哪台机器的ip地址呢?网关的ip地址是具有路由功能的设备的ip地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。

  在和 novell netware 网络交互操作的上下文中,网关在 windows 网络中使用的服务器信息块 (smb) 协议以及 netware 网络使用的 netware 核心协议 (ncp) 之间起着桥梁的作用。网关也被称为 ip 路由器。

  如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。

  假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的

网关

李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。

  但是你不被允许走出大门,你想与外界发生的一切联系,都必须由门口的李大爷(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家的院子里也有一个看门的王大爷(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的dns服务器。于是你在家里拨通了门口李大爷的电话,有了下面的对话:

  小不点:李大爷,我想找班主任查一下小明的电话号码行吗?

  李大爷:好,你等着。(接着李大爷给你的班主任挂了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99

  小不点:太好了!李大爷,我想找小明,你再帮我联系一下小明吧。

  李大爷:没问题。(接着李大爷向电话局发出了请求接通小明家电话的请求,最后一关当然是被转接到了小明家那个院子的王大爷那里,然后王大爷把电话给转到小明家)

  就这样你和小明取得了联系。

  核心网关为了正确和高效地路由报文需要知道internet其他部分发生的情况,包括路由信息和子网特性。

网关

当一个网关处理重负载而使速度特别慢,并且这个网关是访问子网的惟一途径时,通常使用这种类型的信息,网络中的其他网关能剪裁交通流量以减轻网关的负载。

  ggp主要用于交换路由信息,不要混淆路由信息(包括地址、拓扑和路由延迟细节)和作出路由决定的算法。路由算法在网关内通 常是固定的且不被ggp改变。核心网关之间通过发送ggp信息,并等待应答来通信,之后如果收到含特定信息的应答就更新路由表。

  注意ggp的最新改进spread已经用于internet,但它还不如ggp普及。ggp被称为向量-距离协议。要想有效工作,网关必须含有互联网络上有关所有网关的完整信息。否则,计算到一个目的地的有效路由将是不可能的。因为这个原因,所有的核心网关维护一张internet上所有核心网关的列表。这是一个相当小的表,网关能容易地对其进行处理。

  外部网关协议用于在非核心的相邻网关之间传输信息。非核心网关包含互联网络上所有与其直接相邻的网关的路由信息及其所连机器信息,但是它们不包含 internet上其他网关的信息。对绝大多数egp而言,只限制维护其服务的局域网或广域网信息。这样可以防止过多的路由信息在局域网或广域网之间传输。egp强制在非核心网关之间交流路由信息。

  由于核心网关使用ggp,非核心网关使用egp,而二者都应用在internet上,所以必须有某些方法使二者彼此之间能够通信。internet使任何自治(非核心)网关给其他系统发送“可达”信息,这些信息至少要送到一个核心网关。如果有一个更大的自治网络,常常认为有一个网关来处理这些可达信息。

  和ggp一样,egp使用一个查询过程来让网关清楚它的相邻网关并不断地与其相邻者交换路由和状态信息。egp是状态驱动的协议,意思是说它依赖于一个反映网关情况的状态表和一组当状态表项变化时必须执行的一组操作。

  有几种内部网关协议可用,最流行的是rip和hello,另一个协议称为开放式最短路径优先协议(ospf),这些协议没有一个是占主导地位的,但是rip可能是最常见的igp协议。选择特定的igp以网络体系结构为基础。rip和hello协议都是计算到目的地的距离,它们的消息包括机器标识和到机器的距离。

  一般来讲,由于它们的路由表包含很多项,因此消息比较长。rip和hello一直维护相邻网关之间的连接性以确保机器是活跃的。路由信息协议使用广播技术。意思是说网关每隔一定时间要把路由表广播给其他网关。这也是rip的一个问题,因为这会增加网络流量,降低网络性能。hello协议与rip的不同之处在于hello使用时间而不是距离作为路由因素。这要求网关对每条路由有合理的准确时间信息。由于这个原因,所以hello协议依赖于时钟同步消息。

  开放式最短路径优先协议是由internet工程任务组开发的协议,希望它能成为居于主导地位的igp。用“最短路径”来描述协议的路由过程不准确。更好一些的名字是“最优路径”, 这其中要考虑许多因素来决定到达目的地的最佳路由。

  传输网关用于在2个网络间建立传输连接。利用传输网关,不同网络上的主机间可以建立起跨越多个网络的

网关

、级联的、点对点的传输连接。例如通常使用的路由器就是传输网关,“网关”的作用体现在连接两个不同的网段,或者是两个不同的路由协议之间的连接,如rip,eigrp,ospf,bgp等。

  应用网关在应用层上进行协议转换。例如,一个主机执行的是iso电子邮件标准,另一个主机执行的是internet 电子邮件标准,如果这两个主机需要交换电子邮件,那么必须经过一个电子邮件网关进行协议转换,这个电子邮件网关是一个应用网关。再例如,在和 novell netware 网络交互操作的上下文中,网关在 windows 网络中使用的服务器信息块 (smb) 协议以及 netware 网络使用的 netware 核心协议 (ncp) 之间起着桥梁的作用。ncp是工作在osi第七层的协议,用以控制客户站和服务器间的交互作用,主要完成不同方式下文件的打开、关闭、读取功能。

  现在的网关产品分类越来越细了,有信令网关,中继网关,还有接入网关:

信令网关sg,主要完成7号信令网与ip网之间信令消息的中继,在3g初期,对于完成接入侧到核心网交换之间的消息的转接(3g之间的ranap消息,3g与2g之间的bssap消息),另外还能完成2g的msc/gmsc与软交换机之间isup消息的转接。

中继网关又叫ip网关,同时满足电信运营商和企业需求的voip设备。中继网关(ip网关)由基于中继板和媒体网关板建构,单板最多可以提供128路媒体转换,两个以太网口,机框采用业界领先的cpci标准,扩容方便具有高稳定性、高可靠性、高密度、容量大等特点.

接入网关是基于ip的语音/传真业务的媒体接入网关,提供高效、高质量的话音服务,为运营商、企业、小区、住宅用户等提供voip解决方案。

  除此之外,网关还可以分为:协议网关、应用网关和安全网关

协议网关

  协议网关通常在使用不同协议的网络区域间做协议转换。这一转换过程可以发生在osi参考模型的第2层、第3层或2、3层之间。 但是有两种协议网关不提供转换的功能:安全网关和管道。由于两个互连的网络区域的逻辑差异, 安全网关是两个技术上相似的网络区域间的必要中介。如私有广域网和公有的因特网。

  应用网关是在使用不同数据格式间翻译数据的系统。典型的应用网关接收一种格式的输入,将之翻译, 然后以新的格式发送。输入和输出接口可以是分立的也可以使用同一网络连接。

  应用网关也可以用于将局域网客户机与外部数据源相连,这种网关为本地主机提供了与远程交互式应用

网关

的连接。 将应用的逻辑和执行代码置于局域网中客户端避免了低带宽、高延迟的广域网的缺点,这就使得客户端的响应时间更短。 应用网关将请求发送给相应的计算机,获取数据,如果需要就把数据格式转换成客户机所要求的格式。

安全网关

  安全网关是各种技术有趣的融合,具有重要且独特的保护作用,其范围从协议级过滤到十分复杂的应用级过滤。

  网关(gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连。 可以说,网关是一种充当转换重任的计算机系统或设备。在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。同时,网关也可以提供过滤和安全功能。大多数网关运行在osi 7层协议的顶层——应用层。

  现行的ipv4的ip地址是32位的,根据头几位再划分为a、b、c三类地址;但由于internet的迅猛发展,ip资源日渐枯竭,可供分配的ip地越来越少,跟一日千里的internet发展严重冲突,在ipv6还远未能全面升级的情况下,惟有以代理服务器的方式,实行内部网地址跟公网地址进行转化而实现接入internet。

  中介作用的代理服务器就是一个网关,也就是这个网关带给现阶段的多媒体通讯系统无尽的烦恼。在ip资源可怜的情况下,惟有以网关甚至多层网关的方式接入宽带网, 因为多媒体通讯系统的协议如h.323等要进行业务的双方必须有一方有公网的ip地址,但是现在的宽带有几个用户能符合这个要求?microsoft的netmeeting等等多媒体通讯系统就是处于这种尴尬的位置;跨网关成为头疼的难题。

  跨网关: 网络数据通过层层网关,受制于网关节点速度,网络速度大大降低。 跨网关技术基于底层网络协议,突破网关瓶颈,实现客户点对点交流。

  网关的主要功能:网关(gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是最

网关

复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连。

  网关主要规格及参数:

  安全网关主要接口类型: rj45主要接口数目: 3口。

  主要参数:支持协议: tcp/ip协议,icmp协议,ripv2协议,静态路由协议,动态路由协议,pap协议,chap协议,nat协议,pppoe协议,250k个并发会话数,新建会话数7k/秒,防火墙性能120mbps,40g硬盘,100条vpn隧道数,3des加密性能30mbps,病毒邮件扫描25000封 /小时,垃圾邮件15000封/小时,http稍描1mb/s; 内置防火墙。

  网关选用要点及订货主要技术条件

  网关是将两个使用不同协议的网络段连接在一起的设备。它的作用就是对两个网络段中的使用传输协议的数据进行互相的翻译转换。比如:一个企业内部局域网就常常需要通过网关发送电子邮件到internet的相关地址。

  1) 网关具有高可扩展性

  2) 网关能够多协议支持,,能够对smtp、http、ftp和pop3通信进行扫描,对网络和用户应有的保护功能。

  3) 网关能透明的联机扫描,保存诸如源ip和mac地址等信息。透明扫描选项在易于安装的同时,还可以让您对内部web服务器进行保护。

  4) 网关能够进行内容管理,防止用户接收或发送带有某种类型附件的邮件、容量过大的邮件或带有过多、过大附件的邮件。

  5) 检测垃圾邮件与反中继。

  6) 网关订货主要技术条件能满足不同通信协议的网络互连,使文件可以在这些网络之间传输,阻止黑客入侵、检查病毒、身份认证与权限检查等很多安全功能,需要vpn完成或在同vpn与相关产品协同完成。

  7) 主机房的网关选择规格尺寸要能安装在主机柜中。

  具体施工做法参见国家建筑标准设计图集《智能家居控制系统施工图集 03x602》及国际标准规范 《eia/tia569 商务楼通信通道和空间标准》。

  rip协议的全称是路由信息协议,它是一种内部网关协议(igp)用于一个自治系统(as)内的路由信息的传递。rip协议是基于距离矢量算法的,它使用“跳数”,即metric来衡量到达目标地址的路由距离。协议中规定,一条有效的路由信息的度量(metric)不能超过15,这就使得该协议不能应用于很大型的网络,应该说正是由于设计者考虑到该协议只适合于小型网络所以才进行了这一限制。对于metric为16的目标网络来说,即认为其不可到达。

  该路由协议应用到实际中时,很容易出现“计数到无穷大”的现象,这使得路由收敛很慢,在网络拓扑结构

网关

变化以后需要很长时间路由信息才能稳定下来。该协议以跳数,即报文经过的路由器个数为衡量标准,并以此来选择路由,这一措施欠合理性,因为没有考虑网络延时,可靠性,线路负荷等因素对传输质量与速度的影响。rip协议的实现:rip根据v-d算法的特点,将协议的参加者分为主动机和被动机两种。主动机主动向外广播路由刷新报文,被动机被动地接收路由刷新报文。一般情况下,主机作为被动机,路由器则既是主动机又是被动机,即在向外广播路由刷新报文的同时,接受来自其它主动机的v-d报文,并进行路由刷新。rip规定,路由器每30秒向外广播一个v-d报文,报文信息来自本地路由表。rip的v-d报文中,其距离以驿站计:与信宿网络直接相连的路由器规定为一个驿站,相隔一个路由器则为两个驿站……以此类推。一条路由的距离为该路由(从信源机到信宿机)上的路由器数。为防止寻径环长期存在,rip规定,长度为16的路由为无限长路由,即不存在的路由。所以一条有效的路由长度不得超过15。正是这一规定限制了rip的使用范围,使rip局限于中小型的网络网点中。为了保证路由的及时有效性,rip采用触发刷新技术和水平分割法。当本地路由表发生修改时,触发广播路由刷新报文,以迅速达到最新路由的广播和全局路由的有效。水平分割法是指当路由器从某个网络接口发送rip路由刷新报文时,其中不包含从该接口获取的路由信息。这是由于从某网络接口获取的路由信息对于该接口来说是无用信息,同时也解决了两路由器间的慢收敛问题。对于局域网的路由,rip规定了路由的超时处理。主要是考虑到这样一个情况,如果完全根据v-d算法,一条路由被刷新是因为出现一条路由开销更小的路由,否则路由会在路由表中一直保存下去,即使该路由崩溃。这势必造成一定的错误路由信息。为此,rip规定,所有机器对其寻径表中的每一条路由都设置一个时钟,每增加一条新路由,相应设置一个新时钟。在收到的v-d报文中假如有关于此路由的表目,则将时钟清零,重新计时。假如在120秒内一直未收到该路由

网关

的刷新信息,则认为该路由崩溃,将其距离设为16,广播该路由信息。如果再过60后仍未收到该路由的刷新信息,则将它从路由表中删除。如果某路由在距离被设为16后,在被删除前路由被刷新,亦将时钟清零,重新计时,同时广播被刷新的路由信息。至于路由被删除后是否有新的路由来代替被删除路由,取决于去往原路由所指信宿有无其它路由。假如有,相应路由器会广播之。机器一旦收到其它路由的信息,自然会利用v-d算法建立一条新路由。否则,去往原信宿的路由不再存在。 rip启动和运行的整个过程如下所描述:某路由器刚启动rip时,以广播的形式向相邻路由器发送请求报文,相邻路由器的rip收到请求报文后,响应请求,回发包含本地路由表信息的响应报文。rip收到响应报文后,修改本地路由表的信息,同时以触发修改的形式向相邻路由器广播本地路由修改信息。相邻路由器收到触发修改报文后,又向其各自的相邻路由器发送触发修改报文。在一连串的触发修改广播后,各路由器的路由都得到修改并保持最新信息。同时,rip每 30秒向相邻路由器广播本地路由表,各相邻路由器的rip在收到路由报文后,对本地路由进行的维护,在众多路由中选择一条最佳路由,并向各自的相邻网广播路由修改信息,使路由达到全局的有效。同时rip采取一种超时机制对过时的路由进行超时处理,以保证路由的实时性和有效性。rip作为内部路由器协议,正是通过这种报文交换的方式,提供路由器了解本自治系统内部个网络路由信息的机制。rip-2支持版本1和版本2两种版本的报文格式。在版本2中,rip还提供了对子网的支持和提供认证报文形式。版本2的报文提供子网掩码域,来提供对子网的支持;另外,当报文中的路由项地址域值为0xffff时,默认该路由项的剩余部分为认证。rip2对拨号网的支持则是参考需求rip和触发rip的形式经修改而加入的新功能。这时,我们只是要求在拨号网拨通之后对路由进行30秒一次的广播,而在没拨通时并不作如是要求,这是根据具体情况变通的结果。

  虽然rip有很长的历史,但它还是有自身的限制。它非常适合于为早期的网络互联计算路由;然而,技术进步已极大地改变了互联网络。建造和使用的方式。因此,rip会很快被今天的互联网络所淘汰。rip的一些最大限制是:

  ·不能支持长于15跳的路径。

  ·依赖于固定的度量来计算路由。

  ·对路由更新反应强烈。

  ·相对慢的收敛。

  ·缺乏动态负均衡支持。 rip协议配置:rip(routinginformationprotocol)是应用较早、使用较普遍的内部网关协议(interiorgatewayprotocol,简称igp),适用于小型同类网络,是典型的距离向量(distance- vector)协议。文档见rfc1058、rfc1723。rip通过广播udp报文来交换路由信息,每30秒发送一次路由信息更新。rip提供跳跃计数(hopcount)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则rip认为两个路由是等距离的。rip最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。

  1、有关命令

  --------------------------------------------

  任务命令

  指定使用rip协议routerrip

  指定rip版本version{1|2}1

  指定与该路由器相连的网络networknetwork

  ---------------------------------------------

  注:1、cisco的rip版本2支持验证、密钥管理、路由汇总、无类域间路由(cidr)和变长子网掩码(vlsms)

  2、举例

  router1:

  routerripversion2network192.200.10.0network192.20.10.0!相关调试命令:showipprotocol

网关

showiproute在全局设置模式下:1.启动rip路由routerrip2.设置参与rip路由的子网network子网地址3.允许在非广播型网络中进行rip路由广播neighbor相邻路由器相邻端口的ip地址4.设置rip的版本rip路由协议有2个版本,在与其它厂商路由器相连时,注意版本要一致,缺省状态下,cisco路由器接收rip版本1和2的路由信息,但只发送版本1的路由信息,设置rip的版本vesion1或2。另外,还可以控制特定端口发送或接收特定版本的路由信息。1.只在特定端口发版本1或2的信息,在端口设置模式下ripsendversion1或22.同时发送版本1和2的信息 ipripsendreceive1or23.在特定端口接受版本1或2的路由信息ipripreceive1or24.同时接受版本1和2的路由信息 ipripreceive1or2选择路由协议几点建议:1.在大型网络中,建议使用ospf、eigrp。2.如果网络中含有变长了网掩码(vism)不能使用igrp,rip版本1,可以使用rip版本 2,ospf,eigrp或静态路由。3.如果使用路由安全设置可以使用rip版本1或ospf。4.选用ospf,eigrp在系统稳定后所占带宽比 rip,igrp少得多,igrp比rip所占带宽也少。5.综合使用动态路由,静态路由,缺省路由,以保证路由的冗余。6.在拨号线路上尽量使用静态路由,以节省费用。7.在小型网络上数据量不大的情况下,且不需要高可性,广域网线路为x.25svc时,建议用静态路由。

  rip配置事例:1、在下面的网络里,有三台路由器,所有的路由器都运行rip协议,仅要实现三台路由器互通

  joe(config)#routerrip

  joe(config-router-rip)#network192.168.0.0/24

网关

joe(config-router-rip)#network192.168.1.0/24 hamer(config)#routerrip

  hamer(config-router-rip)#network192.168.1.0/24

  hamer(config-router-rip)#network133.81.1.0/24

  tom(config)#routerrip

  tom(config-router-rip)#network192.168.1.0/24

  tom(config-router-rip)#network133.81.2.0/24

  2、在下面的网络里,有三台路由器,所有的路由器都运行rip协议,要实现:

  (1)ros的e0端口接收hata和bito发来的路由更新报文。

  (2)ros在e0发送的更新报文仅发送给bito。配置:

  ros的配置如下:

  ros(config)#routerrip

  ros(config-router-rip)#network192.168.1.0/24

  ros(config-router-rip)#network10.8.11.0/24

  ros(config-router-rip)#passive-interfaceeth0/0

  ros(config-router-rip)#neighbor192.168.1.35

  bito的配置如下:

  bito(config)#routerrip

  bito(config-router-rip)#network192.168.1.0/24

网关

bito(config-router-rip)#network137.1.1.3/24

  hata的配置如下:

  hata(config)#routerrip

  hata(config-router-rip)#network192.168.1.0/24

  3、如下图所示:有三台路由器,melu和haha现在正常运行,现要添加一台名称为toba的hos路由器使toba和haha互相联通,并且不能破坏现在melu和haha的运行状态。

  已知melu和haha运行的协议为:

  (1)haha上运行的是ripv1,无认证配置。

  (2)melu上运行的是ripv2,无认证配置。

  hos默认值是,rip发送版本1,接收版本1和版本2的update报文。这样我们只要在toba上运行起rip,并且指定192.168.0.1/24为rip活动网络范围,toba就可以和haha建立联通了。由于melu运行的版本为ripv2,只要让toba发送ripv2报文就可以了。

  因而,toba可以配置为:

  toba(config)#routerrip

  toba(config-router-rip)#network192.168.0.0/24

网关

toba(config-router-rip)#network10.8.11.0/24

  toba(config-router-rip)#exit

  toba(config)#interfaceeth0/0

  toba(config-if-eth0/0)#ipripsendversion2 4、如下图所示:有两台hos路由器,现在要求实现wed和hax联通并且要有md5认证。

  分析:

  有认证的情况下实现两台路由器的互联,这两台路由器必须配置相同的认证方式和密钥才能进行双方的路由的交换,值得注意的是双方必须发送版本2

  hax(config)#keychainwan

  hax(config-keychain)#key1

  hax(config-keychain-key)#key-stringwan

  hax(config-keychain-key)#exit

  hax(config-keychain)#exit

  hax(config)#interfaceeth0/0

  hax(config-if-eth0/0)#ipripauthenticationkey-chainwan

网关

hax(config-if-eth0/0)#ipripauthenticationmodemd5

  hax(config-if-eth0/0)#ipripsendversion2

  hax(config-if-eth0/0)#ipripreceiveversion2

  5、监视和维护rip

  上面的列表显示了rip路由表的详细信息。第一列显示的是每条路由来自哪种方式。如:rip表示是本路由从其它路由器学习到的路由,connect表示该路由是直连路由。第二列的network指定了该路由目标地址范围。第三列nexthop是本路由的下一条地址。第四列metric是本路由的度量值。第五列from标明本路由来自何处。第六列time用来显示当前定时器的已经定时时间长度,当路由没有过期的时候,显示的是无效定时时间长度,当路由过期时,显示的是删除定时器的时间长度。

  ospf(openshortestpathfirst)是一个内部网关协议(interiorgatewayprotocol、简称igp),用于在单一自治系统(autonomoussystem、as)内决策路由。与rip相对,ospf是链路状态路由协议,而rip是距离向量路由协议。链路是路由器接口的另一种说法,因此ospf也称为接口状态路由协议。ospf通过路由器之间通告网络接口的状态来建立链路状态数据库,生成最短路径树,每个ospf路由器使用这些最短路径构造路由。内部网关协议(interiorgatewayprotocols,igp)用在一个域中交换路由选择信息,如路由选择信息协议(rip)和优先开放最短路径协议(ospf)。ospf是与osi的is-is协议十分相似的内部路由选择协议。

  ospf是功能最强大、特点最丰富的开放式路由协议之一。它的复杂性也是其弱点来源,因为设计、建造和操

网关

作一个ospf互联网络需要比使用几乎每一种其他路由协议更多的专业知识和精力。采用路由耗费的缺省值可以极大地简化ospf网络设计。随着关于ospf及网络操作特点知识的增加,用户能够慢慢地通过控制ospf变量来优化网络性能。必须小心地设计区和网络拓扑。做得好,ospf会使网络用户得到优异的性能和快速的收敛速度。bgp用于特大型网络如internet的核心。

  ospf是一种典型的链路状态路由协议。采用ospf的路由器彼此交换并保存整个网络的链路信息,从而掌握全网的拓扑结构,独立计算路由。因为rip路由协议不能服务于大型网络,所以,ietf的igp工作组特别开发出链路状态协议——ospf。目前广为使用的是ospf第二版,最新标准为rfc2328。ospf作为一种内部网关协议(interiorgatewayprotocol,igp),用于在同一个自治域(as)中的路由器之间发布路由信息。区别于距离矢量协议 (rip),ospf具有支持大型网络、路由收敛快、占用网络资源少等优点,在目前应用的路由协议中占有相当重要的地位。

  ospf路由器收集其所在网络区域上各路由器的连接状态信息,即链路状态信息(link-state),生成链路状态数据库(link-statedatabase)。路由器掌握了该区域上所有路由器的链路状态信息,也就等于了解了整个网络的拓扑状况。ospf路由器利用“最短路径优先算法(shortestpathfirst,spf)”,独立地计算出到达任意目的地的路由。

  ospf协议引入“分层路由”的概念,将网络分割成一个“主干”连接的一组相互独立的部分,这些相互独立的部分被称为“区域”(area),“主干”的部分称为“主干区域”。每个区域就如同一个独立的网络,该区域的ospf路由器只保存该区域的链路状态。每个路由器的链路状态数据库都可以保持合理的大小,路由计算的时间、报文数量都不会过大。

  根据路由器所连接的物理网络不同,ospf将网络划分为四种类型:广播多路访问型(broadcastmultiaccess)、非广播多路访问型(nonebroadcastmultiaccess,nbma)、点到点型(point-to-point)、点到多点型(point-to-multipoint)。广播多路访问型网络如:ethernet、tokenring、fddi。nbma型网络如:framerelay、x.25、smds。point-to-point型网络如:ppp、hdlc。

  (dr)和备份指派路由器(bdr):在多路访问网络上可能存在多个路由器,为了避免路由器之间建立完全相邻关系而引起的大量开销,ospf要求在区域中选举一个 dr。每个路由器都与之建立完全相邻关系。dr负责收集所有的链路状态信息,并发布给其他路由器。选举dr的同时也选举出一个bdr,在dr失效的时候,bdr担负起dr的职责。点对点型网络不需要dr,因为只存在两个节点,彼此间完全相邻。协议组成ospf协议由hello协议、交换协议、扩散协议组成。本文仅介绍hello协议,其他两个协议可参考rfc2328中的具体描述。当路由器开启一个端口的ospf路由时,将会从这个端口发出一个 hello报文,以后它也将以一定的间隔

网关

周期性地发送hello报文。ospf路由器用hello报文来初始化新的相邻关系以及确认相邻的路由器邻居之间的通信状态。对广播型网络和非广播型多路访问网络,路由器使用hello协议选举出一个dr。在广播型网络里,hello报文使用多播地址224.0.0.5周期性广播,并通过这个过程自动发现路由器邻居。在nbma网络中,dr负责向其他路由器逐一发送hello报文。 第一步:建立路由器的邻接关系:所谓“邻接关系”(adjacency)是指ospf路由器以交换路由信息为目的,在所选择的相邻路由器之间建立的一种关系。路由器首先发送拥有自身id信息(loopback端口或最大的ip地址)的hello报文。与之相邻的路由器如果收到这个hello报文,就将这个报文内的id信息加入到自己的hello报文内。如果路由器的某端口收到从其他路由器发送的含有自身id信息的hello报文,则它根据该端口所在网络类型确定是否可以建立邻接关系。在点对点网络中,路由器将直接和对端路由器建立起邻接关系,并且该路由器将直接进入到第三步操作:发现其他路由器。若为multiaccess网络,该路由器将进入选举步骤。

  网关

  第二步:选举dr/bdr:不同类型的网络选举dr和bdr的方式不同。multiaccess网络支持多个路由器,在这种状况下,ospf需要建立起作为链路状态和lsa更新的中心节点。选举利用hello报文内的id和优先权(priority)字段值来确定。优先权字段值大小从0到255,优先权值最高的路由器成为dr。如果优先权值大小一样,则id值最高的路由器选举为dr,优先权值次高的路由器选举为bdr。优先权值和id值都可以直接设置。 第三步:发现路由器:在这个步骤中,路由器与路由器之间首先利用hello报文的id信息确认主从关系,然后主从路由器相互交换部分链路状态信息。每个路由器对信息进行分析比较,如果收到的信息有新的内容,路由器将要求对方发送完整的链路状态信息。这个状态完成后,路由器之间建立完全相邻(fulladjacency)关系,同时邻接路由器拥有自己独立的、完整的链路状态数据库。在multiaccess网络内,dr与bdr互换信息,并同时与本子网内其他路由器交换链路状态信息。point-to-point或point-to-multipoint网络中,相邻路由器之间信息。

  第四步:选择适当的路由器:当一个路由器拥有完整独立的链路状态数据库后,它将采用spf算法计算并创建路由表。ospf路由器依据链路状态数据库的内容,独立地用spf算法计算出到每一个目的网络的路径,并将路径存入路由表中。ospf利用量度(cost)计算目的路径,cost最小者即为最短路径。在配置ospf路由器时可根据实际情况,如链路带宽、时延或经济上的费用设置链路cost大小。cost越小,则该链路被选为路由的可能性越大。

  第五步:维护路由信息:当链路状态发生变化时,ospf 通过flooding过程通告网络上其他路由器。ospf路由器接收到包含有新信息的链路状态更新报文,将更新自己的链路状态数据库,然后用spf算法重新计算路由表。在重新计算过程中,路由器继续使用旧路由表,直到spf完成新的路由表计算。新的链路状态信息将发送给其他路由器。值得注意的是,即使链路状态没有发生改变,ospf路由信息也会自动更新,默认时间为30分钟。ospf路由器之间使用链路状态通告(lsa) 来交换各自的链路状态信息,并把获得的信息存储在链路状态数据库中。各ospf路由器独立使用spf算法计算到各个目的地址的路由。ospf协议支持分层路由方式,这使得它的扩展能力远远超过rip协议。当ospf网络扩展到100、500甚至上千个路由器时,路由器的链路状态数据库将记录成千上万条链路信息。为了使路由器的运行更快速、更经济、占用的资源更少,网络工程师们通常按功能、结构和需要把ospf网络分割成若干个区域,并将这些区域和主干区域根据功能和需要相互连接从而达到分层的目的。

  ospf把一个大型网络分割成多个小型网络的能力被称为分层路由,这些被分割出来的小型网络就称为“区域”(area)。由于区域内部路由器仅与同区域的路由器交换lsa信息,这样lsa报文数量及链路状态信息库表项都会极大减少,spf计算速度因此得到提高。多区域的ospf必须存在一个主干区域,主干区域负责收集非主干区域发出的汇总路由信息,并将这些信息返还给到各区域。ospf区域不能随意划分,应该合理地选择区域边界,使不同区域之间的通信量最小。但在实际应用中区域的划分往往并不是根据通信模式而是根据地理或政治因素来完成的。

  在ospf多区域网络中,路由器可以按不同的需要同时成为以下四种路由器中的几种:1、内部路由器:所有端口在同一区域的路由器,维护一个链路状态数据库。2、主干路由器:具有连接主干区域端口的路由器。3、区域边界路由器(abr):具有连接多区域端口的路由器,一般作为一个区域的出口。abr为每一个所连接的区域建立链路状态数据库,负责将所连接区域的路由摘要信息发送到主干区域,而主干区域上的abr则负责将这些信息发送到各个区域。4、自治域系统边界路由器(asbr):至少拥有一个连接外部自治域网络(如非ospf的网络)端口的路由器,负责将非ospf网络信息传入ospf网络。 ospf路由器之间交换链路状态公告(lsa)信息。ospf的lsa中包含连接的接口、使用的metric及其他变量信息。ospf路由器收集链接状态信息并使用spf算法来计算到各节点的最短路径。lsa也有几种不同功能的报文,在这里简单地介绍一下:

  lsatype1:由每台路由器为所属的区域产生的lsa,描述本区域路由器链路到该区域的状态和代价。一个边界路由器可能产生多个lsatype1。

  lsatype2:由dr产生,含有连接某个区域路由器的所有链路状态和代价信息。只有dr可以监测该信息。

  lsatype3:由abr产生,含有abr与本地内部路由器连接信息,可以描述本区域到主干区域的链路信息。它通常汇总缺省路由而不是传送汇总的ospf信息给其他网络。

  lsatype4:由abr产生,由主干区域发送到其他abr,含有asbr的链路信息,与lsatype3的区别在于type4描述到ospf网络的外部路由,而type3则描述区域内路由。

  lsatype5:由asbr产生,含有关于自治域外的链路信息。除了存根区域和完全存根区域,lsatype5在整个网络中发送。

  lsatype6:多播ospf(mosf),mosf可以让路由器利用链路状态数据库的信息构造用于多播报文的多播发布树。

  lsatype7:由asbr产生的关于nssa的信息。lsatype7可以转换为lsatype5。

编辑本段

  两个交换选路信息的路由器若分属两个自治系统,则被称为外部邻站(exteriorneighbors),但它们若同属一个自治系统,则称为内部邻站(interiorneighbors)。外部邻站使用的向其他自治系统通告可达信息的协议被称为外部网关协议egp(exteriorgatewayprotocol),使用该协议的路由器被称为外部路由器(exteriorrouter)。在internet网中,egp显得尤为重要,因为与之相连的自治系统使用它向核心系统通告可达信息。

  第一个是它支持邻居获取(neighboracquisition)机制,即允许一个路由器请求另一个路由器同意交换可达信息。我们可以说,一个路由器获得了(acquire)一个egp对等路由器(egppeer)或一个egp邻站(egpneighbor)。egp对等路由器仅在交换选路信息的意义上来说是邻站,而不论其地理位置是否邻近。第二,路由器持续地测试其egp邻站是否能够响应。第三,egp邻站周期性地传送选路更新报文(routingupdatemessage)来交换网络可达信息。

  外部网关协议用于在非核心的相邻网关之间传输信息。非核心网关包含互联网络上所有与其直接相邻的网关的路由信息及其所连机器信息,但是它们不包含internet上其他网关的信息。对绝大多数egp而言,只限制维护其服务的局域网或广域网信息。这样可以防止过多的路由信息在局域网或广域网之间传输。egp强制在非核心网关之间交流路由信息。

  由于核心网关使用ggp,非核心网关使用egp,而二者都应用在internet上,所以必须有某些方法使二者彼此之间能够通信。internet使任何自治(非核心)网关给其他系统发送“可达”信息,这些信息至少要送到一个核心网关。假如有一个更大的自治网络,经常认为有一个网关来处理这些可达信息。和ggp一样,egp使用一个查询过程来让网关清楚它的相邻网关并不断地与其相邻者交换路由和状态信息。egp是状态驱动的协议,意思是说它依靠于一个反映网关情况的状态表和一组当状态表项变化时必须执行的一组操作。egp报文首部:为了实现上述三个基本功能,egp定义了下表所列的九种报文类型:

  acquisitionrequest(获取请求)请求路由器成为邻站(对等路由器)

  acquisitionconfirm(获取证实)对获取请求的肯定响应

  acquisitionrefuse(获取拒绝)对获取请求的否定响应

  ceaserequest(中止请求)请求中止邻站关系

  ceaseconfirm(中止证实)对中止请求的证实响应

  hello(你好)请求邻站回答是否活跃

  iheardyou(我听见你)对hello报文的回答

  pollrequest(轮询请求)请求更新网络的选路

  routingupdate(选路更新)网络可达信息

  error(差错)对不正确报文的响应

  所有的egp报文都有固定的首都用于说明报文类型。首部中的版本(version)字段取整数值,指出该报文使用的egp的版本号。接收方检测版本号以确认双方使用相同版本的协议。类型(type)字段指出报文的类型,而代码(code)字段给出了子类型。状态(status)字段包含了与本报文有关的状态信息。egp使用校验和字段来确认报文的正确到达。其算法与ip的校验和算法相同。它把整个egp报文当做16比特整数的序列,使用各个整数的二进制反码和的二进制反码作为校验和。计算校验和之前把校验和(checksum)字段初始化为零,通过填充0来把报文长度变为16比特的整数倍。自治系统号(autonomoussystemnum)字段给出了表示发送该报文的路由器所在的自治系统的编号,而序号(sequencenumber)用于收发双方进行联系。路由器请求邻站时赋一个初始序号,以后每次发送报文时将序号增加。邻站回送最近收到的序号值,发送方便用这个回送值与发送时的值作一比较来确保报文的正确性。

继续阅读