静态路由(英语:Static routing)是一种路由的方式,路由项(routing entry)由手动配置,而非动态决定。与动态路由不同,静态路由是固定的,不会改变,即使网络状况已经改变或是重新被组态。一般来说,静态路由是由网络管理员逐项加入路由表。
- 中文名:静态路由
- 外文名:Static routing
- 解释:网络管理员手工配置的路由信息
- 性质:网络连接状态
优点
使用静态路由的另一个好处是网络安全保密性高。动态路由因为需要路由器之间频繁地交换各自的路由表,而对路由表的分析可以揭示网络的拓扑结构和网络地址等信息。因此,网络出于安全方面的考虑也可以采用静态路由。不占用网络带宽,因为静态路由不会产生更新流量。静态路由适用于中小型网络。
缺点
大型和复杂的网络环境通常不宜采用静态路由。一方面,网络管理员难以全面地了解整个网络的拓扑结构;另一方面,当网络的拓扑结构和链路状态发生变化时,路由器中的静态路由信息需要大范围地调整,这一工作的难度和复杂程度非常高。当网络发生变化或网络发生故障时,不能重选路由,很可能使路由失败。
配置命令
(以图为例)
静态路由的配置有两种方法:带下一跳路由器的静态路由,和带送出接口的静态路由
router(config)#hostname A (更改路由器主机名)A(config)#interface f0/0 (进入接口f0/0)
A(config-if)#ip address 192.168.1.1 255.255.255.0 (设置接口ip地址和子网掩码)
A(config-if)#no shutdown (启用接口)
A(config)#interface f0/1
A(config-if)#ip address 192.168.2.1 255.255.255.0
A(config-if)#no shutdown
×××以下二选一:
A(config)#ip route 192.168.3.0 255.255.255.0 f0/1(目标网段IP地址 目标子网掩码送出接口[路由器A])
或者
A(config)#ip route 192.168.3.0 255.255.255.0 192.168.2.2 (目标网段IP地址 目标子网掩码下一路由器接口ip地址)
×××
router(config)#hostname B
B(config)#interface f0/0
B(config-if)#ip address 192.168.3.1 255.255.255.0
B(config-if)#no shutdown
B(config)#interface f0/1
B(config-if)#ip address 192.168.2.2 255.255.255.0
B(config-if)#no shutdown
×××以下二选一:
B(config)#ip route 192.168.1.0 255.255.255.0 192.168.2.1
或者:
B(config)#ip route 192.168.1.0 255.255.255.0 f0/1(目标网段IP地址 目标子网掩码送出接口[路由器B])
×××
注1:此网络链路为以太网链路,如果是串行链路,送出接口也就是本地路由器的串行接口。
简明解释:ip route 192.168.3.0 255.255.255.0 192.168.2.2
这句话的意思是:在HOSTA上,路由器见到目的网段为192.168.3.0的数据包,就将数据包发送到192.168.2.2上
注2:ip route 指向一个就可,如果两个都配了,就是说将这个数据包从发fa0/1出去,而另一个说数据包发到这个ip(例如192.168.2.2)。两个重复。一般我们设置为指向IP。
当有两条及以上指向同一目标地址但出口不同的静态路由存在于同一路由或交换设备上时,发送到目标地址的流量将从这些出口负载均衡发送。
举例
基本的静态路由如图所示,由两个路由器R1和R2组成(接口号和IP地址在图2中给出),它们分别连接了各自的网络:R1连接了子网192.168.0.0/24,R2连接了子网192.168.2.0/24。
在没有配置静态路由的情况下,这两个子网中的计算机A、B之间是不能通信的。从计算机A发往计算机B的IP包,在到达R1后,R1不知道如何到达计算机B所在的网段192.168.2.0/24(即R1上没有去往192.168.2.0/24的路由表),同样R2也不知道如何到达计算机A所在的网段192.168.0.0/24,因此通信失败。
此时就需要管理员在R1和R2上分别配置静态路由来使计算机A、B成功通信。
在R1上执行添加静态路由的命令ip route 192.168.2.0 255.255.255.0 192.168.1.1。它的意思是告诉R1,如果有IP包想达到网段192.168.2.0/24,那么请将此IP包发给192.168.1.1(即和R1的2号端口相连的对端)。
同时也要在R2上执行添加静态路由的命令ip route 192.168.0.0 255.255.255.0 192.168.1.2。它的意思是告诉R2,如果有IP包想达到网段192.168.0.0/24,那么请将此IP包发给192.168.1.2(即和R2的3号端口相连的对端)。
通过上面的两段配置,从计算机A发往计算机B的IP包,能被R1通过2号端口转发给R2,然后R2转发给计算机B。同样地,从计算机B返回给计算机A的IP包,能被R2通过3号端口转发给R1,然后R1转发给计算机A,完成了一个完整的通讯过程。
常见问题
1)为什么要有默认路由
路由得查看路由表而决定怎么转发数据包,用静态路由一个个的配置,繁琐易错。如果路由器有个邻居知道怎么前往所有的目的地,可以把路由表匹配的任务交给它,省了很多事。
例,网关会知道所有的路由,如果一个路由器连接到网关,就可以配置默认路由,把所有的数据包都转发到网关。
2)为什么默认路由是0.0.0.0
匹配IP地址时,0表示wildcard, 任何值都可以。所以0.0.0.0和任何目的地址匹配都会成功,造成默认路由要求的效果。
以上便是本期全部内容,希望看过的小伙伴们点个赞和关注,谢谢!🙏🙏🙏