MyGit

premium

Dreamacro/clash

版本发布时间: 2020-05-08 21:50:35

Dreamacro/clash最新发布版本:v1.18.0(2023-08-17 22:57:47)

S3 Storage (Long-term availability not guaranteed)

https://release.dreamacro.workers.dev/

Changelog

2023.03.18

2023.03.04

2023.03.03

2023.02.16

History Release Note

2023.01.29

  • upgrade to 1.13.0
    • DNS API with additional Server field for debug source
  • resolve_process_path should not throw error
  • block ipv6 to clash for auto-route @Kr328

2022.11.25

  • upgrade to 1.12.0
  • reduce structured log api alloc
  • refactor TUN code
  • upgrade gvisor
  • use fixed GUID for Wintun @Kr328
  • enforce loading only trusted Wintun dll @Kr328
  • fix fatal log on stdout
  • add process helper to shortcut and script
script:
  shortcuts:
    curl: resolve_process_name() == 'curl'
    # curl: resolve_process_path() == '/usr/bin/curl'
interface Context {
  resolve_process_path: (metadata: Metadata) => string
}
  • support userspace wireguard outbound @CzBiX
proxies:
  - name: "wg"
    type: wireguard
    server: 127.0.0.1
    port: 443
    ip: 172.16.0.2
    # ipv6: your_ipv6
    private-key: eCtXsJZ27+4PbhDkHnB923tkUn2Gj59wZw5wFA75MnU=
    public-key: Cr8hWlKvtDt7nrvf+f0brNQQzabAqrjfBvas9pmowjo=
    # preshared-key: base64
    # dns: [1.1.1.1, 8.8.8.8]
    # mtu: 1420
    udp: true

For some complicated reason, wireguard does not support relay, but you can use tunnel to support this feature in disguise

tunnels:
  - udp,127.0.0.1:2043,yourendpoint:port,ss
proxies:
  - name: ss
    # ...
  - name: "wg"
    type: wireguard
    server: 127.0.0.1
    port: 2043
    ip: 172.16.0.2
    # ipv6: your_ipv6
    private-key: eCtXsJZ27+4PbhDkHnB923tkUn2Gj59wZw5wFA75MnU=
    public-key: Cr8hWlKvtDt7nrvf+f0brNQQzabAqrjfBvas9pmowjo=
    # preshared-key: base64
    # dns: [1.1.1.1, 8.8.8.8]
    # mtu: 1420
    udp: true

2022.08.26

  • upgrade to 1.11.8
  • unknown slice out-of-bounds on system stack
  • wildcard domain config parse panic
  • improve large domain ruleset parse memory alloc
  • fix quic sniff irl @nekohasekai
  • passthrough dns for auto-redir @Kr328

Highlight

  • using structured logs, log messages are more detailed and transparent.
  • log API now receives format=structured for structured log json
  • now show DNS resolve detail on the debug log
DBG [DNS] dns response source=dhcp://119.29.29.29:53(en0) qType=A name=google.com. answer=["10.19.10.139"]

2022.07.07

  • upgrade to 1.11.4
  • auto-route bypass icmp on linux
  • add experimental sniff-tls-sni
    • sniff https/tls on 443 port
    • sniff http3/quic on udp 443 port @nekohasekai

Note This will replace the original domain name, but not all sni are domain, so clash will only replace the host is empty and the sni that is a domain If you find any network requests that are not working properly, remove it

experimental:
  sniff-tls-sni: true

2022.06.19

  • upgrade to 1.11.0
  • fix ipv6 lookup logic
  • udp would use the first DNS record instead of a random one
  • add auto redir (wiki)

2022.05.18

  • fix domain set match edge case

2022.05.17

  • upgrade to dev (b384449)
  • improve linux auto-route compatibility @Kr328
  • rule provider on rules support no-resolve @Kr328
rules:
  - RULE-SET,microsoft,policy,no-resolve
  • add match_provider to script shortcuts @Kr328
script:
  shortcuts: 
    BilibiliUdp: |
      network == "udp" and match_provider("Bilibili")

