配置文件不是写完就完事了
很多人觉得网络配置文件只要能跑通就行,格式乱点没关系。可当你凌晨三点被叫起来查故障,面对一堆没有缩进、注释混乱的 conf 文件时,就会明白:排版不是美观问题,是救命的事。
统一缩进,别再混用空格和 Tab
团队里有人用两个空格,有人用四个,还有人坚持 Tab。这种小事一旦不统一,合并配置时 diff 工具都能让人崩溃。建议在项目根目录加个 .editorconfig,明确指定缩进方式。
# .editorconfig 示例
[*.conf]
indent_style = space
indent_size = 2
合理分段,按功能模块组织内容
把 DNS、路由、防火墙规则分开成区块,每个区块前加一行注释说明用途。就像写文章要分段,没人能一口气读完一整页密密麻麻的配置项。
# —— DNS 配置 ——
nameserver 8.8.8.8
nameserver 1.1.1.1
# —— 内网路由 ——
route add -net 192.168.10.0/24 gw 192.168.1.1
注释要讲“人话”,别说套话
别写“此处配置IP地址”这种废话。要说清楚为什么配这个值。比如:
# 使用本地缓存DNS避免外部延迟,生产环境禁止修改
比# DNS server有用得多。
模板化通用结构,减少手误
公司有十个分支机构?别一个个手写配置。准备一个 base.conf 模板,把公共部分固定下来,变量部分用占位符标出,部署时自动填充。既保证一致性,又省时间。
# 接口配置模板
interface ${IF_NAME} {
ip addr ${IP_ADDR}/${NETMASK}
gateway ${GATEWAY}
}
版本控制别忽略,git 提交也要讲究
每次改配置都提交到 git,提交信息写清楚“修复 VLAN 100 泄露”而不是“update config”。半年后回头看,才知道哪次变更引入了问题。顺便提醒,敏感信息别往仓库里塞,用 .gitignore 挡住密码文件。
用工具辅助检查格式
手动对齐迟早出错。可以用 pre-commit 钩子自动格式化 conf 文件,或者用 cfg-validator 这类小工具扫描语法错误。就像代码有 linter,配置文件也该有守门员。