【超详解】怎么在网络上配置IP路由?

01

在网络上配置IP路由

在完成了上述配置后,这个网络应该就可以工作了,对吗?注意,这个网络已经被正确配置了IP地址、管理功能,甚至是时钟频率(在ISR路由器上这是自动配置的)。但是,当路由器只能通过查看路由选择表确定通往远程网络的路径时,路由器会如何将分组发送到远程网络?,上 面完成的配置只是在路由器的路由选择表中加人了关于直接相连网络的信息。在这种情况下,当某个路由器收到一个需要发往未列在路由选择表中的网络的分组时,它会如何处理?这时的路由器是不会发送一个广播来查找远程网络位置的,它只会将这个分组丢弃!

因此,完成上述配置并不能让网络真正正常运转起来。但是,也不必为此担心,要将这个小型互联网络中所有的网络都加入到路由选择表中并不难,下面将介绍几种不同的配置方式,从而让所有的分组都可以被正确转发。这里需要明确的是,某一网络的最佳配置未必也能成为另一网络的最佳配置。真正理解路由选择方式间的不同,确实有助于读者针对特定应用环境和商业需求提出最佳配置解决方案。

几种路由选择:

  • 静态路由选择;

  • 默认路由选择;

  • 动态路由选择。

这里将首先介绍静态路由选择,并描述其在网络上的实现方式,如果可以在网络上完成静态路由选择的配置,并保证网络可以正常地工作,那么对于互联网络你就有了一个全方位的认识。好,我们这就开始。

02

静态路由选择

以手工方式为每台路由器的路由选择表添加路由,这-方式就是静态路由选择。与所有路由选择方式一样,静态路由选择也是优缺点并存的。

静态路由选择的优点如下:

  • 不增加路由器CPU的开销,也就是说使用静态路由选择可以比使用动态路由选择选购更便宜的路由器;

  • 不增加路由器间的带宽占用,也就是说在WAN链接的使用中可以节省更多的费用;

  • 提高了安全性,因为管理员可以有选择地配置路由,使之只通过某些特定的网络;

静态路由选择的缺点如下:

  • 管理员必须真正地了解整个互联网络以及每台路由器间的连接方式,以便实现对这些路由的正确配置;

  • 当添加某个网络到互联网络中时,管理员必须在所有路由器上(手工地)添加到此网络的路由;

  • 对于大型网络使用静态路由选择基本上是不可行的,因为配置静态路由选择会产生巨大的工作量。

好,下面给出将静态路由添加到路由选择表中的命令语法:

下面给出了对此命令语法中各部分的描述。

  • ip route 用于创建静态路由的命令。

  • destination network 要放置到路 由选择表中的网络号。

  • mask 在此网络上使用的子网掩码。

  • next-hop_address 下一跳路由器的地址,即用于接收分组并将分组转发到远程网络的下一个路由器的地址。这是下一跳路由器上与本路由器直接相连的接口的IP地址。在成功添加此路由之前,你必须能够ping这个路由器的接口。如果输人了错误的下一跳地址,或者这个路由器其接口停止运行,那么这个静态路由将只出现在路由器的配置中,而不会出现在路由选择表中。

  • exitinterface 如果需要 可以用来设置下一跳地址,这样可以使设置的下一跳看上去就像是一个直接连接的路由。

  • administrative distance  默认情况下,静态路由的管理距离为1 ( 甚至可以是0,前提是使用输出接口( exit interface )替代下一跳地址)。我们可以通过在这个命令的尾部添

  • 加一个管理权重来修改这个默认值。对于这个内容,我们将在本章后面有关动态路由的单元中进行更多讨论。

  • permanent 如果接 口被关闭或者路由器不能与下一跳路由器通信,默认情况下这一路由将会被从路由选择表中自动删除。选择permanent选项,将导致在任意情况下都保留这一路由选择表项在路由选择表中。

在对静态路由的配置展开深人讨论之前,先来看一个配置静态路由的示例,同时看下可以从中得到些什么结论。

Router(config)#ip route 172.16.3.0 255.255.255.0 192 .168.2.4

  • 命令1p route 简单地表明这是一个静态路由。

  • 172.16.3.0 就是那个需要将分组发送到的远程网络。

  • 255.255.255.0 是这个远程网络的子网掩码。

  • 192.168.2.4 就是下一跳地址,或下一跳路由器,即将分组向下传递的下一个位置。

然而,如果这个静态路由如下所示:

Router(config)#ip route 172.16.3.0 255.255.255.0 192 .168.2.4150 .

这个尾部上的150会将默认的AD ( Administrative Distance,管理距离)由1改为150。别担心,在动态路由选择的讨论中,会有关于AD内容的更为详尽的介绍。在这里,你只需要记住AD就是关于路由的可信任度,其中值为0最好,而值为255最差。

