Luna Yao
d59257c8b7
zone_handler: skip negative response to forward to upstream
...
catalog_lookup_returns_nodata_on_nameexists
fmt
2026-04-28 05:12:27 +02:00
Luna Yao
fb4479a99f
unit tests
2026-04-28 05:12:27 +02:00
Luna Yao
185777b741
server: add addresses to nic and bind to them
...
fmt
add address
save bindings
2026-04-28 05:12:27 +02:00
Luna Yao
7d536d3353
remove address hijack
2026-04-28 05:12:27 +02:00
Luna Yao
87f2905360
server: use guarden to protect system dns config
...
server: guarden
server guarden
2026-04-28 05:12:27 +02:00
Luna Yao
1338ab343c
node(election): use guard to protect nic_packet_process_pipeline
...
node: guarden
2026-04-28 04:52:51 +02:00
Luna Yao
38e7366c15
merge
2026-04-27 20:45:20 +02:00
Luna Yao
0f4003245b
Merge branch 'main' into feat/dns-policy
...
# Conflicts:
# easytier/src/common/config.rs
# easytier/src/common/dns.rs
# easytier/src/common/mod.rs
# easytier/src/core.rs
# easytier/src/instance/instance.rs
# easytier/src/launcher.rs
# easytier/src/peers/peer_ospf_route.rs
# easytier/src/proto/peer_rpc.proto
# easytier/src/utils/task.rs
2026-04-27 17:16:43 +02:00
Luna Yao
d5c4700d32
utils: replace defer, ContextGuard, DetachableTask with guarden crate ( #2163 )
2026-04-27 18:29:46 +08:00
KKRainbow
969ecfc4ca
fix(gui): refresh service after core version upgrade ( #2172 )
2026-04-27 15:54:52 +08:00
KKRainbow
8f862997eb
feat: support allocating public IPv6 addresses from a provider ( #2162 )
...
* feat: support allocating public IPv6 addresses from a provider
Add a provider/leaser architecture for public IPv6 address allocation
between nodes in the same network:
- A node with `--ipv6-public-addr-provider` advertises a delegable
public IPv6 prefix (auto-detected from kernel routes or manually
configured via `--ipv6-public-addr-prefix`).
- Other nodes with `--ipv6-public-addr-auto` request a /128 lease from
the selected provider via a new RPC service (PublicIpv6AddrRpc).
- Leases have a 30s TTL, renewed every 10s by the client routine.
- The provider allocates addresses deterministically from its prefix
using instance-UUID-based hashing to prefer stable assignments.
- Routes to peer leases are installed on the TUN device, and each
client's own /128 is assigned as its IPv6 address.
Also includes netlink IPv6 route table inspection, integration tests,
and event-driven route/address reconciliation.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com >
v2.6.2
2026-04-26 21:37:34 +08:00
KKRainbow
b20075e3dc
fix: allow self virtual IP loopback ( #2161 )
2026-04-25 21:26:16 +08:00
Luna Yao
eb3b5aae51
utils: add DetachableTask & ContextGuard ( #2138 )
2026-04-25 18:24:36 +08:00
datayurei
af6b6ab6f1
fix: avoid panic when validating mapped listeners ( #2153 )
2026-04-25 17:45:57 +08:00
Luna Yao
5a1668c753
refactor: remove ScopedTask ( #2125 )
...
* replace ScopedTask with AbortOnDropHandle
2026-04-25 15:20:25 +08:00
Luna Yao
820d9095d3
replace AsyncRuntime with simpler CancellableTask ( #2136 )
2026-04-25 10:29:53 +08:00
KKRainbow
2fb41ccbba
bump version 262 ( #2158 )
2026-04-25 10:22:24 +08:00
Luna Yao
b4666be696
fix: disable SO_REUSEADDR & enable SO_EXCLUSIVEADDRUSE on Windows ( #2128 )
2026-04-25 00:37:34 +08:00
KKRainbow
4688ad74ad
Honor credential reusable flag ( #2157 )
...
- propagate reusable through credential storage, CLI, RPC, routing, and tests
- enforce reusable=false owner election with current topology
- preserve proof-backed groups when refreshing credential ACL groups
2026-04-25 00:22:40 +08:00
Luna Yao
f7ea78d4f0
lower max_udp_payload_size to 1200 ( #2156 )
2026-04-24 21:20:37 +08:00
james.zhang
ac112440c3
fix(UrlInput): update parseUrl and buildUrlValue to handle null ports correctly ( #2146 )
2026-04-23 13:45:09 +08:00
KKRainbow
958b246f05
improve webclient ( #2151 )
2026-04-23 13:44:18 +08:00
james.zhang
263f4c3bc9
fix(peer_route): exclude current peer ID from proxy CIDR lists ( #2149 )
2026-04-22 20:30:38 +08:00
Luna Yao
ffddc517e1
fix: listener parsing ( #2143 )
...
Fixes a CLI listener parsing regression where url crate special-casing for ws/wss could misinterpret inputs like ws:11011, and adds coverage to prevent future regressions.
Changes:
Refactors listener parsing to avoid url::Url parsing for proto:port forms and to support additional shorthand inputs (port-only / IP-only / SocketAddr).
Centralizes “expand to all IpScheme variants” logic in a helper (gen_listeners) while preserving the “port=0 is dynamic” behavior.
Adds unit tests covering valid/invalid listener inputs and expansion behavior.
2026-04-21 23:45:22 +08:00
Debugger Chen
5cd0a3e846
feat: add upnp support ( #1449 )
2026-04-21 17:19:04 +08:00
Luna Yao
f4319c4d4f
ci(test): always check everything ( #2142 )
...
* ci(test): always check everything
* move Cargo.lock check to the last step
2026-04-21 10:08:27 +08:00
Luna Yao
0091a535d5
use mimalloc for FreeBSD ( #2144 )
2026-04-21 08:40:21 +08:00
Luna Yao
524c8d9987
move hostname function to utils
2026-04-20 00:51:59 +02:00
Luna Yao
d7a5fb8d66
remove --no-deps from lock check ( #2134 )
2026-04-20 00:46:26 +08:00
KKRainbow
f63054e937
fix: resolve Android APK version fallback to 1.0 on CI ( #2131 )
2026-04-19 19:06:37 +08:00
KKRainbow
efc043abbb
bump version to v2.6.1 ( #2129 )
2026-04-19 16:49:45 +08:00
Mg Pig
40c6de8e31
fix(core): restrict implicit config merge to explicit config files ( #2127 )
v2.6.1
2026-04-19 10:39:04 +08:00
KKRainbow
2db655bd6d
fix: refresh ACL groups and enable TCP_NODELAY for WebSocket ( #2118 )
...
* fix: refresh ACL groups and enable TCP_NODELAY for WebSocket
* add remove_peers to remove list of peer id in ospf route
* fix secure tunnel for unreliable udp tunnel
* fix(web-client): timeout secure tunnel handshake
* fix(web-server): tolerate delayed secure hello
* fix quic endpoint panic
* fix replay check
2026-04-19 10:37:39 +08:00
Luna Yao
11626d8082
remove id from zone
2026-04-19 02:17:50 +02:00
Luna Yao
362547eaab
use localhost as default hostname
2026-04-19 01:48:08 +02:00
Luna Yao
5df7913043
plan: update
2026-04-19 01:38:30 +02:00
Luna Yao
9feb548bc2
remove fqdn from DnsConfig
...
l
l
plan: update
plan: update
2026-04-19 01:38:29 +02:00
Luna Yao
cbb966d57c
remove fqdn from DnsExportConfig
2026-04-19 00:34:57 +02:00
Luna Yao
6db0be00ad
use sanitize in get_hostname
...
fmt
config
2026-04-19 00:34:57 +02:00
Luna Yao
185eb1e4c2
move sanitize and parse
...
fmt dns
dns utils
fmt
unit test
unit test
2026-04-19 00:34:55 +02:00
Luna Yao
ae4e9b3513
rewrite resolver_conf, socket_addrs
...
comment
dns utils
res
2026-04-19 00:34:44 +02:00
Luna Yao
7ae7725fbf
rewrite txt_lookup and srv_lookup
...
rewrite
rewrite
lookup
l
2026-04-19 00:34:41 +02:00
Luna Yao
5a516a195c
move common::dns to utils::dns
...
move dns
move
2026-04-18 23:14:25 +02:00
Luna Yao
c71ab7543f
remove accept_dns
2026-04-18 21:26:30 +02:00
Luna Yao
4f6f8f3d93
use CancellableTask in DnsNode
...
remove AsyncRuntime from DnsNode
node
n
n
clippy
2026-04-18 21:26:30 +02:00
Luna Yao
d5995ea1cb
use CancellableTask in DnsServer
...
server
2026-04-18 17:18:36 +02:00
Luna Yao
b0aae4f1fa
replace AsyncRuntime with simpler CancellableTask
...
add docstring for AsyncRuntime
task
task
2026-04-18 17:18:36 +02:00
Mg Pig
c49c56612b
feat(ui): add ACL graphical configuration interface ( #1815 )
2026-04-18 20:23:53 +08:00
Mg Pig
6ca074abae
feat(nix): 添加 rustfmt 和 clippy 到 Rust 工具链扩展 ( #2126 )
2026-04-18 20:23:26 +08:00
Luna Yao
4512e03d5f
plan: update
2026-04-18 11:29:11 +02:00