mosdns

一个 DNS 转发器

GPL-3.0 License

Stars
2.9K
Committers
7

Bot releases are hidden (Show)

mosdns - v1.2.0

Published by IrineSistiana over 3 years ago

What's new:

  • cache 支持 redis 后端。
  • ipset.max_ttl4/6 选项,可以限制并修改 DNS 记录的 TTL。避免 ipset 记录已超时,但 DNS 记录可能还在某个缓存中生效。

配置文件不兼容的变更:

  • fast_forward.upstream.ca 选项现在放在 fast_forward.ca。对插件内所有上游生效。(如果没有配置过 CA 可以无视)
mosdns - v1.1.1

Published by IrineSistiana almost 4 years ago

What's new:

  • forward 支持 "最快 IP 模式"。#41
mosdns - v1.1.0

Published by IrineSistiana almost 4 years ago

What's new

  • fallback: 新模式"快速 fallback"。基于延时的快速切换。当前请求不会失败。
  • 新选项 fast_forward.upstream.max_conns。目前仅能控制 doh 的最大连接数。本地宽带很糟的话,稍微调高 max_conns 可能会有帮助。
  • 新选项 parallel.timeout。可以使 parallel 每个分支的超时都是独立的。确保即使请求已经完成,没有执行完毕的序列内的命令仍然会继续执行。
  • 新插件 sleep
mosdns - v0.25.2

Published by IrineSistiana almost 4 years ago

  • 现在可以直接在序列里使用 _end 来中止序列,不再需要 goto
  • forward 插件中的上游服务器也可以设置 trusted 可信服务器
  • 修正了一些问题。
mosdns - v0.25.1

Published by IrineSistiana almost 4 years ago

What's new:

  • cache hosts 插件现在也能放在"执行队列"里。现在一个 sequence 插件基本上可以实现一切逻辑。不用再格外配置一个 pipeline 队列了
  • 修正了预定义插件 _query_is_commom 错误的逻辑。

Note: Wiki 里的配置示例之前有很长一段时间里面的匹配器使用了 ! 取反,但是忘记了加 " " 引号。这不会报错,但会导致这些匹配器实际上没有生效。如果之前直接复制并使用了配置示例请留意。


不兼容变更: hosts 插件不再是"匹配器插件"了。(历史遗留功能,应该没人这么用 hosts)

mosdns - v0.24.0

Published by IrineSistiana almost 4 years ago

What's new:

  • parallelfallback 也可以像 if 一样直接写在执行序列。执行序列现在四种元素可以任意嵌套。
  • 新预定义插件 _block_with_empty_response, _qtype_AAAA。屏蔽 ipv6 更方便。#30
  • mosdns 自带命令行小工具:
    • -probe-server-timeout 测试 TCP/DoT 服务器是否支持 RFC 7766 连接复用以及其空连接保持时间。
    • -conv-v2ray-domain/ip-dat 将 v2ray 资源文件转换成文本文件。

  • 修正了带 OPT 的应答不会被缓存的问题。 #23
  • 提高了 logger 的效率。
  • 不再依赖 v2ray 。

不兼容的变更:

  • logger 插件没有了。log 新配置方式见 wiki。
  • parallel 插件的 exec 参数名字变为了 parallel。(避免歧义)
mosdns - v0.23.0

Published by IrineSistiana almost 4 years ago

  • 匹配器新增 logical_and 选项,用于设定多个匹配规则时将匹配器变为“与”逻辑(全部规则匹配才行)。

  • debug log 现在不会被文件名和函数刷屏了。
mosdns - v0.22.1

Published by IrineSistiana almost 4 years ago

What's new:

  • sequence: 现在提供 if_and 选项实现匹配的“与”逻辑。

不兼容变更: (希望这是最后一次)

  • 所有的匹配器现在合并成两个 query_matcherresponse_matcher
mosdns - v0.21.0

Published by IrineSistiana almost 4 years ago

What's new:

  • blackhole: 支持用指定 IP 屏蔽。
  • fast_forward: 支持 DoT, DoH, socks5。提供更多设置。
  • plain_serverhttp_server 合并为 server。支持 DoT。提供更多设置。
  • hosts: 支持 v2ray 全部域名匹配方式。
  • logger: 可以禁用颜色和时间戳。
  • forward: dnsproxy 更新至 v0.33.7

  • 配置文件不兼容: fast_forward, plain_serverhttp_server 插件。
  • 插件行为调整: fallback, parallel, forward, fast_forward。执行失败后不再自动设置 SERVFAIL 应答 。