再来看一个示例,然后我们将正式介绍配置过程:

Router(config)#ip route 172.16.3.0 255.255.255.0 s0/0/0

若使用一个输出接口代替下一跳地址,这个路由看上去将像是一个直接连接的网络。在功能上,这个下一跳和输出接口其使用结果是完全一样的。

!

1. Corp

每个路由选择表都自动包含直接连接的网络。要在互联网络中能够对所有的网络进行路由操作,路由选择表中必须包含描述其他网络位于哪里以及如何到达那里的信息。

路由器Corp连接到5个网络上。为了使Corp路由器可以路由到所有的网络,下列网络必须配置到它的路由选择表中:

口192.168.10.0

口192.168.20.0

口192.168.30.0

口192.168.40.0

口172.16.10.0

下面给出的路由器输出显示了在Corp路由器上的静态路由以及完成配置后路由选择表中的内容。为了让Corp路由器能够发现远程网络,我们必须在路由选择表中放人相应的表项,这个表项用于描述远程网络、远程网络的掩码以及要将分组转发到的位置。这里在每一行命令的结尾处都添加了一个“150”,来增加默认路由的管理距离。(当讨论动态路由选择时,你就会清楚这里这样做的原因。)

对于网络192.168.10.0和192.168.20.0,尽管可以使用同-一个,但我还是为每个网络使用了不同的路径。在完成了对路由器的配置后,我们可以通过输人show ip route查看静态路由的配置:

路由器Corp上的路由已经配置完成,目前它已经了解了到达所有网络的全部路由。大家需要了解的是,一个路由是否会出现在路由选择表中,取决于路由器是否能与配置的下一跳地址通信。我们可以使用permanent参数来保证某个路由在路由选择表中的存在,而不管下一跳设备是否能被联系上。

在上面路由选择表项中的S,表明此路由为静态路由。[150/0] 是指管理距离和到达远程网络的度量值(我们将在稍后介绍这个概念)。这样,在完成这些配置之后,路由器Corp就已经得到了与其他远程网络通信所需要的全部信息。但是,还要记住的是,如果没有为路由器R1、R2和R3配置这些相同的信息,则网络中的某些分组会被简单地丢弃。通过为这些路由器配置静态路由,我们就可以解决这一问题。

注意:不要因这里静态路由配置结尾处的150 感到困感。很快就会讨论这一内容哒~~相信小编!

!

2. R1

路由器R1与网络10.1.2.0、10.1.3.0、 192.68.10.0 和192.168.20.0直接相连,因此只需要在路由器R1上配置如下静态路由:

  • 10.1.1.0

  • 10.1.4.0

  • 10.1.5.0

  • 192.168.30.0

  • 192.168.40.0

  • 172.16.10.0

下面就是对R1路由器进行的配置。记住,不要为任何直接连接的网络创建静态路由,此外,由于Corp和R1路由器之间存在两条链路,因此我们使用的下一跳地址可以在10.1.2.1 或10.1.3.1中选择。后面的配置中将会在这两个下一跳配置之间不断地变换,以便让所有数据不总是沿一条链路传输,而在这里具体使用哪条链路并不重要。下面来看一下具体的配置:

通过查看这个路由选择表,我们可以看出R1路由器现在已经知道如何找到每个网络:

现在R1路由器已经有了一个完整的路由选撣表。且互联网络中的其他路由器也都在自己的路由选择表中包含了所有的网络,R1 就能够与所有远程网络通信了。

!

3.R2

路由器R2与3个网络( 10.1.4.0、192.168.30.0 和192.168.40.0)直接相连接,因此需要加入的路由包括:

  • 10.1.1.0

  • 10.1.2.0

  • 10.1.3.0 .

  • 10.1.5.0

  • 192.168.10.0

  • 192.168.20.0

  • 172.16.10.0

下面就是为R2路由器进行的配置:

下面的输出给出了R2路由器上路由选择表中的内容:

在这里R2显示了此互联网络中全部的10个网络,因此目前R2也能够与所有的路由器和网络(那些当前已经完成配置的)通信。

!

4. R3

路由器R3直接与网络10.1.5.0 和172.16.10.0相连,因此需要的路由一共有8个,它们包括:

  • 10.1.1.0

  • 10.1.2.0

  • 10.1.3.0

  • 10.1.4.0

  • 192.168.10.0

  • 192.168.20.0

  • 192.168.30.0

  • 192.168.40.0

下面就是对R3路由器的配置操作。注意,我们在这个路由器上用输出接口替代了下一跳地址:

