路由重发布实验详解:OSPF与RIP互通、种子度量值与防环实战

做网络实验这么多年,要说哪个实验最容易“配完就通、通了又莫名其妙出问题”,路由重发布(Route Redistribution)绝对排前三。很多初学者把重发布理解成“在两个协议进程里各敲一句 redistribute”,结果拓扑里出现环路、次优路径,排查半天才发现是双向重发布惹的祸。这篇博文就围绕一个最经典的“重发布实验”展开,把为什么要做重发布、怎么做、做了之后会踩哪些坑、怎么排查,从头到尾捋一遍。适合正在学路由协议、准备网络认证考试,或者工作中要接触多种协议互通场景的网络工程师参考。

1. 重发布是什么:先搞清楚两个协议之间怎么“互相介绍路由”

1.1 为什么不同协议不能天然互通

路由协议的世界里,RIP、OSPF、IS-IS、BGP 各有各的“方言”。OSPF 用开销(Cost)算路径,RIP 用跳数(Hop Count)算路径,BGP 用路径属性来选路。协议之间既不明白对方的度量值含义,也看不懂对方的路由条目格式。更重要的是,默认情况下,一台路由器上即使同时运行了 OSPF 和 RIP,它也只会把各自学到的路由分别放进同一个路由表,绝不会主动把一个协议的路由“翻译”给另一个协议。

打个生活化的比方:你在一个单位里同时管着两个班组,一个班组用中文写日报,一个班组用日文写日报。你作为中间管理者如果不去翻译,两个班组互相之间就永远不知道对方每天干了什么。重发布(Redistribution)就是那个翻译动作——在边界路由器上,把一种路由协议学到的路由,转换成另一种协议能理解和传递的格式,然后注入到对方协议里去。

1.2 重发布的本质与适用场景

重发布的本质听起来简单,但牵扯的东西很多。它不只是“把路由A搬进协议B”这么机械,还涉及种子度量值(Seed Metric)怎么算、管理距离(AD)不一致导致的选路差异、以及防环机制如何建立。

常见的重发布场景主要有三类:

  • 静态路由注入动态协议:比如一条指向出口网关的默认路由,通过 static 重发布进 OSPF,让全网都知道出口在哪。
  • 直连网段注入动态协议:把路由器直连接口所在的网段,作为外部路由注入到 OSPF 或 RIP 中。
  • 动态协议之间互相重发布:比如 OSPF 域和 RIP 域合并,或者公司并购后两个网络需要互通,这是最常见也最考验功底的场景。

第四个隐藏场景也值得注意:把 BGP 路由导入 IGP,或者把 IGP 路由导入 BGP,这在大型网络里同样普遍,但实验复杂度更高,一般作为进阶内容。

1.3 动手之前必须想清楚的四个问题

很多人在实验里翻车,不是命令敲错了,而是动手前没把思路理顺。做重发布之前,至少要回答这四个问题:

  1. 度量值如何换算?RIP 的跳数是16不可达,OSPF 的 Cost 可以到65535。将一个 OSPF Cost 为 10 的路由重发布进 RIP,跳数应该给几?这个需要实验者自己指定,协议不会自动换算。
  2. 管理距离会不会影响选路?OSPF 内部路由 AD 是 110,RIP 是 120。如果一条路由既可以通过 OSPF 学到,又可以通过 RIP 学到,路由器会优先信谁?这直接影响流量走哪里。
  3. 双向重发布会不会形成路由回馈?边界路由器把自己刚注入进去的路由又学回来,再重新注入到另一边,就可能形成环路。
  4. 需要控制哪些路由方向?是不是所有路由都要双向传递?有没有需要过滤掉的网段?现实网络中几乎一定需要过滤。

这四个问题想清楚了,配置命令反而只是手指工夫。

2. 实验拓扑与地址规划:别急着敲命令,先画图

2.1 最小可复现拓扑:三台路由器起手

重发布实验最忌讳“一口气把拓扑搭得很大”。我建议先用三台路由器搭一个最小的单边界拓扑,验证通信逻辑,再扩展到双边界拓扑来复现次优路径和路由回馈问题。

