pymumu / smartdns

A local DNS server to obtain the fastest website IP for the best Internet experience, support DoT, DoH. 一个本地DNS服务器,获取最快的网站IP,获得最佳上网体验,支持DoH,DoT。
https://pymumu.github.io/smartdns/
GNU General Public License v3.0
8.5k stars 1.09k forks source link

偶发性报错 SSL read fail error: error:0A00010F:SSL routines::bad length #1828

Open giveup opened 1 month ago

giveup commented 1 month ago

问题现象
日志出现

Sat Sep 28 00:09:15 2024 user.err smartdns: server 223.6.6.6 SSL read fail error: error:0A00010F:SSL routines::bad length
Sat Sep 28 08:56:42 2024 user.err smartdns: server 223.5.5.5 SSL read fail error: error:0A00010F:SSL routines::bad length
Sat Sep 28 08:56:42 2024 user.err smartdns: server 223.6.6.6 SSL read fail error: error:0A00010F:SSL routines::bad length
Sun Sep 29 05:04:11 2024 user.err smartdns: server 1.12.12.12 SSL read fail error: error:0A00010F:SSL routines::bad length

由于阿里dns会刷屏报错,因此日志只开启了err级别,无法看到上下文信息。

运行环境

  1. 固件型号 ImmortalWrt 23.05.3

  2. 运营商

  3. smartdns来源以及版本 1.2024.v46.0.12-OpenWrt-openssl3

  4. 涉及的配置(注意去除个人相关信息)

    server-name smartdns
    speed-check-mode tcp:443
    dualstack-ip-selection no
    prefetch-domain yes
    serve-expired yes
    cache-size 16384
    dnsmasq-lease-file /tmp/dhcp.leases
    rr-ttl-min 600
    log-size 64K
    log-num 1
    log-level error
    log-syslog yes
    audit-size 64K
    audit-num 1
    response-mode fastest-ip
    cache-persist yes
    cache-file /etc/smartdns/smartdns.cache
    resolv-file /tmp/resolv.conf.d/resolv.conf.auto
    bind :1153@br-lan -group domestic
    bind :1153@lo -group domestic
    bind :1154@br-lan  -no-speed-check -no-dualstack-selection -force-aaaa-soa -group oversea
    bind :1154@lo  -no-speed-check -no-dualstack-selection -force-aaaa-soa -group oversea
    server-tls 223.5.5.5  -group domestic -exclude-default-group -subnet IP
    server-tls 223.6.6.6  -group domestic -exclude-default-group -subnet IP
    server-tls 120.53.53.53  -group domestic -exclude-default-group -subnet IP
    server-tls 1.12.12.12  -group domestic -exclude-default-group -subnet IP
    server-tls 223.5.5.5  -group oversea -exclude-default-group -subnet IP
    server-tls 223.6.6.6  -group oversea -exclude-default-group -subnet IP
    server-tls 120.53.53.53  -group oversea -exclude-default-group -subnet IP
    server-tls 1.12.12.12  -group oversea -exclude-default-group -subnet IP
    domain-set -name domain-block-list -file /etc/smartdns/domain-block.list
    domain-rules /domain-set:domain-block-list/ -address #
    conf-file /etc/smartdns/address.conf
    conf-file /etc/smartdns/blacklist-ip.conf
    conf-file /etc/smartdns/custom.conf

    custom.conf

    serve-expired-ttl 0
    serve-expired-prefetch-time 5400

openssl 版本

OpenSSL 3.0.15 3 Sep 2024 (Library: OpenSSL 3.0.15 3 Sep 2024)

重现步骤 偶发性出现,较难稳定复现

信息收集

  1. 将/var/log/smrtdns.log日志作为附件上传(注意去除个人相关信息)。
  2. 如进程异常,请将coredump功能开启,上传coredump信息文件,同时上传配套的smartdns进程文件。
    在自定义界面,开启设置->自定义设置->生成coredump配置,重现问题后提交coredump文件 coredump文件在/tmp目录下