mosdns - v0.20.0

Published by IrineSistiana almost 4 years ago

What's new:

  • 新插件 fallback,实现简单的 fallback 机制。
  • 新插件 parallel,实现并发执行,取最先返回的结果。
  • cache 现在支持 EDNS0。新预配置插件 _default_cache
  • "功能性插件"和"路由插件"现在统一为"可执行插件"。详见 wiki。
  • domain_matcher:
    • 使用新的域名匹配器替代v2ray内置匹配器,提高性能并减少60%内存占用。
    • v2ray 的域名规则文件支持 @attr 属性。
    • 域名列表文件也支持 v2ray 所有匹配模式。

不兼容的变更:

  • 原路由插件sequencepipelinenext设置没有了。因为"路由插件"现在统一为"可执行插件",可以直接被执行。如果设置过next,把里面的插件放在执行队列最后即可。
mosdns - v0.19.1

Published by IrineSistiana almost 4 years ago

mosdns - v0.18.0

Published by IrineSistiana almost 4 years ago

mosdns - v0.17.1

Published by IrineSistiana almost 4 years ago

What's new:

  • 新插件类型 pipeline 插件 和新路由插件 pipeline: 用于组成一个双向运行的流水线。(coredns 的插件运行模式。插件控制上下文,可随时返回或继续执行)
  • 新插件 cache: 实现 DNS 缓存。
  • hosts 现在也可以用作 pipeline 插件

不兼容的变更:

为了避免歧义,重命名了以下预定义插件:

  • _block_servfail -> _block_with_servfail
  • _block_nxdomain -> _block_with_nxdomain
  • _response_err_rcode -> _response_has_err_rcode
  • _query_unusual_types -> _query_type_is_unusual

blackhole: rcode 设为 0,将原有应答丢弃。 -> rcode 设为负数,将原有应答丢弃。

mosdns - v0.16.0

Published by IrineSistiana almost 4 years ago

What's new:

  • 新插件(服务器) http_server. 直接启动 DoH 服务器,或者启动明文 HTTP 服务器配合已有的反向代理使用。

  • 修正了一些问题。完善了日志和报错信息
mosdns - v0.15.0

Published by IrineSistiana almost 4 years ago

What's new:

  • 新插件: fast_forward, hosts
  • 5 个新的可直接使用的预定义插件。_drop_response, _block_servfail, _block_nxdomain, _no_ecs, _qtype_A_AAAA
  • ip_matcher 支持匹配客户端地址。
  • 多配置文件支持。

不兼容的部分:

  • serverlog 配置现在是独立插件 plain_server ,logger
  • ip_matcher 需设定匹配范围。
  • sequence 的预定义 end 更名为 _end
mosdns - v0.14.0

Published by IrineSistiana almost 4 years ago

What's new:

  • 新增三个预定义的简单匹配器。_response_no_valid_ipv6_response_err_rcode_query_unusual_types,可以直接引用其 tag,无需设定插件。详见 wiki。

  • 现在 forward 如果出现错误,将会把应答设定为 SERVFAIL。
  • 修正了 ecs 的 auto 模式不能用的问题。
mosdns - v0.13.1

Published by IrineSistiana almost 4 years ago

What's new

  • 简化插件 sequence 的设置。

  • sequence 的参数设置与之前本版不兼容。需重新设置。
  • 修正了 v0.13.0 配置文件 plugin 类别下的插件没导入的 bug
mosdns - v0.12.1

Published by IrineSistiana almost 4 years ago

What's new:

  • 新增插件 sequence: 类似 if do else do 的配置,实现像按域名和 IP 链式分流这样的逻辑只需 10 行配置,简洁直观并且可扩展。详见 wiki。
  • forward 现在支持 bootstrap。
mosdns - v0.9.0

Published by IrineSistiana almost 4 years ago

mos-chinadns 现已重构并更名为 mosdns

mos-chinadns 主要特性都有保留:多种查询协议,连接复用,CNAME检查,独立的数据文件,导入 v2ray .dat 文件,根据请求类型附加ECS,ipset等。


What‘s new:

  • 插件化配置。每个插件实现一个功能。插件执行顺序可动态调整。因此可以实现任意分流方式。
  • ECS 部分: ECS 插件新增支自动附加客户端地址功能。
  • DNS 客户端改由 AdguardTeam/dnsproxy 驱动。支持的协议和 AdguardHome 保持一样。
  • 记录 log 到文件。

不再支持的特性:

  • socks5 协议。