这里以常见网络设备为例,规划如下:

  • R1 和 R2 之间跑 OSPF,区域 0。
  • R2 和 R3 之间跑 RIP,版本2。
  • R2 就是重发布边界路由器,同时运行两种协议。
  • R1 的环回口 Lo0 模拟一个需要被全网访问的网段,R3 的环回口 Lo0 模拟另一个网段。

这个拓扑的好处是:R2 只有一个“翻译点”,路由传播路径清晰,适合先把基础配置跑通。后面要研究环路和次优路径时,可以再加一台 R4 作为第二个边界路由器,构成双点双向重发布。

2.2 地址与协议规划表

规划地址时建议把直连网段、环回口网段、协议归属都列清楚,避免后面配置时手忙脚乱。

设备接口IP 地址所属协议用途
R1Gi0/0192.168.12.1/24OSPF连接 R2
R1Lo010.0.1.1/32OSPF (network 10.0.1.1 0.0.0.0)模拟业务网段 A
R2Gi0/0192.168.12.2/24OSPF连接 R1
R2Gi0/1192.168.23.2/24RIP连接 R3
R3Gi0/0192.168.23.3/24RIP连接 R2
R3Lo010.0.3.3/32RIP (network 10.0.0.0)模拟业务网段 B

采用 24 位掩码是因为实验环境里直连链路地址够用即可,环回口用 32 位掩码是模拟一个主机网段,这在实际网络里也很常见。

2.3 基础配置:先让两个协议各自跑起来

在配置重发布之前,先做基础配置,确保 OSPF 域内和 RIP 域内各自都能通信。下面是 R1、R2、R3 的基础配置示例:

! R1 interface GigabitEthernet0/0 ip address 192.168.12.1 255.255.255.0 no shutdown interface Loopback0 ip address 10.0.1.1 255.255.255.255 router ospf 1 router-id 1.1.1.1 network 192.168.12.0 0.0.0.255 area 0 network 10.0.1.1 0.0.0.0 area 0 ! R2 interface GigabitEthernet0/0 ip address 192.168.12.2 255.255.255.0 no shutdown interface GigabitEthernet0/1 ip address 192.168.23.2 255.255.255.0 no shutdown router ospf 1 router-id 2.2.2.2 network 192.168.12.0 0.0.0.255 area 0 ! R3 interface GigabitEthernet0/0 ip address 192.168.23.3 255.255.255.0 no shutdown interface Loopback0 ip address 10.0.3.3 255.255.255.255 router rip version 2 network 192.168.23.0 network 10.0.0.0 no auto-summary

配置完这两段,先分别验证:R1 能 ping 通 192.168.12.2,R3 能 ping 通 192.168.23.2。然后看 R1 有没有 10.0.3.3 的路由?肯定没有。R3 有没有 10.0.1.1 的路由?也没有。因为重发布还没做,两个域是“孤岛”。这一步验证很重要,能让你确认问题是不是基础配置引起的。

3. 核心配置实操:先做单向,再做双向

3.1 第一步:把直连和静态路由重发布进协议(最安全的入坑方式)

先从最安全的方式入手:在 R2 上把直连网段重发布进 OSPF 和 RIP。这样不会产生环路,因为直连路由不可再被“学回来”。命令如下:

! R2 把直连接口网段注入 OSPF router ospf 1 redistribute connected subnets ! R2 把直连接口网段注入 RIP router rip version 2 redistribute connected metric 1

注意一个关键差异:OSPF 的 redistribute connected 因为默认 seed metric 是 20,所以能直接生效。但 RIP 的默认 seed metric 是无穷大(16),如果不手动指定 metric 1,重发布的路由会被标记为不可达,R3 根本学不到。这就是“种子度量值”的第一个坑。

配置完,在 R1 上应该能看到 192.168.23.0 和 10.0.3.3 这两条路由,但它们的来源是 OSPF 外部路由(O E2),说明是重发布进来的。在 R3 上应该能看到 192.168.12.0 和 10.0.1.1,来源是 RIP。此时 R1 和 R3 的环回口已经互相能 ping 通了。

3.2 第二步:OSPF 与 RIP 之间的双向重发布