在命令show ip route 的输出中,注意静态路由都被标明是直接连接的。似乎有些问题?但这样标示并没有错,因为对R3的配置使用输出接口取代了下一跳地址,在功能上,这两种配置之间并没有区别,只是在路由选择表中的显示有所不同。这里已经显示,在配置静态路由时使用输出接口取代下一跳后路由选择表中的表示不同,下面来看一种更为简易的、配置R3路由器的方式。

!

5.默认路由选择

连接到Corp路由器的R2和R3路由器,也称存根路由器( stub router )。存根表示这个示例中的网络只有通往所有其他网络的一条路径。这里将介绍配置方式,在下一个单元中给出验证网络的方法,随后给出对默认路由选择的详细介绍。下面给出了在R3路由器上进行的配置,由于R3为存根路由器,因此可以使用默认路由取代8个静态路由:

很好,一旦将最初配置的所有静态路由删除,我们就可以开始默认路由的配置,可以看出这要比输入8条静态路由简单许多。但是,有一个需要注意的问题,即不能将这一配置方式应用到所有路由器上,它只适用于存根路由器。由于R2路由器也是一个存根路由器,因此在上面也可以同样使用默认路由,但是在为它配置默认路由时不建议再附加150,即便这一添加不会增加太多的工作量。之所以不建议这么做,是因为当后面处理动态路由选择时,如果需要可以将整条路由简单地删除,在这里

附加这个150没有实质意义。

终于到最后了,至此所有的配置都已经完成!所有路由器都拥有了正确的路由选择表,所以此时所有路由器和主机都可以进行无障碍通信。但是,如果向这个互联网络中再添加哪怕一个网络或一个路由器,你都必须为每一个路 由器的路由选择表进行手动更新!如果管理的只是一个小型网络,这不是什么问题,但如果是一个大型互联网络,这一更新就会大大消耗管理人员的宝贵时间!

!

6.验证配置

事情到这里并没有真正结束,一旦完成了对所有路由器路由选择表的配置,接下来就需要对这些配置进行验证。完成这一验证的最好方式,除了使用show ip route 命令,就是使用Ping 操作。这里将从R3路由器对R1路由器的ping操作开始。

下面就是这一操作的输出结果:

从路由器R3.上也可以完成对Corp主干路由器、www服务器、电子邮件服务器和DNS服务器的ping测试操作。下面是对此路由器进行操作时的输出:

此外,我们还可以从无线移动用户主机上trace 连接到R2路由器上的Finance (财务部)主机,来了解一下到达Finance 主机的分组都经历了哪些跳,在进行这一操作之前需要确认移动用户主机已经接收到了位于R3路由器上的DHCP服务器的地址:

注意,由于是在Windows主机上,这里使用的命令是tracert。记住,tracert不是一个有效的思科命令,在路由器的提示符下必须使用命令traceroute。

很好,至此由于已经可以实现端到端的通信,并且可以无障碍地到达每台主机,因此目前已经完成了对静态路由和默认路由的成功配置!

03

默认路由选择

使用默认路由,我们可以转发那些远程目的网络不在路由选择表中列出的分组到下一跳路由器。我们只可以在存根网络上配置默认路由,因为这些网络到达外界网络只有一条外出路径,但是在实际应用中并不总是这样,在设计网络时默认路由选择的配置需具体情况具体分析。这是一个需要牢记的经验法则。

如果尝试在一个非存根路由器上配置默认路由,那么路由器可能会将分组转发到不正确的网络中,因为到达其他路由器的路由可以通过不止一个接口实现。使用默认路由容易创建路由环路,因此使用时要特别小心!

配置默认路由,我们需要在配置静态路由的命令中使用网络地址和掩码的通配符来限定转发对象(正如在对R3的配置中演示的那样)。事实上,我们可以将默认路由视为一个用通配符替代网络和子网掩码信息的静态路由。通过使用默认路由,我们可以只创建一个静态路由选择表项来替代原有内容。这当然要比逐个输人所有路由容易!

在上面给出的路由选择表输出中,我们可以看到两个直接相连的网络和一个标记有S*的表项, S*表明此表项是一个可用的默认路由。因此,除在R3.上配置8个静态路由,我们也可以用另一种方式实现此默认路由的配置:

R3(config)#ip route 0.0.0.0 0.0.0.0 Fa0/O

这个配置表明,对于在路由选择表没有对应表项的网络,都将由Fa0/0 转发出去。在这里,我们既可以使用下一跳路由器的IP地址,也可以使用输出接口,最终的结果都是一样的。注意,在对R3进行静态路由配置时,我们使用的就是输出接口,在其路由选择表中显示为直接连接。然而,在对R3进行默认路由配置时,我们使用的是下一跳的配置方式,不过在功能实现上并没有什么不同。

