pfSense、OPNsense安装配置MosDNS教程

MosDNS是一款高性能且轻量级的DNS服务器,主要用于提供DNS-over-HTTPS (DoH) 和DNS-over-TLS (DoT) 功能,以保障用户的网络隐私和安全。MosDNS的设计注重简洁、易配置和高效性能,适用于各种网络环境中,尤其是在需要增强DNS安全性的情况下。

本文介绍在pfSense、OPNsense上使用MosDNS进行DNS分流,并通过clash或sing-box代理出站的方法。

安装MosDNS

请参阅以下教程:

安装完成以后,如下图所示:

OPNsensen的MosDNS控制界面

pfSense的MosDNS控制界面

配置MosDNS

MosDNS的配置文件存放在/usr/local/etc/mosdns/,所有与配置文件有关联的其他配置也必须存放在该目录。使用MosDNS进行DNS分流,建议更改DNS解析器或Unbound DNS所使用的默认53端口,以避免端口冲突。clash和sing-box配置文件当中的默认DNS必须指向MosDNS。

假设MosDNS运行在本地,监听地址为 127.0.0.1:5335。

clach配置

clash配置文件DNS部分建议写法:

dns:
enable: true
listen: :53
ipv6: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
default-nameserver:
- 127.0.0.1:5335

参数说明:

  • enable: true:启用Clash 的内置DNS 服务。
  • listen: Clash的DNS服务监听地址。
  • enhanced-mode: fake-ip:DNS增强模式。
    • fake-ip 模式:适用于需要IP映射的场景。
    • redir-host 模式:更适合分流或需要准确域名的场景。
  • default-nameserver:默认使用的DNS服务器,必须设置为MosDNS的监听地址。
  • 其他内容建议删除。

sing-box配置

sing-box配置文件DNS部分建议写法:

 "dns": {
"servers": [
{
"tag": "proxydns",
"address": "127.0.0.1",
"port": 5335,
"strategy": "prefer_ipv4",
"detour": "select"
},
{
 "tag": "localdns",
"address": "h3://223.5.5.5/dns-query",
"detour": "direct"
},
{
"tag": "dns_fakeip",
"address": "fakeip"
}
],

参数说明

  • proxydns(代理 DNS)

    • 解析端口: 127.0.0.1:5335(指向 mosdns)
    • 解析策略: prefer_ipv4(优先 IPv4)
    • 流量去向: detour: “select”(通过代理查询,适用于被墙域名)
  • localdns(本地 DNS)

    • 解析地址:223.5.5.5(国内DNS)
    • 流量去向: detour: “direct”(本地直连解析,适用于国内网站)
  • dns_fakeip(FakeIP)

    • 用于 FakeIP 机制,模拟 DNS 解析
    • 适用于透明代理模式,避免部分域名直连解析失败

MosDNS配置

MosDNS配置必须支持DNS分流,例如根据域名或IP使用不同的上游DNS服务器。如下文所示:

servers:
- label: "国内DNS"
address: "223.5.5.5:53"
- label: "国外DNS"
address: "8.8.8.8:53"
rules:
- suffix: ".cn"
server: "国内DNS"
- default: "国外DNS"
listeners:
- address: "127.0.0.1"
port: 5335
protocol: "udp"

注意事项

  • 确保MosDNS和clash、sing-box的监听地址及端口不冲突。
  • 调试时,可以使用工具如dig或nslookup检查DNS查询结果是否符合预期。

配置文件

根据以上MosDNS分流设置原则,在最新发布的全家桶集成了通用mosdns配置文件,国内解析使用本地DNS,国外使用防火墙自身和其他国外DNS进行并行解析,选择时间最短的查询结果。安装完成以后,可以将114.114.114.114替换为一个本地的DNS解析地址,以提升国内DNS解析速度。该脚本集成了MosDNS使用所需要的GeoIP数据更新程序(同步下载更新代理程序),可以在OPNsense和pfSense当设置定时更新,配置方法如下图所示。

OPNsense转到系统>设置>任务,添加一个定制任务:

OPNsense自动更新定时任务,表示每周六的2点自动启动GeoIP数据和代理程序更新。

pfSense安装cron插件,并添加一个定时任务,如下图所示:

pfSense自动更新定时任务,表示每周六的2点自动启动GeoIP数据和代理程序更新。

评论

  1. kvncyx
    1-10
    2025-1-10 18:34:55

    安装成功也运行得很好,非常感谢,但是WebGUI的日志不会刷新,一直停留在安装时的那几条信息

    • Avatar photo
      博主
      kvncyx
      已编辑
      1-11
      2025-1-11 15:53:36

      后续版本已修复。

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