单点单向重发布只解决了“一边知道另一边”的问题。更常见的是双边都要通,所以要做双向重发布。在 R2 上增加两条命令:

router ospf 1 redistribute rip subnets router rip version 2 redistribute ospf 1 metric 1

注意 OSPF 侧一定要带关键字 subnets,否则默认只重发布主类网络,10.0.1.1/32 这类子网路由传不进去。这也是一坑,后面排查部分细说。

配置完,R1 能看到去 10.0.3.3 的路由,R3 能看到去 10.0.1.1 的路由。至此,这个三路由器的小实验拓扑已经能“全网互通”。

3.3 种子度量值(Seed Metric)详解:为什么同一个命令效果不一样

种子度量值是一个很容易被忽略但极其重要的参数。它的含义是:当一条路由从一个协议被“翻译”到另一个协议时,在目标协议里初始拥有的度量值。不同协议对重发布路由的默认处理完全不同:

协议默认种子度量不手动指定时的效果
OSPF20(BGP 重发布除外,为1)可以正常传递,但没法体现原协议的真实开销
RIP16(不可达)路由学不到,必须手动指定 metric 1~15
IS-IS0可以传递,但默认开销为0,需要留意
EIGRP无穷大路由学不到,必须手动指定 metric 带宽/延迟/可靠性/负载/MTU

这个设计不是随意的。RIP 把16视为无穷大,不给种子度量就默认不可达,逼迫网络工程师明确思考该路由在 RIP 域里应该占几个跳数。OSPF 则提供一个合理默认值20,让实验能跑通,但坏处是:所有外部路由看起来开销都一样,选路时无法区分近远。

因此,实操中我会习惯性在配置里加 default-metric 或者 redistribute 后的 metric 参数。比如:

router ospf 1 default-metric 10 router rip version 2 default-metric 3

这样所有重发布进来的路由在各自协议里都统一了度量基准,不至于出现“RIP 域里所有外部路由都是同一个跳数”的尴尬情况。

4. 重发布之后的事:次优路径与路由回馈

4.1 路由回馈(Loop)是怎么发生的

双向重发布之后,最经典的问题就是路由回馈。以前面三台路由器拓扑为例,把时序拆开看:

  1. R1 把 10.0.1.1/32 通告给 R2(OSPF 内部路由)。
  2. R2 执行 redistribute ospf 1 metric 1,把这条路由注入 RIP,R3 通过 RIP 学到 10.0.1.1/32,下一跳是 192.168.23.2。
  3. 但 R3 的 RIP 域里还有自己的直连网段 192.168.23.0 和 10.0.3.3。R2 执行 redistribute rip subnets,把从 RIP 学到的 10.0.3.3/32 和 192.168.23.0/24 注入 OSPF。
  4. 问题在于:R2 的 RIP 进程里,除了 R3 通告的 10.0.3.3/32,会不会也包含它自己刚注入进去的 10.0.1.1/32?答案是会的。RIP 是距离矢量协议,R3 收到 10.0.1.1/32 的 RIP 通告后,会认为这是一条路径并继续向外通告(如果还有别的 RIP 邻居)。但实际上这条路由的始作俑者是 R2 自己,等于自己把自己说的话又听了一遍然后还要再复述一遍。

如果只有三台路由器,R3 没有第二个 RIP 邻居,环路不会持续扩散。但在双边界或多边界拓扑里,R2 注入到 RIP 的路由,可能通过 RIP 域里另一台边界路由器 R4 重新学回来,然后再通过 OSPF 传回去,形成一个完整的路由环路。这会导致什么后果?数据包在两个域之间反复跳转,直到 TTL 耗尽;路由表振荡,下一跳来回横跳;严重时 CPU 飙升,整台路由器卡死。这就是路由回馈的破坏力。

4.2 次优路径为什么危险

