孕妇能吃硼砂吗:路由器工作原理: 静态路由

来源:百度文库 编辑:中财网 时间:2024/04/29 20:47:47
 路由器工作原理:
         当路由器的某个接口收到一个包时,路由器会读取包中相应的目标的逻辑地址的网络部分,然后在路由表中进行查找.如果在路由表中找到了目标地址的路由条目,则把包转发到路由器的相应接口;如果在路由表中没有找到目标地址的路由条目,那么,如果路由器配置了默认路由的话,就根据默认路由的配置转发到路由器的相应接口,如果路由器中没有配置默认路由,则将该包丢弃,并返回不可达信息.这就是数据路由的过程,可见路由是路由器根据自己的路由表进行的,其间经过了路由选择和路由转发的过程,从路由器的一个接口”路由”到另一个接口.
        静态路由:
静态路由是由管理员在路由器中手动配置的固定路由.
当使用静态路由时,路由器需要通过静态路由转发包,因此静态路由必须要指明下列内容:
1. 要到达的目的网络地址。
2. 到达目的网络的下一个路由器地址或者本地接口。
3. 允许对路由的行为进行精确的控制。
4. 静态路由不占用网络的流量。
5. 静态路由是单向的。
6. 静态路由的不足之处是缺乏灵活性。
默认路由:
默认路由是一种特殊的静态路由,指的是当路由表中与包的目的地址之间没有匹配的表项时路由器能够做出的选择。如果没有默认路由,那么目的地址在路由表中没有匹配表项的包将被丢弃。
在路由表中只添加少数的静态路由,同时添加一条默认路由。这样当收到的包的目的网络没有包含在路由表中时,就按照默认路由来转发。在路由器上只能配置一条默认路由。
 路由器转发数据包的封装过程:

