如何配置 mosdns
基本配置文件格式
mosdns 的默认配置文件格式是 yaml,本 wiki 中所有示例均为 yaml 格式。
mosdns 也支持 JSON, TOML 格式的配置文件。mosdns 会根据配置文件后缀自动识别配置格式。
# 日志设置
log:
level: info # 日志级别。可选 "debug" "info" "warn" "error"。默认 "info"。
production: false # 纯 json 输出。
file: "/path/to/log/file" # (实验性) 记录日志到文件。默认输出至 stderr。
# 注意: 日志应由守护进程处理而不是直接写入文件。
# 此选项仅用于调试。panic 日志不会被记录,其内容仍会
# 输出至 stderr 。
# (实验性) API 入口设置
api:
http: "127.0.0.1:8080" # 在该地址启动 api 接口。
# []string, 从其他配置文件载入 plugins 插件设置。
# include 的插件会比本配置文件中的插件先初始化。
include: []
# 插件设置
plugins:
- tag: tag1 # 插件的 tag。由用户自由设定但不能重复。可省略。
type: type1 # 插件类型。详见下文。
args: # 插件参数。取决于插件类型。详见下文。
key1: value1
插件设置: 可用的插件类型 type
和其对应的 args
参数设置,详见
标有 (实验性) 的功能和相关设置项不保证配置兼容性 (可能会在任何版本变化或者移除) 。
mosdns 会按照配置文件中顺序将插件初始化。有些插件需要调用其他插件,比如 sequence,其调用的插件必须在之前配置。否则会因为找不到插件而初始化失败。
API 说明详见
API 说明配置示例
绝大多数 mosdns 的配置都遵循一个思路:
如果只需转发,无需其他功能,则可以让服务器插件直接将请求转交给 forward 插件。
Last updated
Was this helpful?