路由器:路由器综述




  最简单网络可以想象成单线总线各个计算机可以通过向总线发送分组以互相通信但随着网络中计算机数目增长这就很不可行了会产生许多问题:
  
  1、带宽资源耗尽
  2、每台计算机都浪费许多时间处理无关广播数据
  3、网络变得无法管理任何都可能导致整个网络瘫痪
  4、每台计算机都可以监听到其他计算机通信
  
  把网络分段可以解决这些问题但同时你必须提供种机制使区别网段计算机可以互相通信这通常涉及到在些ISO网络层选择性地在网段间传送数据我们来看下网络层和器位置
  
  我们可以看到器位于网络层本文假定网络层为IPv4这是最流行协议其中涉及概念和其他网络层协议是类似
  
  、路由和桥接
  路由相对于2层桥接/是高层概念不涉及网络物理细节在可路由网络中每台主机都有同样网络层地址格式(如IP地址)而无论它是运行在以太网、令牌环、FDDI还是广域网网络层地址通常由两部分构成:网络地址和主机地址
  
  网桥只能连接数据链路层相同(或类似)网络路由器则区别它可以连接任意两种网络只要主机使用是相同网络层协议
  
   2、连接网络层和数据链路层
  网络层下面是数据链路层为了它们可以互通需要“粘合”协议ARP(地址解析协议)用于把网络层(3层)地址映射到数据链路层(2层)地址RARP(反向地址解析协议)则反的
  
  虽然ARP定义和网络层协议无关但它通常用于解析IP地址;最常见数据链路层是以太网因此下面ARP和RARP例子基于IP和以太网但要注意这些概念对其他协议也是
  
  1、地址解析协议
  
  网络层地址是由网络管理员定义抽象映射它不去关心下层是哪种数据链路层协议然而网络接口只能根据2层地址来互相通信2层地址通过ARP从3层地址得到
  
  并不是发送每个数据包都需要进行ARP请求回应被缓存Cache在本地ARP表中这样就减少了网络中ARP包ARP维护比较容易个比较简单协议
  
  2、介绍
  
  如果接口A想给接口B发送数据并且A只知道BIP地址它必须首先查找B物理地址它发送个含有BIP地址ARP广播请求B物理地址接口B收到该广播后向A回应其物理地址
  
  注意虽然所有接口都收到了信息但只有B回应该请求这保证了回应正确且避免了过期信息要注意当A和B不在同网段时A只向下路由器发送ARP请求而不是直接向B发送
  
  下图为接收到ARP分组后处理注意发送者对被存到接收ARP请求主机本地ARP表中般A想和B通信时B可能也需要和A通信
  
  3、IP地址冲突
  
  ARP产生问题中最常见是IP地址冲突这是由于两个区别主机IP地址相同产生在任何互联网络中IP地址必须是唯这时会收到两个ARP回应分别指出了区别硬件地址这是严重没有简单解决办法
  
  为了避免出现这类当接口A初试化时它发送个含有其IP地址ARP请求如果没有收到回应A就假定该IP地址没有被使用我们假定接口B已经使用了该IP地址那么B就发送个ARP回应A就可以知道该IP地址已被使用它就不能再使用该IP地址而是返回信息这样又产生个问题假设主机C含有该IP地址映射是映射到B硬件地址它收到接口AARP广播后更新其ARP表使的指向A硬件地址为了解决这个B再次发送个ARP请求广播这样主机C又更新其ARP表再次指向B硬件地址这时网络状态又回到先前状态有可能C已经向A发送了应该发送给BIP分组这很不幸但是IP提供是无保证传输所以不会产生大问题
  
  4、管理ARP缓存Cache表
  
  ARP缓存Cache表是硬件地址>对列表根据IP地址索引该表可以用命令arp来管理其语法包括:
  
  向表中添加静态表项 -- arp -s
  从表中删除表项 -- arp -d
  显示表项 -- arp -a
  ARP表中动态表项(没有手动加入表项)通常过段时间自动删除这段时间长度由特定TCP/IP实现决定
  
  5、静态ARP地址使用
  
  静态ARP地址典型使用是设置独立打印这些设备通常通过telnet来配置但首先它们需要个IP地址没有明显思路方法来把此信息告诉该设备好象只能使用其串口来设置但是这需要找个合适终端和串行电缆设置波特率、奇偶校验等很不方便
  
  假设我们想给个打印设置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给它在工作站A上创建临时ARP表项把T-IP映射到P-hard然后telnet到T-IP给打印服务器配以IP地址P-IP接下来就可以把它放到另个子网里使用了别忘了删除静态ARP表项
   
  6、代理ARP
  
  可以通过使用代理ARP来避免在每台主机上配置路由表在使用子网时这特别有用但注意不是所有主机都能理解子网基本思想是即使对于不在本子网主机也发送ARP请求ARP代理服务器(通常是网关)回应以网关硬件地址见下图注意和上面图比较
  
  代理ARP简化了主机管理但是增加了网络通信量(不是很明显)并且可能需要较大ARP缓存Cache每个不在本网IP地址都被创建个表项都映射到网关硬件地址在使用代理ARP主机看来世界就象个大没有路由器物理网络
  
   3、IP地址
  在可路由网络层协议中协议地址必须含有两部分信息:网络地址和主机地址存贮这种信息最明显思路方法是用两个分离这样我们必须考虑到两个域最大长度有些协议(如IPX)就是这样它在小型和中型网络里可以工作很好
  
  另种方案是减少主机地址域长度如24位网络地址、8位主机地址这样就有了较多网段但每个网段内主机数目很少这样对于多于256个主机网络就必须分配多个网段其问题是很多网络给路由器造成了难以忍受负担
  
  IP把网络地址和主机地址起包装在个32位域里有时主机地址部分很短有时很长这样可以有效利用地址空间减少IP地址长度并且网络数目不算多有两种将主机地址分离出来思路方法:基于类地址和无类别地址
  
  1、主机和网关
  
  主机和网关区别常产生混淆这是由于主机意义转变在RFC中(1122/3和1009)中定义为:
  
  主机是连接到个或多个网络设备它可以向任何个网络发送和从其接收数据但它从不把数据从个网络传向另
  网关是连接到多于个网络设备它选择性把数据从个网络转发到其它网络
  换句话说过去主机和网关概念被人工地区分开来那时计算机没有足够能力同时用作主机和网关主机是用户工作计算机或是文件服务器等现代计算机能力足以同时担当这两种角色因此现代主机定义应该如此:
  
  主机是连接到个或多个网络设备它可以向任何个网络发送和从其接收数据它也可以作为网关但这不是其唯
  路由器是专用网关其硬件经过特殊设计使其能以极小延迟转发大量数据然而网关也可以是有多个网卡标准计算机其操作系统网络层有能力转发数据由于专用路由硬件较便宜计算机用作网关已经很少见了在只有个拨号连接小站点里还可能使用计算机作为非专用网关
  
  2、基于类地址
  
  最初设计IP时地址根据第个字节被分成几类:
  
  0: 保留
  1-126:  A类(网络地址:1字节主机地址:3字节)
  127: 保留
  128-191: B类(网络地址:2字节主机地址:2字节)
  192-223: C类(网络地址:3字节主机地址:1字节)
  224-255: 保留
  
  3、子网划分
  
  虽然基于类地址系统对因特网服务提供商来说工作得很好但它不能在个网络内部做任何路由其目是使用第 2层(桥接/)来导引网络中数据在大型A类网络中这就成了个特殊问题在大型网络中仅使用桥接/交换使其非常难以管理在逻辑上其解决办法是把大网络分割成若干小网络但在基于类地址系统中这是不可能为了解决这个问题出现了个新域:子网掩码子网掩码指出地址中哪些部分是网络地址哪些是主机地址在子网掩码中 2进制1表示网络地址位 2进制0表示主机地址位传统各类地址子网掩码为:
  
  A类:255.0.0.0
  B类:255.255.0.0
  C类:255.255.255.0
  如果想把个B类网络地址用作C类大小地址可以使用掩码255.255.255.0
  
  用较长子网掩码把个网络分成多个网络就叫做划分子网要注意些旧软件Software不支持子网它们不理解子网掩码例如UNIXrouted路由守护进程通常使用路由协议是版本1RIP它是在子网掩码出现前设计
  
  上面只介绍了 3种子网掩码:255.0.0.0、255.255.0.0和255.255.255.0
Tags:  如何设置路由器 傲盾路由器 路由器设置 路由器

延伸阅读

最新评论

发表评论