NetStudio动态路由——FRR概述
在构建现代网络的过程中,动态路由协议起着至关重要的作用。无论是数据中心、ISP 网络,还是企业网络,灵活、可扩展、稳定的路由协议实现都是网络设计的核心。FRRouting(FRR) 是一个现代、高性能的开源路由协议栈,被广泛用于 Linux 网络栈中,并支持多种主流动态路由协议。
什么是FR Routing?
FRRouting(FRR) 是一个开源的 IP 路由协议套件,最初是从 Quagga 项目分支出来的。由于 Quagga 长时间缺乏活跃的维护,部分大型网络厂商(如 Cumulus Networks、6WIND、Big Switch 等)于 2016 年创建了 FRR 项目,以更活跃和现代化的方式推进开源路由软件的发展。
官方地址:
FRR架构解析
FRR 采用模块化架构,由一系列守护进程组成,每个守护进程负责一种或几种协议。它们之间通过内置的 IPC(进程间通信)机制进行通信。
核心进程
| 守护进程 | 功能 |
|---|---|
| zebra | 路由表管理器,与 Linux 内核路由表交互,是所有协议守护进程的“中枢神经” |
| bgpd | 实现 BGP 协议 |
| ospfd | 实现 OSPFv2 协议 |
| ospf6d | 实现 OSPFv3 协议 |
| ripd | 实现 RIP 协议 |
| isisd | 实现 IS-IS 协议 |
| pimd | 实现 PIM 协议 |
| ldpd | MPLS 中的 LDP 协议 |
| staticd | 管理静态路由 |
| bfdd | 实现 BFD 以快速链路故障检测 |
| 通信关系: |
1 | |
嵌入式Linux(OpenWRT等)中安装FRR
首先,在make menuconfig中勾选frr。frr的路径为Network > Routing and Redirection > frr。勾选frr后,进入frr框则可以看到一些协议,按照所需要的去勾选。


将所需要的协议勾选完成后,save,exit,退出menuconfig界面,即可进行固件编译。
FRR与其他开源路由协议栈比较
| 特性 | FRR | Bird | Quagga | OpenBGPD |
|---|---|---|---|---|
| 多协议支持 | ✅ 强 | ⚠️ 有限 | ⚠️ 过时 | ❌ 仅支持 BGP |
| 模块化守护进程 | ✅ | ❌(单进程) | ✅ | ❌ |
| CLI风格 | Cisco 风格 | 配置文件为主 | Cisco 风格 | 自定义格式 |
| 社区活跃度 | 高 | 中 | 低(已不活跃) | 中 |
| 适合场景 | 通用、复杂网络 | BGP为主 | 已过时 | 安全、简单的BGP |
NetStudio动态路由——FRR概述
https://blog.hasong.top/2025/05/27/NetStudio动态路由——FRR概述/