1. Host A向Host B发送数据。在网络层封装成数据包,IP数据包的首部包含 了源地址和目的地址。源地址即本机地址192.168.1.2,目的地址为Host B的地址即192.168.2.2。Host A会用本机配置的24位掩码与目的地址进行与运算,得出目的地址与本机地址不在同一网段,因此发往Host B的数据包需要经过网关Router A转发。
2. Host A通过ARP请求获得默认网关Router A e0口的MAC地址00-11-12-21-22-22。在数据链路层Host A将IP数据包封装成以太网数据帧,在以太网帧首部的源MAC地址为00-11-12-21-11-11,目的MAC地址为网关e0口的MAC地址00-11-12-21-22-22。
3. Router A从e0口接收到数据帧,把数据链路层的封装去掉,Router A认为这个IP数据包是要通过自己进行路由转发,Router A会查找自己的路由表,录找与目标IP地址192.168.2.2相匹配的路由表项,根据路由表的下一跳地址将数据包转发到e1接口。
4. 在e1接口Router A重新封装以太网帧,此时源MAC地址为Router A的e1口的MAC地址00-11-12-21-33-22,目的MAC地址为与之相连的Router B的e1口MAC地址00-11-12-21-44-44。
5. Router B从e1口接收到数据帧,同样会把数据链路层的封装去掉,并对目的IP地址进行检查,并与路由表进行匹配,然后根据路由表的下一跳信息将数据包转发到e0接口。Router B发现目的网段与自己的e0接口直接相连,通过ARP广播,Router B获得Host B以太口的MAC地址00-11-12-21-66-66。Router B再将IP数据包封装成以太网帧,源MAC地址为Router B的e0口MAC地址00-11-12-21-55-55,目的MAC地址为Host B的MAC地址00-11-12-21-66-66。封装完毕后,将以太网帧从e0接口发往Host B。
由此可见,路由只不过是一个封装、解封装的过程。
静态路由配置命令:
Router(config)#ip router network [mask] {address / interface} [distance] [permanent]
参数含义如下:
network:目的网络地址
mask:子网掩码
address:到达目的网络经过的下一跳路由器的接口地址。
interface:到达目的网络的本地接口(只能是点到点连接类型的接口,不能是广播类型的)。
distance:管理开销,当需要改变默认管理开销时,使用该参数进行修改
permanent:永久有效。如果配置了该项,即使该接口被关闭,这条静态路由也不会被删除。
默认路由配置命令:
Router(config)#ip router 0.0.0.0 0.0.0.0 address
参数含义如下:
“0.0.0.0 0.0.0.0”代表任何网络,发往任何网络的包都转发到命令指定的下一个路由器接口地址。
address:到达目的网段经过的下一跳路由器的接口地址。        当使用叫做“存根网络(stub network)”的时候,静态路由将是一个完美的选择,这种网络中只有一个与路由器的连接,所以进出这个网络都只有一条路可以走。

     使用静态路由有明显的缺点,那就是如果与下一个跳站点的连接出问题,路由器仍然将继续通过那儿进行路由,它不会意识到这条路径已经不再有效。同时,一旦你拥有较多的静态路由信息的时候,改变和更新这些信息将成为非常耗费时间的管理任务。

          
  静态路由的配置

     为了能够配置一个静态路由,路由器必须置于全球配置模式。

     IP路由配置命令格式:IP route network prefix mask {address | interface} [distance]其中network prefix(网络前缀):指定目的网络的网络地址


     mask(掩码):目的网络中的子网掩码


     address(地址):下一跳路由器的IP地址


     interface(接口):该路由的发送接口名


     distance(距离):可选,管理距离

     也还有其他的参数,但在这里已经被删除,因为它们与CCNA考试不相关。

     举例说明:ip route 10.0.0.0 255.0.0.0 131.108.3.4 110


     10.0.0.0是目标网络的网络地址,255.0.0.0为目标网络的子网掩码,131.108.3.4为下一跳路由器的IP地址,110为管理距离,稍后我们会讲到它。

     另外,我们也可以选择指定通信数据出发时离开的接口,例如:ip route 192.168.1.0 255.255.255.0 serial 0这就告诉路由器让数据从Serial 0接口出去,并最终达到192.168.1.0网络中去。

        当你让路由器执行一个静态路由的时候,让路由器知道如何到达下一跳是至关重要的,通常情况下,下一跳站点都在直接相连的网络里边,路由器能够自动识别直接相连的网络。

     还有一个需要紧记的事情,那就是目的网络中的路由器必须知道如何返回源网络中的路由器,如果它不知道如何达到源网络,就无法给出反馈信息,就像你没有在一个信封上写上回寄地址一样。

  默认路由

     一个默认路由实际上可以看成是静态路由的特殊情况,通常情况下,当一个路由器需要寻找一个没有出现在路由表中的网络的时候,它将完全的丢弃这个数据包,请紧记路由器永远都不会默认地将这些包广播出去,当然了你可以这样设置,但是我们不建议这样。
   
     在下图中,左边的存根网络只有一个路线可以让通信数据通过去到达几个不同的网络,为这几个不同网络配置多个静态路由将是一件非常费力的事情,但这件事情却可以通过如下的一个命令就能完成:

     路由配置命令:router(config)# ip route 0.0.0.0 0.0.0.0 192.168.1.2
 
     上边这些0表示每个网络以及每种子网掩码,也就是说,无论来自那里的通信数据都将通过下一跳站点192.168.1.2传送出去。

     你也可以使用指定一个存在的接口来实现这个命令。如下

     路由配置命令:router(config)# ip route 0.0.0.0 0.0.0.0 s0

        你甚至可以配置一些静态路由,然后在最后配置一个默认路由,一个现实的使用环境就是你在一个小的办公室工作,所以将所有未知的通信数据都传送到总公司里边的一个较大的路由器上,这样就能接受总公司为你做出的路由选择。

      最后一点,我这儿所有的网络图都仅仅是为了说明一个观点,所以请你不要将它们作为学习如何设计你自己网络的实例来对待。