MapleCool

Results 13 issues of MapleCool

目前看来,一些不会根据ECS调整位置的NS服务器,会错误将一些没用大陆CDN节点的域名解析到离大陆更远的地方,对于这种域名的处理,最简单的办法,就是指向台湾或日本的DNS查询,这样可以获取到延迟非常低的大陆周边CDN,github.com就是一个典型的例子 但如果手动来优化,这个成本太高了,功能大概的设计思路: 1、向DNS-TAG1与DNS-TAG2同时查询,用TAG而不是直接用IP的原因是为了加ECS 2、加入IP筛选,如果命国内IP,则优先国内的,不然丢弃 3、如果命中非国内的IP,对比返回的多个IP,选择ping最快的IP 不知道可否实现

### 在提交之前,请确认 - [X] 我已经尝试搜索过 Issue ,但没有找到相关问题。 - [X] 我正在使用最新的 mosdns 版本(或者最新的 commit),问题依旧存在。 - [X] 我仔细看过 wiki 后仍然无法自行解决该问题。 - [X] 我非常确定这是 mosdns 核心的问题。(如果是通过第三方衍生软件使用 mosdns 核心,不确定问题源头时,请先向衍生软件开发者提交问题。) ### mosdns 版本 4.1 ###...

help wanted

项目源于我早期写的一套DNS管理脚本,因为早期方案使用多个DNS程序组合,管理时要修改多个文件太过复杂,所以写了一套shell脚本辅助管理DNS,用了一个周末的时间,将脚本移植到mosdns上。 看到作者有发布 mosdns_cn 项目,来降低用户的使用门槛,但依旧很多用户更愿意折腾功能强大的 mosdns,所以我写了这个项目,基本上可以做到让mosdns开箱即用,功能满足绝大部分普通用户的日常使用。 项目地址:https://github.com/pmkol/easymosdns 作者可以在测试确认无BUG后fork过来做分支,或加在wiki里,希望能帮助更多的用户无门槛使用mosdns 也通过这种方式支持一下有问必答的作者 ^_^ # EsayMosdns - 基础功能包括: >- 支持EDNS解析,根据域名与中国大陆IP列表智能分流,查询结果无污染 >- 污染列表与自定义列表中的域名,请求上游DNS时自动替换附带的用户IP子网信息,保护隐私 >- 强化Hosts功能,域名支持多个IP,支持IPv6 >- 支持自定义ECS,强制域名附带中国大陆/台湾地区的ECS解析 >- DNS缓存时间优化,自动更新缓存,支持Redis持久化存储,可根据场景切换缓存规则 >- 轻度过滤恶意网址,可通过白名单自定义过滤规则 >- 屏蔽TYPE65与非中国大陆地区的IPv6请求,自动保留纯IPv6域名的请求,以获取更好的网络体验 >- 支持规则自动更新,提供直连/CDN/Socks5三种下载更新规则的方式 >-...

Steps to reproduce ------------------ 华为云国际版DNS报错 三个export HUAWEICLOUD值 已经按照文档正常填写,确认没有填写错误 但会报错 Not enough information provided to dns_huaweicloud! 不知道问题在哪? Debug log ----------------- ``` [Tue Jul 26 20:52:40 IST 2022] d [Tue Jul 26...

dohEnabled: true后,前端使用CDN部署DOH时,用户通过DOH解析域名,用户的DNS出口IP会递归到用户DOH访问的CDN的节点,而不是用户最近的DNS节点。 而当我使用AdguardTeam/dnsproxy项目创建DOH时,只需要附带--edns启动参数,同样前端使用CDN,就可以精准的解析,DNS的出口IP,可以递归到离用户最近的DNS节点。 想知道这个问题应该怎样解决?

如题,因为一些第三方的DNS网络,不同的公共DNS,解析结果也不一样,如果想根据自己网络调优,需要指定域名使用指定DNS解析,建议增加这个功能

enhancement

### 希望添加的功能 首先赞一下mosdns的性能,在单台服务器每日几千万的查询量的压力下,性能依旧稳定没任何报错,且资源占用极少。 随着日查询量直奔亿级,一些新的诉求诞生了: 由于查询量变高,参考了作者之前提过的unbound缓存方案,将unbound前置,但这里出现了一个新的问题,虽然unbound已经支持doh功能,但却并不支持http3,所以需要前置nginx,但unbound并没有通过X-Forwarded-For对客户端真实IP进行获取,这将导致如果前置nginx或CDN的情况下ECS功能失效,而mosdns却很好的解决了这点。 --- 目前套娃结构为: mosdns(分流) -> unbound(缓存) -> mosdns(转发) -> nginx(出口) mosdns(转发) 这里的替代品,有尝试多种方案 a、使用caddy/haproxy直连unbound,ECS失效 b、使用 [doh-server](https://github.com/DNSCrypt/doh-server)中间件,不支持ECS传输,ECS失效 c、使用 [dns-over-https](https://github.com/m13253/dns-over-https)中间件,支持ECS,但性能太差,我的503报错占比达到了约2%,而mosdns一次503都没出现过 --- 综上所属,我目前只能单独再开个mosdns进程做中间件转发,因为mosdns性能真的太强了 对于mosdns现有的代码而言,理论上只要提取已有功能,应该就可以单独搞个中间件出来,对作者而言应该比我们任何人都容易做到。主要需要几个功能: 1、将udp/tcp转为dot/doh,doh支持http无ssl模式,也就是把现有的部分提取出来 2、增加unix domain socket,让nginx可以更好的无缝连接这个中间件 3、限制单IP并发数,这个插件里已经有了 4、简化版的日志,格式可以类似unbound的,包含日期、端口、客户端IP、请求域名、请求类型等,例如:...

因为1.25版本原生支持quic 并原生支持由akamai与microsoft维护的quic版openssl库 https://github.com/quictls/openssl 目前tongsuo还不支持KTLS特性,这样可以让用户多一些SSL库的选择,真心希望tengine能做的更强大

看到reality中,已经没有了tls中的ALPN选项,是使用reality后不需要配置ALPN了么?

Integrating 0-RTT for streams can enhance its capabilities. I suggest incorporating it into the source code. ``` diff -r 8cadaf7e7231 -r 5b16afc16eb9 src/stream/ngx_stream_ssl_module.c --- a/src/stream/ngx_stream_ssl_module.c Tue May 26 19:17:11 2020...

enhancement