3x-ui/internal/database/model
Pejman Yousefi 40cea0c2fe
feat(sub): generate random IPs from CIDR host addresses (#6784)
Operators who front a server with an IP range (a CDN or anycast prefix) had to
list each address as its own host. A host address may now be a CIDR, and every
subscription fetch expands it into up to randomCount (1–100, default 1) unique
random host IPs from the range, IPv4 and IPv6 alike, skipping the network and
broadcast addresses. The panel's own previews, QR codes and tunnel config
exports (WireGuard, AmneziaWG, TUIC, MTProto) expand it the same way, and the
externalProxy importer writes the model's default count so the re-sync still
recognises untouched imported hosts.
2026-10-24 05:13:44 +02:00
..
client_global_traffic.go fix: resolve a batch of open bug-tagged issues (traffic accounting, share strategy, sub address, CPU) (#5477) 2026-06-22 00:22:28 +02:00
client_legacy_fields.go fix(inbounds): accept v2.x client fields on inbound import 2026-09-27 18:28:07 +02:00
client_renewal_merge_test.go feat(clients): add calendar weekly renewal and schedule previews (#6524) 2026-09-26 22:59:23 +02:00
host_test.go feat(hosts): managed Hosts for per-host subscription link overrides (#5409) 2026-06-17 12:06:55 +02:00
hysteria_version_test.go fix(xray): reject configs xray-core refuses, and check the fixtures against it 2026-07-28 14:43:55 +02:00
model.go feat(sub): generate random IPs from CIDR host addresses (#6784) 2026-10-24 05:13:44 +02:00
model_mtproto_test.go refactor(mtproto): manage ad-tags per client only 2026-07-07 12:19:26 +02:00
model_shadowsocks_removed_test.go feat(xray): update xray-core to v26.7.11 and adapt panel 2026-07-12 00:30:47 +02:00
model_test.go fix(inbound): strip XHTTP client-only fields from xray config, keep for subscriptions (#5349) 2026-06-15 16:35:43 +02:00
model_wireguard_peers_test.go fix(wireguard): build peers in GenXrayInboundConfig so node reconcile keeps clients (#5684) 2026-07-09 00:52:03 +02:00
model_wireguard_test.go feat(clients): let admins set PersistentKeepalive on tunnel clients (#6377) 2026-09-10 22:32:42 +02:00
node_client_ip.go feat(nodes): per-node client IP attribution for IP-limit 2026-06-15 23:50:05 +02:00
node_client_traffic.go
node_pending_reset.go fix(traffic): make a client reset reach every counter enforcing its quota 2026-09-28 02:56:53 +02:00
tuic_traffic_receipt.go feat(tuic): implement native in-process Go TUIC v5 server (#6577) 2026-10-03 02:56:02 +02:00