此外还需要注意的是,这个路由选择表的第行指出最终网关目前也被设置了。另外,在使用默认路由时还有需要了解的另一个命令: ip classless 命令。

几乎所有思科路由器都是有类路由器,也就是说,路由器的每个接口预设使用默认的子网掩码。

当路由器接收到一个目的子网不在路由选择表中的分组时,默认将丢弃这个分组。因此,如果在配置中使用了默认路由选择,这里就必须使用ip classless命令,因为在路由选择表中可能没有远程网络的子网。为什么?因为那些与路由选择表中非默认路由的表项具有相同子网类别的子网在转发时会忽略默认路由的存在,而使用了这个命令就基本是在说“嘿, IP!在你丢弃分组之前,请确认一下最终网关是否已经配置!”

由于在我的路由器上IOS版本均为12.4,默认情况下这个ip classless命令处于启用状态,因此在配置中可以不再使用这个命令。在配置默认路由选择时,如果没有执行过这个命令,并且对路由器进行过子网划分,那么就需要添加这个命令。这个命令的使用方式如下:

R3(config)#ip classless

如果你在互联网络中已经配置好了最终网关,命令ip defau1t- network会是另-个非常有用的命令,我将在本章结束部分的配置示例中使用这个命令。图8-11给出了一个需要使用最终网关配置语句的示例。

这里有3个配置命令, (都可用于实现默认路由配置)可以用来在路由器上添加到ISP的最终网关。

Gateway(config)#ip route 0.0.0.0 0.0.0.0 217.124.6.1

Gateway( config)#ip route 0.0.0.0 0.0.0.0 s0/0

Gateway( config)#ip defau1t-network network

前面两个命令的作用是相同的,只是其中一个使用下一跳路由器的IP地址,而另一个使用的是输出接口。正如前面已经讨论过的,应用这个配置并不会看到什么不同。如果需要从这两个中进行选择,你应该选择输出接口。知道为什么吗?直接连接路由的管理距离为0,但是在这个示例中,对于这两个命令是看不出任何功能上的差别的。

当对路由器配置了一个IGP ( Interior Gateway Protocol, 内部网关协议)时,如RIP,命令ipdefault-network将会在边界路由器上通告这个默认网络的信息。这样,此互联网络中的其他路由器将接收这个信息,并自动地设置这个路由为默认路由。再重申-次,我将在本章结尾处的网络中使用这个命令,你是不是对此有些期待?

如果错误地配置了一个默认路由,又会发生些什么呢?先来看一下show ip route命令的输出,并与图8-12中的网络进行比较,看一下是否能够发现其中的问题。

看出问题了吗?通过查看拓扑图和路由选择表中直接连接的路由,你应该可以发现这个WAN链接所属的网络是172.18.22.0, 而默认路由却是将所有分组转发到了172.19.22.0 网络。这就是问题所在,网络将不能正常工作,所以这是一个因错误配置静态(默认)路由导致的问题。

在学习动态路由选择之前,这里还有最后一个问题:如果路由选择表的输出如下所示,并且当路由器接收到一个来自10.1.6.100 且去往10.1.8.5主机的分组时,路由器会如何处理?

这儿与前面讨论过的内容略有不同,因为这里的默认路由被标示为R*, 它表明这是一个由RIP注人的路由。造成这一结果的原因, 是有人在某个远程路由器上配置了ip default-network 命令,并且还配置了RIP,从而导致RIP通过此互联网络将这个路由通告为一个默认路由。由于此数据的目的地址是10.1.8.5,而在路由选择表中又不存在一个通往10.1.8.0网络的路由,因此该路由器会使用这个默认路由,将这个分组从串行接口0/1 送出。

04

动态路由选择

动态路由选择就是路由器根据协议查找网络并更新路由选择表。是的,使用动态路由选择要比使用静态或默认路由选择容易,但会占用更多的路由器CPU处理时间和网络带宽。路由选择协议为路 由器定义了一组在相邻路由器间交换路由选择信息的规则。

路由选择协议是RIP ( Routing Information Protocol,路由信息协议)版本1和版本2。

在互联网中经常使用的路由选择协议有两种,即IGP ( Interior Gateway Protocol,内部网关协议)和EGP ( Exterior Gateway Protocol,外部网关协议)。IGP 用于在同一个AS ( Autonomous System,自治系统)中的路由器间交换路由选择信息。而AS是一个位于共同管理城下的网络集合,其基本原理是将所有需要共享相同的路由选择表信息的路由器置于同一个AS中。EGP用于AS之间的通信。EGP的一个典型示例是BGP ( Border Gateway Protocol ,边界网关协议),关于这个协议的内容已经超出本文范围啦~

(0)

相关推荐