除了环路,次优路径也是一个“通而不优”的隐患。用一个扩展拓扑来说明:在 R2、R3 之间加一台 R4,R4 同时连接 OSPF 域和 RIP 域,构成双点双向重发布。此时,R3 要去 10.0.1.1/32,按理说最优路径是 R3 → R2 → R1,因为 R3 直连 R2。但如果 R4 也把这条路由重发布进了 RIP,R3 可能选择 R4 作为下一跳,因为 R4 那条路由的 RIP 跳数是 1(假设 R4 和 R3 直连),而直接从 R2 学到的也是 1,选路时可能陷入“看谁先通告”的随机局面。更糟的是,如果 R4 通过 OSPF 学到的外部路由 AD 是 110,而 R3 直接从 R2 学到的 RIP 路由 AD 是 120,那么 R3 反而会优先选 R4 作为下一跳,即使实际路径要绕路。

次优路径危险在于它往往“能通”,没有明显故障现象,只会表现为延迟升高、带宽浪费。排查这类问题,不能只盯着接口 up/down 和丢包率,要老老实实看路由表里的下一跳和来源。

4.3 规避手段一:distribute-list 做方向过滤

最直接的防回馈方法是在边界路由器上做路由过滤。例如在 R2 的 OSPF 进程中,拒绝把从 RIP 学到的路由中那些“本不该出现在 OSPF 域里”的路由重新注入回去。配置方式如下:

! 在 R2 上定义前缀列表:只允许把 R3 的环回口路由注入 OSPF ip prefix-list RIP_TO_OSPF permit 10.0.3.3/32 router ospf 1 redistribute rip subnets route-map FROM_RIP_TO_OSPF route-map FROM_RIP_TO_OSPF permit 10 match ip address prefix-list RIP_TO_OSPF

这样 R2 只会把 10.0.3.3/32 从 RIP 重发布进 OSPF,而不会把 10.0.1.1/32 这种“自己人”的路由再次引入 OSPF,从根上截断了回馈。同理,在 RIP 侧也可以做反向过滤。

4.4 规避手段二:route-map + prefix-list 精细化控制

如果需要更精细控制——比如按照路由的 tag、下一跳或度量值来决定是否发布,route-map 就比单纯的 prefix-list 更合适。配置思路是:先定义 prefix-list 匹配目标网段,再用 route-map 绑定 match 和 set 动作。例如:

ip prefix-list BLOCK_LOOPED permit 10.0.0.0/8 ge 24 le 32 route-map OSPF_TO_RIP deny 10 match ip address prefix-list BLOCK_LOOPED route-map OSPF_TO_RIP permit 20 router rip version 2 redistribute ospf 1 metric 1 route-map OSPF_TO_RIP

这段配置的含义是:在把 OSPF 路由重发布进 RIP 时,先拒绝所有 10.0.0.0/8 范围内掩码长度在 24 到 32 之间的网段,其他网段放行。route-map 的匹配顺序和 ACL 一样,从上往下逐条匹配,第一条 deny 命中就直接拒绝,不再往下看。所以 route-map 里必须有一条最后的 permit 语句,否则什么路由都发布不出去。这是实验里非常容易踩的坑。

4.5 规避手段三:调整管理距离

另一种思路是让路由器“不信”某些路由。例如,希望 RIP 域里的路由器优先走直连的边界路由器,可以修改边界路由器上重发布路由的管理距离,让 RIP 外部路由的 AD 变大,从而不被优先选择。

router rip version 2 distance 130

这会让 RIP 路由的 AD 从默认的 120 变成 130。如果 OSPF 外部路由的 AD 是 110,路由器会优先选择 OSPF 学到的路由,也就是优先走 R4 那条链路。不过要注意:调整 AD 是全局性的,会影响该协议下所有路由的优先级。如果只想针对某几条路由调整,需要结合 ACL 做精细化 distance 配置。

这三种手段各有利弊:distribute-list 直接、暴力,理解成本低,适合快速截断;route-map 灵活,可以组合多种匹配条件,适合生产环境;调整 AD 是最后的手段,影响面大,需要谨慎使用。

5. 常见问题排查与实操技巧实录

5.1 重发布实验问题速查表

现象可能原因排查命令
RIP 域里学不到重发布路由seed metric 未设,默认16不可达show ip rip database、show run | section router rip
OSPF 域里子网路由传不过来redistribute 缺 subnets 关键字show ip ospf database external
路由环路、下一跳来回跳双向重发布无防环过滤show ip route、traceroute、show ip protocols
次优路径协议 AD 不一致导致选路异常show ip route,关注 AD 值
重发布路由时有时无route-map 顺序错误或缺 permitshow route-map、show ip prefix-list
过滤后所有路由都没了route-map 没有最后的 permit,导致全拒show ip protocols(查看路由过滤器是否生效)

