《路由技术详细知识》由会员分享,可在线阅读,更多相关《路由技术详细知识(17页珍藏版)》请在金锄头文库上搜索。
1、资料来源:来自本人网络整理!祝您工作顺利!路由技术详细知识 最简洁的网络可以想象成单线的总线,各个计算机可以通过向总线发送分组以相互通信。但随着网络中的计算机数目增长,这就很不行行了,会产生很多问题: 1、带宽资源耗尽。 2、每台计算机都铺张很多时间处理无关的播送数据。 3、网络变得无法管理,任何错误都可能导致整个网络瘫痪。 4、每台计算机都可以监听到其他计算机的通信。 把网络分段可以解决这些问题,但同时你必需供应一种机制使不同网段的计算机可以相互通信,这通常涉及到在一些ISO网络协议层选择性地在网段间传送数据,我们来看一下网络协议层和路由器的位置。 我们可以看到,路由器位于网络层。本文假定网
2、络层协议为IPv4,因为这是最流行的协议,其中涉及的概念与其他网络层协议是类似的。 一、路由与桥接 路由相对于2层的桥接/交换是高层的概念,不涉及网络的物理详情。在可路由的网络中,每台主机都有同样的网络层地址格式(如IP地址),而无论它是运行在以太网、令牌环、FDDI还是广域网。网络层地址通常由两局部构成:网络地址和主机地址。 网桥只能连接数据链路层一样(或类似)的网络,路由器那么不同,它可以连接任意两种网络,只要主机用法的是一样的网络层协议。 二、连接网络层与数据链路层 网络层下面是数据链路层,为了它们可以互通,需要粘合协议。ARP(地址解析协议)用于把网络层(3层)地址映射到数据链路层(2
3、层)地址,RARP(反向地址解析协议)那么反之。 虽然ARP的定义与网络层协议无关,但它通常用于解析IP地址;最常见的数据链路层是以太网。因此下面的ARP和RARP的例子基于IP和以太网,但要留意这些概念对其他协议也是一样的。 1、地址解析协议 网络层地址是由网络管理员定义的抽象映射,它不去关怀下层是哪种数据链路层协议。然而,网络接口只能依据2层地址来相互通信,2层地址通过ARP从3层地址得到。 并不是发送每个数据包都需要进展ARP恳求,回应被缓存在本地的ARP表中,这样就削减了网络中的ARP包。ARP的维护比拟简单,是一个比拟简洁的协议。 2、简介 假如接口A想给接口B发送数据,并且A只知道
4、B的IP地址,它必需首先查找B的物理地址,它发送一个含有B的IP地址的ARP播送恳求B的物理地址,接口B收到该播送后,向A回应其物理地址。 留意,虽然全部接口都收到了信息,但只有B回应当恳求,这保证了回应的正确且避开了过期的信息。要留意的是,当A和B不在同一网段时,A只向下一跳的路由器发送ARP恳求,而不是挺直向B发送。 接收到ARP分组后处理,留意发送者的对被存到接收ARP恳求的主机的本地ARP表中,一般A想与B通信时,B可能也需要与A通信。 3、IP地址冲突 ARP产生的问题中最常见的是IP地址的冲突,这是由于两个不同的主机IP地址一样产生的,在任何互联的网络中,IP地址必需是唯一的。这时
5、会收到两个ARP回应,分别指出了不同的硬件地址,这是严峻的错误,没有简洁的解决方法。 为了避开出现这类错误,当接口A初试化时,它发送一个含有其IP地址的ARP恳求,假如没有收到回应,A就假定该IP地址没有被用法。我们假定接口B已经用法了该IP地址,那么B就发送一个ARP回应,A就可以知道该IP地址已被用法,它就不能再用法该IP地址,而是返回错误信息。这样又产生一个问题,假设主机C含有该IP地址的映射,是映射到B的硬件地址的,它收到接口A的ARP播送后,更新其ARP表使之指向A的硬件地址。为理解决这个错误,B再次发送一个ARP恳求播送,这样主机C又更新其ARP表再次指向B的硬件地址。这时网络的状
6、态又回到从前的状态,有可能C已经向A发送了应当发送给B的IP分组,这很不幸,但是因为IP供应的是无保证的传输,所以不会产生大的问题。 4、管理ARP缓存表 ARP缓存表是对的列表,依据IP地址索引。该表可以用指令arp来管理,其语法包括: 向表中添加静态表项 - arp -s 从表中删除表项 - arp -d 显示表项 - arp -a ARP表中的动态表项(没有手动参加的表项)通常过一段时间自动删除,这段时间的长度由特定的TCP/IP实现打算。 5、静态ARP地址的用法 静态ARP地址的典型用法是设置独立的打印效劳器,这些设备通常通过telnet来配置,但首先它们需要一个IP地址。没有明显的
7、方法来把此信息告知该设备,好象只能用法其串口来设置。但是,这需要找一个适宜的终端和串行电缆,设置波特率、奇偶校验等,很不便利。 假设我们想给一个打印效劳器设置IP地址P-IP,并且我们知道其硬件地址P-hard,在工作站A上创立一个静态ARP表项把P-IP映射到P-hard,这样,虽然打印效劳器不知道自己的IP地址,但是全部指向P-IP的数据就将被送到P-hard。我们如今就可以telnet到P-IP并配置其IP地址了,然后再删除该静态ARP表项。 有时会在一个子网里配置打印效劳器,而在另一个子网里用法它,方法与上面类似。假设其IP地址为P-IP,我们安排一个本网的临时IP地址T-IP给它,在
8、工作站A上创立临时ARP表项把T-IP映射到P-hard,然后telnet到T-IP,给打印效劳器配以IP地址P-IP。接下来就可以把它放到另一个子网里用法了,别忘了删除静态ARP表项。 6、代理ARP 可以通过用法代理ARP来避开在每台主机上配置路由表,在用法子网时这特殊有用,但留意,不是全部的主机都能理解子网的。根本的思想是即使对于不在本子网的主机也发送ARP恳求,ARP代理效劳器(通常是网关)回应以网关的硬件地址。 代理ARP简化了主机的管理,但是增加了网络的通信量(不是很 明显),并且可能需要较大的ARP缓存,每个不在本网的IP地址都被创立一个表项,都映射到网关的硬件地址。在用法代理A
9、RP的主机看来,世界就象一个大的没有路由器物理网络。 三、IP地址 在可路由的网络层协议中,协议地址必需含有两局部信息:网络地址和主机地址。存贮这种信息最明显的方法是用两个分别的域,这样我们必需考虑到两个域的最大长度,有些协议(如IPX)就是这样的,它在小型和中型的网络里可以工作的很好。 另一种方案是削减主机地址域的长度,如24位网络地址、8位主机地址,这样就有了较多的网段,但每个网段内的主机数目很少。这样一来,对于多于256个主机的网络,就必需安排多个网段,其问题是许多的网络给路由器造成了难以忍受的负担。 IP把网络地址和主机地址一起包装在一个32位的域里,有时主机地址局部很短,有时很长,这
10、样可以有效利用地址空间,削减IP地址的长度,并且网络数目不算多。有两种将主机地址分别出来的方法:基于类的地址和无类别的地址。 1、主机和网关 主机和网关的区分常产生混淆,这是由于主机意义的转变。在RFC中(1122/3和1009)中定义为: 主机是连接到一个或多个网络的设备,它可以向任何一个网络发送和从其接收数据,但它从不把数据从一个网络传向另一个。 网关是连接到多于一个网络的设备,它选择性的把数据从一个网络转发到其它网络。 换句话说,过去主机和网关的概念被人工地区分开来,那时计算机没有足够的力量同时用作主机和网关。主机是用户工作的计算机,或是文件效劳器等。现代的计算机的力量足以同时担当这两种
11、角色,因此,现代的主机定义应当如此: 主机是连接到一个或多个网络的设备,它可以向任何一个网络发送和从其接收数据。它也可以作为网关,但这不是其唯一的目的。 路由器是专用的网关,其硬件经过特别的设计使其能以微小的延迟转发大量的数据。然而,网关也可以是有多个网卡的标准的计算机,其操作系统的网络层有力量转发数据。由于专用的路由硬件较廉价,计算机用作网关已经很少见了,在只有一个拨号连接的小站点里,还可能用法计算机作为非专用的网关。 2、基于类的地址 最初设计IP时,地址依据第一个字节被分成几类: 0: 保存 1-126: A类(网络地址:1字节,主机地址:3字节) 127: 保存 128-191: B类
12、(网络地址:2字节,主机地址:2字节) 192-223: C类(网络地址:3字节,主机地址:1字节) 224-255: 保存 3、子网划分 虽然基于类的地址系统对因特网效劳供应商来说工作得很好,但它不能在一个网络内部做任何路由,其目的是用法其次层(桥接/交换)来导引网络中的数据。在大型的A类网络中,这就成了个特别的问题,因为在大型网络中仅用法桥接/交换使其特别难以管理。在规律上其解决方法是把大网络分割成假设干小的网络,但在基于类的地址系统中这是不行能的。为理解决这个问题,出现了一个新的域:子网掩码。子网掩码指出地址中哪些局部是网络地址,哪些是主机地址。在子网掩码中,二进制1表示网络地址位,二进
13、制0表示主机地址位。传统的各类地址的子网掩码为: A类:255.0.0.0 B类:255.255.0.0 C类:255.255.255.0 假如想把一个B类网络的地址用作C类大小的地址,可以用法掩码255.255.255.0。 用较长的子网掩码把一个网络分成多个网络就叫做划分子网。要留意的是,一些旧软件不支持子网,因为它们不理解子网掩码。例如UNIX的routed路由守护进程通常用法的路由协议是版本1的RIP,它是在子网掩码出现前设计的。 上面只介绍了三种子网掩码:255.0.0.0、255.255.0.0和255.255.255.0,它们是字节对齐的子网掩码。但是也可以在字节中间对其进展划分
14、,这里不进展具体讲解,请参照相关的TCP/IP书籍。 子网使我们可以拥有新的规模的网络,包括很小的用于点到点连接的网络(如掩码255.255.255.252,30位的网络地址,2位的主机地址:两个主机的子网),或中型网络(如掩码255.255.240.0,20位网络地址,12位主机地址:4094个主机的子网)。 留意DNS被设计为只允许字节对齐的IP网络(在in-addr.arpa.域中)。 4、超网(supernetting) 超网是与子网类似的概念-IP地址依据子网掩码被分为独立的网络地址和主机地址。但是,与子网把大网络分成假设干小网络相反,它是把一些小网络组合成一个大网络-超网。 假设如今有16个C类网络,从201.66.32.0到201.66.47.0,它们可以用子网掩码255.255.240.0统一表示为网络201.66.32.0。但是,并不是任意的地址组都可以这样做,例如16个C类网络201.66.71.0到201.66.86.0就不能形成一个统一的网络。不过这其实没关系,只要策略得当,总能找到适宜的一组地址的。 5、可变长子网掩码(VLSM) 假如你想把你的网络分成多个不同大小的子网,可以用法可变长子网掩码,每个子网可以用法不同长度的子