rules:
  - SCRIPT,BilibiliUdp,REJECT
  • ebpf redirect bypass ICMP

2022.04.17

  • fix auto-route on Linux (#2071)
  • dns-hijack support hijack same port traffic
tun:
  enable: true
  stack: system # or gvisor
  dns-hijack:
    - any:53
    - tcp://any:53
  • add new ebpf moudle redirect-to-tun It requires kernel support, only hook traffic of the egress NIC and conflict with auto-route
interface-name: eth0
routing-mark: 7777
ebpf:
  redirect-to-tun:
    - eth0

2022.04.11

  • fix interface cache initial bug

2022.04.10

  • fix rule provider wrong match result
  • add auto-route and auto-detect-interface on Linux @Kr328

Explore but not in this release

  • use eBPF and tc to hook NIC to implement similar feature like auto-route
  • Is clean-dns-bpf still working? Does it make sense to integrate into clash?

2022.03.21

  • gvisor adaptation (memory leak), every time it is updated it must have problems 🥶
  • fix rule provider wrong match result

2022.03.19

  • upgrade to 1.10.0
  • upgrade gvisor
  • use generic and net/netip as much as possiable
  • memory-optimized domain rule provider
    • benchmark result, use a ~57000 lines rule (+.example.com), memory 29MB (Old) --> 1.9MB (New)
goos: darwin
goarch: arm64
pkg: test
BenchmarkNew-10              	 3464176	       345.4 ns/op	       0 B/op	       0 allocs/op
BenchmarkOld-10              	11119957	       106.1 ns/op	      48 B/op	       1 allocs/op

2022.01.27

  • upgrade to dev (b1a639f)
    • support snell v3
    • trojan vmess tls handshake requires a timeout
    • change provider file modify time when updated
    • domain trie search (effect hosts fake-ip-filter fallback-filter nameserver-policy domain rule provider)
  • adapted gvisor new udp packet API to solve the memory leak problem caused by gvisor @nekohasekai
  • make tun hot reload as much as possible again @Fndroid

2022.01.03

  • fix inbound http auth failed
  • ignore bind6 error on Windows

2022.01.02

  • upgrade to 1.9.0
  • build with go1.18beta1
    • use netip.Addr to replace net.IP where possible (reduce memory usage, especially with system TUN)
    • use generics where possible

2021.12.07

  • upgrade to dev (08607fb)
    • bind interface error
    • revert ssr udp fix
    • add filter on proxy provider (#1511)
  • use SIMD for arm64 system stack checksum @Kr328
  • system stack tun should use a independent fakeip pool
    • how to cleanup persistence fakeip (If you don't know what this is, ignore it): use curl -X POST controllerip:port/cache/fakeip/flush to flush persistence fakeip
  • system stack udp behavior (e.g. csgo)
  • broken connectivity check for UWP apps under Windows 11 @icpz
  • native syscall bind Windows interface
  • auto detect interface on Windows loop on switch network

2021.11.08

  • upgrade to v1.8.0
  • adaptive wintun 0.14, drop < 0.14 support
  • use SIMD for amd64 system stack checksum @Kr328
    • Increased throughput by 20% on my macbook 2018
  • adjust system stack behavior

2021.09.15

  • upgrade to v1.7.1
  • shortcut now output short access log

2021.09.07

  • upgrade to v1.7.0
  • upgrade gvisor
  • support script shortcut
  • support auto-route on FreeBSD @icpz
  • fix tun packet size invalid panic
  • fix gvisor addr NPE
  • fix auto-detect-interface auto-route in PPPoE networks on Windows @icpz

2021.07.03

  • upgrade to v1.6.5
  • upgrade gvisor
  • fix broken connectivity check on Windows TUN (@icpz)

2021.05.08

  • upgrade to v1.6.0
  • support TUN on FreeBSD (@icpz)
  • support both system and gvisor TUN stack on Windows (@icpz)
  • fix auto detect interface on macOS 11.3
  • fix tracing API panic
  • rename macOS-auto-* to auto-* (will be backward compatible with several versions)

2021.04.08

  • upgrade to v1.5.0
  • upgrade gvisor to support 32bit system again
  • tracing API is non-blocking now
  • huge reduce rule provider behavior: ipcidr memory
    • 488k lines ip-cidr take up only 1.1MiB after parse config
  • add time module to script
def main(ctx, metadata):
  now = time.now()
  if metadata["src_ip"] == "ip" and now.hour >= 18 and now.hour <= 22:
    return "REJECT"

  return "DIRECT"

2021.03.10

  • upgrade to v1.4.2
    • solved the problem of not reaching some servers as a gateway in fakeip mode
    • solved the problem that HTTP Connect proxy broken when system proxy and fakeip were both enabled

2021.02.21

  • upgrade to v1.4.1

2021.02.19

profile:
  # open tracing exporter API
  tracing: true

2020.12.27 (hotfix version)

  • upgrade to v1.3.5
  • fix PROCESS-NAME can't match UDP process on Windows
  • fix panic and loop TUN config on Windows TUN

2020.12.21

  • upgrade to dev(4b1b494164b4b87af4ae44db1c890e64ca3fedd0)
  • script support resolve_process_name Doc
  • experimental support TUN on Windows with zero setups by hands (Doc), Thanks @CzBiX hard work!

2020.11.20

  • upgrade to v1.3.0

2020.10.09

  • upgrade to v1.2.0

2020.10.08

  • fix a redir-host bug on 2020.09.27

2020.09.27

  • upgrade latest dev (e09931d)
  • fix classical rule provider resolve ip logic

2020.08.16

  • upgrade to v1.1.0
  • script support path
script:
    path: ./script.star
  • upgrade gvisor
  • bug fixed

2020.06.27

  • upgrade to v1.0.0
  • macOS-auto-detect-interface can detect PPPoE
  • add classical rule provider

Documentations

https://github.com/Dreamacro/clash/wiki/Premium-Core-Features

相关地址:原始地址 下载(tar) 下载(zip)

1、 clash-freebsd-386-2023.03.18.gz 5.07MB

2、 clash-darwin-arm64-2023.03.18.gz 5.29MB

3、 clash-darwin-amd64-2023.03.18.gz 5.55MB

4、 clash-freebsd-amd64-2023.03.18.gz 5.33MB

5、 clash-darwin-amd64-v3-2023.03.18.gz 5.55MB

6、 clash-freebsd-amd64-v3-2023.03.18.gz 5.32MB

7、 clash-freebsd-arm64-2023.03.18.gz 4.84MB

8、 clash-linux-386-2023.03.18.gz 5.35MB

9、 clash-linux-amd64-2023.03.18.gz 5.61MB

10、 clash-linux-amd64-v3-2023.03.18.gz 5.61MB

11、 clash-linux-arm64-2023.03.18.gz 5.11MB

12、 clash-linux-armv5-2023.03.18.gz 5.31MB

13、 clash-linux-armv6-2023.03.18.gz 5.3MB

14、 clash-linux-armv7-2023.03.18.gz 5.29MB

15、 clash-linux-mips-hardfloat-2023.03.18.gz 5.08MB

16、 clash-linux-mips-softfloat-2023.03.18.gz 5.08MB

17、 clash-linux-mips64-2023.03.18.gz 4.98MB

18、 clash-linux-mips64le-2023.03.18.gz 4.88MB

19、 clash-linux-mipsle-hardfloat-2023.03.18.gz 4.98MB

20、 clash-linux-mipsle-softfloat-2023.03.18.gz 4.99MB

21、 clash-linux-riscv64-2023.03.18.gz 5.25MB

22、 clash-windows-386-2023.03.18.zip 5.36MB

23、 clash-windows-amd64-2023.03.18.zip 5.5MB

24、 clash-windows-amd64-v3-2023.03.18.zip 5.49MB

25、 clash-windows-arm64-2023.03.18.zip 4.99MB

26、 clash-windows-armv7-2023.03.18.zip 5.2MB

查看:2020-05-08发行的版本