5.2 排查命令组合:一条条看到问题本质

排查重发布问题,我有一套固定的命令组合,按顺序执行基本能定位 90% 的问题。

第一步,看路由表全貌。用 show ip route 确认路由是否出现、下一跳是谁、AD 值和 metric 是多少。重点看是否带 O E2 或 R 标记,以及括号里的 [110/20] 这类值。

第二步,看协议数据库。OSPF 侧用 show ip ospf database external,RIP 侧用 show ip rip database。这一步能确认路由是否已经进入了协议数据库。如果数据库里没有,说明重发布或通告有问题;如果数据库里有但路由表里没有,说明是选路或 AD 的问题。

第三步,看进程配置。用 show run | section router 确认 redistribute 命令是否带上正确的关键字和 metric。很多时候问题就出在少写了一个 subnets 或者忘加 metric。

第四步,路由振荡时,关掉快速收敛,用 debug ip rip 观察 RIP 更新报文里的路由条目,能直观看到哪条路由被反复通告。注意 debug 命令在生产环境要慎用,实验环境随便开。

5.3 实操中踩过的几个坑

第一个坑:prefix-list 掩码长度写错。我曾在 R2 上过滤 10.0.0.0/8 ge 24 le 32,以为能匹配所有子网,结果漏了 10.0.3.3/32 这种精确主机路由,导致 R3 的环回口在 OSPF 侧消失了。排查了很久才发现是 ge/le 范围写窄了。建议配置 prefix-list 前,先用 show ip prefix-list detail 查看实际匹配情况。

第二个坑:在 OSPF 重发布 RIP 时,忘了加 subnets。当时的情况是:R3 的 10.0.3.3/32 在 R1 上一直看不到,但 R3 的其他非主类子网却能通。原因是 redistribute rip 不带 subnets 时,只会重发布主类网络。这个关键字对 OSPF 来说几乎是必须的,却特别容易被忽略。

第三个坑:route-map 里只有 deny 没有放行。我最初在 R2 上做双向重发布防环时,定义了一个 route-map,只写了 deny 段,没写最后的 permit。结果所有路由都被拦住了,全网立即不通。后来形成肌肉记忆:route-map 用完之后,永远在最后补一条空 permit。

第四个坑:改完配置忘了清除 OSPF 进程。有时重发布配置修改后,OSPF 不会立即重新计算外部路由,需要敲 clear ip ospf process 或者被动等刷新。很多人改完配置发现路由没变化,以为是配置问题,其实只是进程没刷新。

5.4 一个值得反复练习的扩展实验

如果时间充裕,建议再做一次“多边界+路由策略”的实验:在之前拓扑中再加一台 R4,让 R2 和 R4 同时做 OSPF 和 RIP 的双向重发布,然后用 route-map 实现不对称控制——比如只允许 R2 发布某条路由,R4 只能发布另一条路由。这样能逼着自己把前文的防环、过滤、AD 调整手段组合起来,真正理解什么叫“策略控制”。

这个实验做完,再回头看 show ip protocols 输出的路由过滤信息和 AD 信息,你会对整个路由选择过程有非常清晰的认识。

我个人在实际操作中的体会是:重发布实验一定要按“先单向、后双向,先连通、再防环、后优化”的顺序去做。不要一上来就双边互指,否则出了问题你根本不知道是哪个方向引起的。另外一个小技巧是,每次配置完重发布,第一件事就是看 show ip protocols 里的 Redistributing 段落,它会把外部路由的 seed metric、路由过滤器是否生效都列出来,一眼就能看出配置有没有进对地方。这个习惯帮我省了不少排查时间,建议你也养成。

相关新闻

AI科研绘图:用自然语言生成投稿级图表,彻底告别软件内卷

AI科研绘图:用自然语言生成投稿级图表,彻底告别软件内卷

