Commit Graph
47 Commits
Author SHA1 Message Date
SerinaNya be82f55277 feat(srv6)!: add node-info update invalidation
Publish node metadata through Tiny and Full queries, synchronize Swing and
web topology details, and document the updated protocol workflow.

BREAKING CHANGE: RouterInfo no longer carries device names; peers must use
Tiny node-info queries.
2026-08-28 23:14:04 +08:00
SerinaNya c3172a04b1 refactor(web)!: remove obsolete interfaces endpoint 2026-08-27 23:19:53 +08:00
SerinaNya cc803f47a7 feat(web): add /api/node-info endpoint for on-demand node detail queries
- Expose GET /api/node-info?address=<ipv6> endpoint in KLALBWebServer
- Return local deviceName and deviceDescription immediately for self node
- Perform asynchronous full node-info query (NODE_INFO_FULL_REQ) via
  KLALBRoutingProtocolAPIClient for remote nodes with 3s timeout fallback
2026-08-26 21:31:48 +08:00
KNEMC 3bb95988fc 增加enableTUN checkbox 2026-08-26 21:10:41 +08:00
SerinaNya 61868fe93e feat(config): switch webPort to URI-style webListen address
- replace integer webPort with MultiProtocolSocketAddress webListen
  (default: http://0.0.0.0:4665) in controller config
- rename Swing UI item to "Web API 监听地址" and validate as full URI
- update WebServer binding to honor configured host and port
- normalize legacy webPort integers to http://0.0.0.0:<port> on load
  and keep JSON API backward compatibility
- update i18n keys in zh_CN and en_US resource bundles
- update root klalb-config.json and AGENTS.md documentation
2026-08-26 19:42:26 +08:00
SerinaNya 9cea5ed493 feat(gui): add enable-Web-API toggle and web port settings
- new "Web API settings" section after security settings in the Swing
  options panel: checkbox bound to webUI plus a port text field bound
  to webPort (empty -> default 4665; non-numeric or out of 0-65535
  shows an invalid-port warning and aborts the save)
- load handler fills both controls from the current config item
- add i18n keys to klalb_zh_CN / klalb_en_US bundles
- include previously missing webUI/webPort fields in
  KLALBControllerConfigItem equals/hashCode
2026-08-26 00:36:24 +08:00
SerinaNya e0296e0ccd feat(srv6)!: replace openlines query with tiny/full node-info API
- routing-protocol JSON API: nodeinfotinyreq/resp returns device name
  only and is never gated; nodeinfofullreq/resp returns external
  endpoints + device name + description, where denyExternalEndpointQuery
  hides only the endpoint list (name/description always answer);
  legacy openlines* wire types removed - upgrade the whole mesh together
- rename misnamed openConnections -> externalEndpoints and
  denyConnection{Query,Broadcast} -> denyExternalEndpoint{Query,Broadcast};
  legacy config keys normalized on load because gson-2.1 lacks
  @SerializedName(alternate=...)
- remove TCP-based KLALBRemoteManagement, superseded by the HTTP API
- dashboard settings follow the renamed keys; update AGENTS.md
2026-08-26 00:23:21 +08:00
SerinaNya 9cea74943c fix(web): avoid gson-2.1 members-wrapped JSON responses; update AGENTS.md
- sendJsonResponse now serializes JsonElement via toString(), since gson-2.1's
  JSON_ELEMENT factory misses JsonObject/JsonArray subclasses and falls back to
  reflection (leaking the internal "members" field into every REST response)
- Document javac full-path requirement, pre-existing compile warnings,
  frontend page data flow, and gson quirks in AGENTS.md
2026-08-24 23:59:14 +08:00
SerinaNya 6c7017bc75 feat(web): integrate embedded web server, REST/SSE APIs and modernize configuration
- Add embedded KLALBWebServer with REST API, SSE streaming (200ms) and SPA hosting
- Introduce enableTUN configuration flag with fallback and non-admin execution support
- Refactor LineTable and ConnectLineTable to openConnections and autoConnections
- Rename denyLineTableQuery/Broadcast to denyConnectionQuery/Broadcast with backwards compatibility
- Support runtime config hot-reloading and automatic persistence to klalb-config.json
- Update default Web API port to 4665 and update dashboard submodule reference
2026-08-24 00:01:24 +08:00
SerinaNya 455139dfe9 feat: 新增设备信息与额外路由设置,支持设备名广播及TUN显式禁用
- 设置页新增设备名称(单行)、设备描述(多行)、额外路由(CIDR列表)设置项
- RouterInfo 广播携带 deviceName,并在拓扑图节点与节点概览中展示;deviceDescription 保持本地概览显示
- 拓扑图节点标签支持多行文本绘制
- 节点概览面板新增 IP 地址及设备详情展示
- 支持将 TUNName 设为 null/"null"/空字符串时完全跳过 Wintun 虚拟网卡创建
- .classpath 容器改为标准 JavaSE-25 执行环境以同时兼容 JDK 25 与 26
- 新增 AGENTS.md 与 VS Code 调试及运行配置

BREAKING CHANGE: RouterInfo 在序列化末尾追加了 deviceName 字段(writeUTF),新旧版本节点混连时路由协议解析异常,需同步升级
2026-08-21 23:34:41 +08:00
KNEMC f0efa6d041 ntp和udp URI的GUI现在可以不写协议 2026-07-14 16:38:47 +08:00
KNEMC 314f90b5f3 隧道链接改成标准URI格式 2026-07-11 22:28:50 +08:00
KNEMC 053450429c Changes 2026-07-07 01:24:34 +08:00
KNEMC 2dd62ec7c4 KLALB 3.6.0开发一半的状态 2026-07-06 17:16:33 +08:00
KNEMC c8b183da71 KLALB 3.6.0开发一半的状态 2026-07-06 17:03:27 +08:00
Administrator 620afef715 KLALB V3.6.0 写了一半 2026-02-27 08:32:03 +08:00
Administrator 8842566ee2 KLALB V3.4 2025-11-15 11:08:16 +08:00
Administrator 306bfd36f7 UI改进 2025-08-08 17:13:27 +08:00
Administrator 7267aec1fd KLALB3.2 2025-04-24 10:16:38 +08:00
Administrator 6de65562be 优化代码,性能暴涨 2025-01-29 14:01:11 +08:00
Administrator e243203535 KLALB2.3 2024-08-18 17:47:11 +08:00
Administrator e4f4c77c19 UPDATE 2.2 2024-01-30 16:54:57 +08:00
Administrator b4fccf3a03 KLALB UDP TEST 2024-01-30 16:54:09 +08:00
Administrator 722ab9710f 稳定性升级 2023-07-26 21:30:00 +08:00
Administrator 585b7c5fe6 KLALB大更新
新负载均衡算法
2023-07-02 13:20:11 +08:00
Administrator f743b23e53 KLALB完全大重写,代码规范了,可以当作网络库使用 2023-06-23 08:34:15 +08:00
Administrator 0499ecb34d 修复长时间使用导致连接卡死的故障
优化性能,减少内存占用
提高断线切换的响应速度
2023-04-05 08:44:37 +08:00
Administrator cc1df750ae 修复内存泄露 2023-03-16 16:06:39 +08:00
Administrator 2d6122480a 提高程序的稳定性 2023-03-09 08:26:54 +08:00
Administrator a9a4ad7c21 正式版V1.0 2023-01-07 07:04:09 +08:00
Administrator ea97e3891f 重发数据包优先 2023-01-05 08:19:54 +08:00
Administrator 62b22410a3 增加启动xtcp frpc功能 2023-01-01 16:20:40 +08:00
Administrator 1af088a29d 优化调度算法,避免路由震荡 2022-12-30 20:01:14 +08:00
Administrator c791720f95 V1.0 2022-12-27 17:38:49 +08:00
Administrator 6dd349e722 制作图形界面 2022-12-25 14:53:46 +08:00
Administrator 0797da8eb3 修复线程不能正确关闭的问题 2022-12-18 09:43:43 +08:00
Administrator e93a5815b4 增加流量控制
增加自动按延迟选择线路
2022-12-14 17:27:04 +08:00
Administrator 5d7324db0e TCP连接池功能 2022-12-11 17:27:03 +08:00
Administrator 9c5cac2c2d 提高性能 2022-12-08 15:15:29 +08:00
Administrator 45c369a0a1 测试1 2022-12-01 10:19:48 +08:00
Administrator 7d90fa17bd 再次优化调度性能 2022-11-29 15:12:14 +08:00
Administrator 05d4117ef3 自动获得节点地址功能 2022-11-28 15:47:42 +08:00
Administrator 913313b2a8 增加延迟检测功能 2022-11-27 10:19:45 +08:00
Administrator 4f2b416ac3 性能优化 2022-11-27 06:36:27 +08:00
Administrator 642c197143 合并IO线程管理类 2022-11-26 16:38:09 +08:00
Administrator 479204919b 延迟优化 2022-11-26 08:22:16 +08:00
Administrator 0b5ff2465b KLALB 2022-11-25 21:06:10 +08:00