Lily
译者
⚠️ 注意
如果您发现了错误,欢迎 参与贡献。
💡 摘要 (Powered by OpenAI)
在本文中,我们将介绍 BIRD 的配置格式,包括配置文件的语法、配置项的命名规则、配置文件的加载方式等内容,帮助您更好地理解 BIRD 的配置文件。
💡 小贴士
birdc
可以更人性化地操作 BIRD,比如可以使用 birdc configure
命令执行热重载。
birdc
是控制 BIRD 运行的主要方式,而前文提到的使用SIGHUP
信号则比较罕见。
BIRD 使用纯文本格式的配置文件,不同的配置项互不干扰,也不会被运行时的状态所影响。
在启动时,BIRD 默认会读取位于 /etc/bird.conf
的配置文件(除非你使用 bird -c
/ -s
命令行选项指定了其他的配置文件路径)。
每次修改配置文件后 BIRD 不会主动重新加载配置文件,但你可以发送 SIGNUP
信号给 BIRD 手动热重载配置文件(不会中断不被影响的协议)。
在配置文件中,在 #
之后的文本或者在 /* */
内部的文本是注释,空白字符 (whitespace characters) 等同于单个空格。
示例:
# 这是一条注释
/* 这也是一条注释 */
如果有多个配置项,则应该包含在 {}
之内。每一配置项均使用 ;
进行结尾。此外, BIRD 的配置文件是大小写敏感的。
在 BIRD 中有两种方式来对标识符 (symbols)(比如 协议/过滤器/常量 的名称) 进行命名:
A: 使用下划线或字母开头,然后可以使用字母/数字/下划线进行命名 (例如 R123, bbbb_filter, bgp5
)
B: 将名称包裹在一组单引号 '
中,在此情况下你可以使用任意顺序的 字母/数字/下划线 进行命名 (例如 '1:your-are', '-ONE-', 'cool-cat::nekohat'
)
这里展示了一个简单的配置文件,它启用了同步系统内核的路由表功能,从系统学习 (learn) 网络接口并且在它找到的所有接口上运行 RIP
protocol kernel {
ipv4 {
export all; /* 在此配置下导出 `master4` 表的路由到内核,默认配置则是不导出路由 */
};
persist; /* 在 BIRD 关闭时不收回路由 */
}
protocol device {
}
protocol rip {
ipv4 {
import all;
export all;
};
interface "*"; /* 使用所有的网络接口 */
}
译者
校对
原文作者: <Ondrej Filip>
, <Martin Mares>
, <Maria Matejka>
, <Ondrej Zajicek>
原文链接: https://bird.network.cz/?get_doc&v=20&f=bird-3.html#ss3.1
原文标题: 3.1 Introduction
遵循协议: CC BY-NC-SA 4.0
译者: lily
校对: hat
翻译时间: 2023-11-13
更新时间: 2024-09-16
本文链接: https://bird.xmsl.dev/docs/user-guide/3-1-introduction.html