Compare commits

..

79 Commits

Author SHA1 Message Date
世界
45798b10c8
documentation: Bump version 2025-04-27 21:38:28 +08:00
安容
0f8bd01aad
Report invalid DNS address early 2025-04-27 21:38:09 +08:00
世界
e528d425a1
Fix wireguard listen_port 2025-04-27 21:38:08 +08:00
世界
05b6a088a6
clash-api: Add more meta api 2025-04-27 21:34:55 +08:00
世界
73f4b41366
Fix DNS lookup 2025-04-27 21:34:55 +08:00
世界
a15f35a076
Fix tailscale sending unexpected stuff 2025-04-27 21:34:55 +08:00
世界
2316ca38a9
Fix fetch ECH configs 2025-04-27 21:34:55 +08:00
reletor
fc0096b0e6
documentation: Minor fixes 2025-04-27 21:34:55 +08:00
caelansar
d6ab06e1aa
Fix callback deletion in UDP transport 2025-04-27 21:34:55 +08:00
世界
55ca427721
documentation: Try to make the play review happy 2025-04-27 21:34:54 +08:00
世界
26ae7a61e9
Fix missing handling of legacy domain_strategy options 2025-04-27 21:34:54 +08:00
世界
013c707ee8
Improve local DNS server 2025-04-27 21:34:54 +08:00
anytls
01b3d719f5
Update anytls
Co-authored-by: anytls <anytls>
2025-04-27 21:34:54 +08:00
世界
3722fc4987
Fix DNS dialer 2025-04-27 21:34:53 +08:00
世界
ed3aca4208
release: Skip override version for iOS 2025-04-27 21:34:53 +08:00
iikira
5155f95ace
Fix UDP DNS server crash
Signed-off-by: iikira <i2@mail.iikira.com>
2025-04-27 21:34:53 +08:00
ReleTor
7185c03f01
Fix fetch ECH configs 2025-04-27 21:34:53 +08:00
世界
839c4a31fc
release: Update Go to 1.24.2 2025-04-27 21:34:53 +08:00
世界
fd6e5abb86
Allow direct outbounds without domain_resolver 2025-04-27 21:34:52 +08:00
世界
407f2dad75
Fix Tailscale dialer 2025-04-27 21:34:52 +08:00
dyhkwong
883cd0eb62
Fix DNS over QUIC stream close 2025-04-27 21:34:52 +08:00
anytls
f0c3464757
Update anytls
Co-authored-by: anytls <anytls>
2025-04-27 21:34:51 +08:00
Rambling2076
8b27e1f23f
Fix missing with_tailscale in Dockerfile
Signed-off-by: Rambling2076 <Rambling2076@proton.me>
2025-04-27 21:34:51 +08:00
世界
d1a11df54f
Fail when default DNS server not found 2025-04-27 21:34:51 +08:00
世界
0c6b7e7d16
Update gVisor to 20250319.0 2025-04-27 21:34:51 +08:00
世界
20dd4b74c6
release: Do not build tailscale on iOS and tvOS 2025-04-27 21:34:50 +08:00
世界
c5df6c8c49
Explicitly reject detour to empty direct outbounds 2025-04-27 21:34:50 +08:00
世界
d379dcc53d
Add netns support 2025-04-27 21:34:50 +08:00
世界
ea012b4173
Add wildcard name support for predefined records 2025-04-27 21:34:50 +08:00
世界
0b52e96b3c
Remove map usage in options 2025-04-27 21:34:49 +08:00
世界
d998a73a4c
Fix unhandled DNS loop 2025-04-27 21:34:49 +08:00
世界
015f6efc09
Add wildcard-sni support for shadow-tls inbound 2025-04-27 21:34:49 +08:00
世界
1befa4bf2f
Fix Tailscale DNS 2025-04-27 21:34:48 +08:00
k9982874
6ab62ea5c7
Add ntp protocol sniffing 2025-04-27 21:34:48 +08:00
世界
a6e9d900c8
option: Fix marshal legacy DNS options 2025-04-27 21:34:48 +08:00
世界
f40e9e7306
Make domain_resolver optional when only one DNS server is configured 2025-04-27 21:34:48 +08:00
世界
724d74e6ae
Fix DNS lookup context pollution 2025-04-27 21:34:47 +08:00
世界
9afdd2d0fb
Fix http3 DNS server connecting to wrong address 2025-04-27 21:34:47 +08:00
Restia-Ashbell
8f1e2566da
documentation: Fix typo 2025-04-27 21:34:47 +08:00
anytls
aa6a6fd002
Update sing-anytls
Co-authored-by: anytls <anytls>
2025-04-27 21:34:47 +08:00
k9982874
2288a080de
Fix hosts DNS server 2025-04-27 21:34:47 +08:00
世界
62a9691016
Fix UDP DNS server crash 2025-04-27 21:34:46 +08:00
世界
74f6941c3c
documentation: Fix missing ip_accept_any DNS rule option 2025-04-27 21:34:46 +08:00
世界
551db61d33
Fix anytls dialer usage 2025-04-27 21:34:45 +08:00
世界
55e1fa8a15
Move predefined DNS server to rule action 2025-04-27 21:34:45 +08:00
世界
13bffd4819
Fix domain resolver on direct outbound 2025-04-27 21:34:44 +08:00
Zephyruso
0a6e6d773c
Fix missing AnyTLS display name 2025-04-27 21:34:44 +08:00
anytls
572285eef1
Update sing-anytls
Co-authored-by: anytls <anytls>
2025-04-27 21:34:44 +08:00
Estel
f670078ebf
documentation: Fix typo
Signed-off-by: Estel <callmebedrockdigger@gmail.com>
2025-04-27 21:34:43 +08:00
TargetLocked
8e8211b3e8
Fix parsing legacy DNS options 2025-04-27 21:34:43 +08:00
世界
192f452e0f
Fix DNS fallback 2025-04-27 21:34:43 +08:00
世界
b953dad23f
documentation: Fix missing hosts DNS server 2025-04-27 21:34:42 +08:00
anytls
c42598c5a3
Add MinIdleSession option to AnyTLS outbound
Co-authored-by: anytls <anytls>
2025-04-27 21:34:42 +08:00
ReleTor
2c730e3ca6
documentation: Minor fixes 2025-04-27 21:34:42 +08:00
libtry486
df788c7925
documentation: Fix typo
fix typo