1. 科研绘图的“软件内卷”,卷的到底是什么我一直觉得自己不是在搞科研,而是在跟绘图软件打持久战。帮课题组处理数据那几年,真正让我失眠的从来不是统计分析,而是把一张图“画到能投稿”这件事。数据清洗一上午,画图调…

2026/10/19 16:27:02 阅读更多 →
伪“天眼查询系统”恶意样本分析:从静态拆解到全场景防护

伪“天眼查询系统”恶意样本分析:从静态拆解到全场景防护

这段时间做恶意样本分析,手里拿到一个安卓应用,名字挺正经,叫“天眼查询系统”。压缩包一看才3.99MB,我当时就想,正规工具类应用哪有这么小的。果不其然,装进隔离测试机里跑了一圈,后台动作一点…

2026/10/19 16:26:00 阅读更多 →
社区化CRM设计与落地实践:从客户台面到团队协作效率提升

社区化CRM设计与落地实践:从客户台面到团队协作效率提升

聊客户管理这个事,这几年我最大的感受是:工具并不缺,缺的是能把“销售跟进、客服响应、社群运营”全串起来的那张桌子。传统CRM我用了不少,录单麻烦、界面冰冷,销售觉得是给领导填报表用的,客服觉得是售后流…

2026/10/19 16:26:00 阅读更多 →

最新新闻

OpenClaw多智能体编排实践:销售线索挖掘、客户跟进与方案生成

OpenClaw多智能体编排实践:销售线索挖掘、客户跟进与方案生成

做销售智能化的同学大都遇到过这种尴尬:模型对话能力是够的,但落到真实业务里,要么连不上存量数据,要么不知道下一步该调用哪个系统,要么辛辛苦苦生成的方案客户一眼就看出是套模板。我前前后后折腾了大半年&#xff0…

2026/10/19 17:03:20 阅读更多 →
Git原生AI代码审查工具:CLI+Hook驱动的可审计代码质量实践

Git原生AI代码审查工具:CLI+Hook驱动的可审计代码质量实践

1. 这不是又一个“AI代码审查”玩具:open-code-review 的真实定位与设计哲学你肯定见过太多打着“AI Code Review”旗号的工具——点开网页,粘贴几行代码,等三秒,弹出几条泛泛而谈的“建议”,比如“变量名可读性有待提…

2026/10/19 17:03:20 阅读更多 →
城市地图集制作指南:数据清洗、坐标系与开源工具实战

城市地图集制作指南:数据清洗、坐标系与开源工具实战

Atlas这个词,在地图相关词汇里应该算得上最有故事感的一个。它既是古希腊神话里用肩膀撑起天空的泰坦神,也指把世界装订成册的地图集。第一次见到这个词是在一本旧地图册的书脊上,封面上只有一个单词,打开以后,一个城市…

2026/10/19 17:03:20 阅读更多 →
代码审查落地指南:用 open-code-review 打造高效的 Code Review 流程

代码审查落地指南:用 open-code-review 打造高效的 Code Review 流程

1. 先搞清楚:open-code-review 到底在解决什么问题我见过太多团队,GitHub 仓库开着,PR 也提了,但代码审查就是走个过场——Reviewer 打开页面,扫一眼 diff,看到没有明显的语法错误,直接点 Appro…

2026/10/19 17:03:20 阅读更多 →
open-code-review实战:把形式化代码评审变成团队资产

open-code-review实战:把形式化代码评审变成团队资产

说句实话,代码评审这件事,在多数团队里长期处于一种“谁都承认重要,但就是做不好”的尴尬状态。我做过几年一线开发,也带过小团队,见过太多把 Code Review 走成形式的例子——要么是合并前机械地点一下通过&#xff0c…

2026/10/19 17:03:20 阅读更多 →
《呆呆虫源代码阅读》前言:一份解释器学习者的源码阅读路线图

《呆呆虫源代码阅读》前言:一份解释器学习者的源码阅读路线图

有些学习项目,代码还没开始读,光是《前言》这一节就够你来回翻三遍。我说的这个项目,就是《呆呆虫源代码阅读》。先说清楚它是什么:呆呆虫是一套用Go实现的教学型脚本语言解释器,语法轻巧、结构清晰,代码库…

2026/10/19 17:02:18 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →