电脑工场
白蓝主题五 · 清爽阅读
首页  > 软件入门

路由重分发注意事项:别让好心办坏事(实战经验分享)

公司刚把老路由器换掉,新设备支持OSPF,但旧网段还在用RIP。管理员小张一通操作,把RIP路由重分发进OSPF,结果第二天财务部连不上ERP服务器——不是断网,是流量绕了三圈才到,延迟飙到800ms。

重分发不是插根线就完事

路由重分发本质是把一种协议的路由“翻译”成另一种协议能认的格式。但不同协议对路由的理解压根不一样:RIP只看跳数,OSPF看开销,EIGRP算复合度量,BGP还带策略和属性。硬塞过去,就像把粤语菜谱直接拿去北京厨房照做,盐放几克?火候怎么控?没人说清楚。

最常踩的三个坑

1. 默认不带掩码,子网全乱套
很多设备(比如Cisco默认)重分发静态或直连路由时,会自动变成 /32 主机路由。你本想发192.168.10.0/24,结果对方收到的是192.168.10.1/32、192.168.10.2/32……一堆孤零零的点。解决办法很简单:

router ospf 1
redistribute static subnets
加个 subnets 关键字,不然它就只认主类网络。

2. 没设metric,路由直接变“隐形人”
OSPF重分发进来的外部路由,默认metric是20。但如果目标区域里某条内部路由metric也是20,OSPF优先选内部路由,你的重分发条目就被无视了。更糟的是,有些厂商默认metric为0(比如部分华为设备),OSPF一看0就怀疑是假消息,直接拒收。
务必手动指定靠谱值:

redistribute rip metric 100 metric-type 1
metric-type 1(E1)和2(E2)也得按实际选:跨多个区域建议用E1,要控制路径成本;只在一个区域传播,E2更省心。

3. 双向重分发=环路温床
一边把RIP重分发进OSPF,另一边又把OSPF重分发回RIP?恭喜,你亲手搭了个路由环路生产线。哪怕加了filter,只要有一条漏网之鱼,就可能触发持续更新风暴,CPU瞬间拉满,邻居全Down。
真要双向,必须配route-map严格过滤,且只允许特定网段来回走。例如:

route-map RIP-TO-OSPF permit 10
match ip address 100
route-map OSPF-TO-RIP deny 5
match tag 100
route-map OSPF-TO-RIP permit 10
再给重分发的OSPF路由打上tag 100,然后在回注RIP时用deny拦住它——这不是多此一举,是保命操作。

动手前先摸清底细

打开CLI,先敲两行:

show ip route rip
show ip route ospf
看看两边到底有哪些路由、掩码是否一致、有没有汇总过的痕迹。曾有个案例:RIP侧做了172.16.0.0/16汇总,OSPF侧却重分发了172.16.1.0/24和172.16.2.0/24两条明细,结果OSPF路由器收到冲突路由,直接丢弃全部。

重分发不是魔法开关,是精细活。改一条命令前,先想清楚:这条路由从哪来?要到哪去?中间经过谁?别人会不会抄近道把它截胡?设备没情绪,但配置有脾气——你敷衍它,它就给你演一出真实版《流量迷途》。