Signed-off-by: libtry486 <89328481+libtry486@users.noreply.github.com>
2025-04-27 21:34:41 +08:00
Alireza Ahmadi
f56bd38060
Fix Outbound deadlock 2025-04-27 21:34:41 +08:00
世界
0614d85b01
documentation: Fix AnyTLS doc 2025-04-27 21:34:41 +08:00
anytls
483fd413fb
Add AnyTLS protocol 2025-04-27 21:34:41 +08:00
世界
cb048be805
Migrate to stdlib ECH support 2025-04-27 21:34:41 +08:00
世界
ead0b3d99a
Add fallback local DNS server for iOS 2025-04-27 21:34:40 +08:00
世界
42fd9b50cf
Get darwin local DNS server from libresolv 2025-04-27 21:34:40 +08:00
世界
aa91604522
Improve resolve action 2025-04-27 21:34:40 +08:00
世界
dfc6398442
Fix toolchain version 2025-04-27 21:34:39 +08:00
世界
6cdf99dc45
Add back port hopping to hysteria 1 2025-04-27 21:34:39 +08:00
世界
382ed8158a
Update dependencies 2025-04-27 21:34:38 +08:00
xchacha20-poly1305
d43767f992
Remove single quotes of raw Moziila certs 2025-04-27 21:34:38 +08:00
世界
eccace2329
Add Tailscale endpoint 2025-04-27 21:34:37 +08:00
世界
06b6369f89
Build legacy binaries with latest Go 2025-04-27 21:34:37 +08:00
世界
ad4f82243a
documentation: Remove outdated icons 2025-04-27 21:34:37 +08:00
世界
9c53916115
documentation: Certificate store 2025-04-27 21:34:37 +08:00
世界
ceb7a25cf7
documentation: TLS fragment 2025-04-27 21:34:36 +08:00
世界
9d4bab4723
documentation: Outbound domain resolver 2025-04-27 21:34:36 +08:00
世界
0e0ca7508d
documentation: Refactor DNS 2025-04-27 21:34:36 +08:00
世界
ea8aeb04f0
Add certificate store 2025-04-27 21:34:35 +08:00
世界
493bc247d7
Add TLS fragment support 2025-04-27 21:34:35 +08:00
世界
9e4dfcf644
refactor: Outbound domain resolver 2025-04-27 21:34:35 +08:00
世界
5d2a70a92a
refactor: DNS 2025-04-27 21:34:35 +08:00
世界
348cc39975
Bump version 2025-04-27 21:33:31 +08:00
世界
987899f94a
Fix usages of wireguard listener 2025-04-27 21:29:23 +08:00
9 changed files with 33 additions and 8 deletions

@ -1 +1 @@
Subproject commit 55f31c29bb68895ce544e0dfbf852b4b3e32b530 Subproject commit 6a15780ce1659a234816f7248cbc09e8ea54a1be

View File

@ -351,7 +351,7 @@ func (d *DefaultDialer) ListenPacketCompat(network, address string) (net.PacketC
} }
return nil return nil
}) })
return d.udpListener.ListenPacket(context.Background(), network, address) return udpListener.ListenPacket(context.Background(), network, address)
} }
func trackConn(conn net.Conn, err error) (net.Conn, error) { func trackConn(conn net.Conn, err error) (net.Conn, error) {

View File

@ -93,7 +93,9 @@ func NewHTTPS(ctx context.Context, logger log.ContextLogger, tag string, options
return nil, err return nil, err
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 443 serverAddr.Port = 443
} }
return NewHTTPSRaw( return NewHTTPSRaw(

View File

@ -89,7 +89,9 @@ func NewHTTP3(ctx context.Context, logger log.ContextLogger, tag string, options
return nil, err return nil, err
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 443 serverAddr.Port = 443
} }
return &HTTP3Transport{ return &HTTP3Transport{

View File

@ -16,6 +16,7 @@ import (
sQUIC "github.com/sagernet/sing-quic" sQUIC "github.com/sagernet/sing-quic"
"github.com/sagernet/sing/common" "github.com/sagernet/sing/common"
"github.com/sagernet/sing/common/bufio" "github.com/sagernet/sing/common/bufio"
E "github.com/sagernet/sing/common/exceptions"
"github.com/sagernet/sing/common/logger" "github.com/sagernet/sing/common/logger"
M "github.com/sagernet/sing/common/metadata" M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network" N "github.com/sagernet/sing/common/network"
@ -55,7 +56,9 @@ func NewQUIC(ctx context.Context, logger log.ContextLogger, tag string, options
tlsConfig.SetNextProtos([]string{"doq"}) tlsConfig.SetNextProtos([]string{"doq"})
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 853 serverAddr.Port = 853
} }
return &Transport{ return &Transport{

View File

@ -13,6 +13,7 @@ import (
"github.com/sagernet/sing-box/option" "github.com/sagernet/sing-box/option"
"github.com/sagernet/sing/common" "github.com/sagernet/sing/common"
"github.com/sagernet/sing/common/buf" "github.com/sagernet/sing/common/buf"
E "github.com/sagernet/sing/common/exceptions"
M "github.com/sagernet/sing/common/metadata" M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network" N "github.com/sagernet/sing/common/network"
@ -37,7 +38,9 @@ func NewTCP(ctx context.Context, logger log.ContextLogger, tag string, options o
return nil, err return nil, err
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 53 serverAddr.Port = 53
} }
return &TCPTransport{ return &TCPTransport{

View File

@ -54,7 +54,9 @@ func NewTLS(ctx context.Context, logger log.ContextLogger, tag string, options o
return nil, err return nil, err
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 853 serverAddr.Port = 853
} }
return &TLSTransport{ return &TLSTransport{

View File

@ -13,6 +13,7 @@ import (
"github.com/sagernet/sing-box/log" "github.com/sagernet/sing-box/log"
"github.com/sagernet/sing-box/option" "github.com/sagernet/sing-box/option"
"github.com/sagernet/sing/common/buf" "github.com/sagernet/sing/common/buf"
E "github.com/sagernet/sing/common/exceptions"
"github.com/sagernet/sing/common/logger" "github.com/sagernet/sing/common/logger"
M "github.com/sagernet/sing/common/metadata" M "github.com/sagernet/sing/common/metadata"
N "github.com/sagernet/sing/common/network" N "github.com/sagernet/sing/common/network"
@ -44,7 +45,9 @@ func NewUDP(ctx context.Context, logger log.ContextLogger, tag string, options o
return nil, err return nil, err
} }
serverAddr := options.DNSServerAddressOptions.Build() serverAddr := options.DNSServerAddressOptions.Build()
if serverAddr.Port == 0 { if !serverAddr.Addr.IsValid() {
return nil, E.New("invalid server address: ", serverAddr)
} else if serverAddr.Port == 0 {
serverAddr.Port = 53 serverAddr.Port = 53
} }
return NewUDPRaw(logger, dns.NewTransportAdapterWithRemoteOptions(C.DNSTypeUDP, tag, options), transportDialer, serverAddr), nil return NewUDPRaw(logger, dns.NewTransportAdapterWithRemoteOptions(C.DNSTypeUDP, tag, options), transportDialer, serverAddr), nil

View File

@ -2,6 +2,16 @@
icon: material/alert-decagram icon: material/alert-decagram
--- ---
#### 1.12.0-beta.6
* Fixes and improvements
### 1.11.9
* Fixes and improvements
_We are temporarily unable to update sing-box apps on the App Store because the reviewer mistakenly found that we violated the rules (TestFlight users are not affected)._
#### 1.12.0-beta.5 #### 1.12.0-beta.5
* Fixes and improvements * Fixes and improvements