极物科技 | knxd - 路由模式与隧道模式详解
前言
KNX 作为国际标准(ISO/IEC 14543-3)拥有完全开放的协议规范与蓬勃的开源生态,knxd 正是这一开放性的最好注脚------一台普通 Linux 设备即可变身 KNX 路由器。
极物科技的产品同样构建在开放标准之上:自研 KNX 主机的极物 OS 原生支持 KNXnet/IP 路由与隧道双通道,与 knxd、ETS 等主流工具链无缝互通;配套鸿蒙、苹果、安卓三端原生 APP,深度接入 Apple HomeKit 与小度生态,支持主机远程调试------工程调试不受任何私有协议锁定。
一句话概述:本文回答"KNXnet/IP的router、tunnel、ets_router三种模式到底有什么区别、该用哪个",把模式选型一次讲透。
本文聚焦于 knxd 的路由/隧道/ETS路由三种KNXnet/IP工作模式,涵盖各模式原理、配置方法、选型对比、组播网络要求与常见坑位。
极物科技 | knxd - 路由模式与隧道模式详解

1. 三种模式一览
knxd 的 [server] 段用三个开关声明对外能力:
ini
[server]
server = ets_router ; ETS路由服务(供ETS诊断/编程)
router = router ; 组播路由模式
tunnel = tunnel ; 隧道模式
discover = true ; 可被搜索发现
multicast-address = 224.0.23.12
| 模式 | 传输方式 | 连接方数量 | 典型用途 |
|---|---|---|---|
| router(组播路由) | UDP组播 224.0.23.12:3671 | 多方,无通道概念 | 网关↔网关、网关↔主机常驻通信 |
| tunnel(隧道) | UDP单播 + 会话 | 受网关授权通道数限制 | 主机↔网关点对点、ETS编程下载 |
| ets_router | UDP组播(ETS专用规则) | ETS软件 | ETS在线诊断、下载 |
一份"三模式全开"的完整参考配置,工程可直接套用:
ini
[main]
addr = 15.15.15 ; knxd自身个体地址
client-addrs = 15.15.1:10 ; 隧道客户端地址池:15.15.1起的10个地址
connections = A.tcp,server,B.unix,C.ncn5120
name = zeewo
[server]
server = ets_router ; ETS路由服务(供ETS诊断/编程)
router = router ; 组播路由模式
tunnel = tunnel ; 隧道模式
discover = true ; 可被搜索发现
multicast-address = 224.0.23.12
[A.tcp] ; TCP接口(6720端口,供客户端连接)
port = 6720
server = knxd_tcp
[B.unix] ; Unix Socket接口
path = /var/run/knxd
server = knxd_unix
[C.ncn5120] ; TP总线收发器(串口19200bps)
device = /dev/ttyS5
driver = ncn5120
baudrate = 19200
三个注意点:client-addrs 地址池决定隧道模式能同时服务的客户端数(每个客户端占用一个个体地址);connections 的顺序决定连接链的组织;addr 必须与工程ETS规划一致,避免个体地址冲突。
2. 路由模式(Router,组播)
2.1 工作原理
所有路由模式设备加入同一组播组 224.0.23.12:3671,总线报文以KNXnet/IP Routing帧在组播组内广播:
text
设备A ──组播──▶ 224.0.23.12:3671 ──▶ 设备B、设备C、主机(同时收到)
特征:
- 无连接:不存在"上线/下线"握手,任何一方随时收发;
- 多方共享:一台主机 + 多台IP网关 + ETS路由可同组并存;
- 防回环:每个路由设备收到自己发出的帧会自动丢弃(knxd与极物主机均实现该机制)。
2.2 网络要求(重要)
组播模式对网络有硬性要求,是工程现场翻车率最高的环节:
- 交换机必须开启IGMP Snooping------否则组播被当广播洪泛,全VLAN流量风暴;
- 网络中需存在IGMP查询器( querier),通常三层交换机承担;
- 跨VLAN/跨路由器部署需配置组播路由(PIM),强烈建议KNX设备收敛在同一二层网络;
- WiFi桥接、部分家用路由器对组播支持极差,主机与网关之间走有线。
2.3 适用判断
✅ 主机与IP网关常驻通信(极物主机默认方案)
✅ 多网关大平层/多楼栋,需要一台主机统管
❌ 网络设备不可控的存量环境(改隧道)
3. 隧道模式(Tunnel)
3.1 工作原理
隧道是点对点会话:客户端向网关的3671端口发起连接请求,网关分配一个隧道通道,双方以序列号维持可靠传输:
text
客户端 网关
│── CONNECT_REQUEST ───▶│ 建立隧道
│◀─ CONNECT_RESPONSE ───│ 分配通道号
│── TUNNEL_REQUEST ────▶│ 数据帧(带序号)
│◀─ TUNNEL_ACK ─────────│ 确认
│── DISCONNECT_REQUEST ▶│ 释放通道
特征:
- 会话保活:需要心跳维持(极物主机实现为20秒心跳、60秒超时判定、5秒重连);
- 通道授权:网关通常只开1~8个隧道通道,每个客户端占用一个;
- 可靠传输:帧有序号与ACK,丢包可重传,适合编程下载等不容差错的场景。
3.2 使用要点
- 连接前确认网关的隧道授权数(
tunnel = tunnel的knxd侧默认可容纳多个客户端,但对端网关才是瓶颈); - ETS占用一个通道,调试期间主机+ETS同时连同一网关需至少2个授权;
- 客户端异常退出未发DISCONNECT时,通道会被占用到超时------遇到"通道满",重启网关最快。
3.3 适用判断
✅ 网络不支持组播的存量环境
✅ ETS在线编程下载
✅ 点对点简单拓扑,不愿折腾组播
❌ 多客户端并发需求大(受通道数限制)
4. ETS路由(ets_router)
server = ets_router 声明knxd可被ETS当作路由式接口使用(ETS设置中"KNXnet/IP"接口、路由模式)。ETS通过组播与knxd交互,可直接完成:
- 总线扫描与设备诊断;
- 应用程序下载(逐设备编程);
- 组地址监控。
与router的区别在于帧格式细节与握手规则遵循ETS的实现约定,日常工程把knxd的server段照抄模板即可,无需深究。
5. 选型决策表
| 现场条件 | 推荐模式 |
|---|---|
| 全新项目、网络设备可控 | router(组播) |
| 存量网络、组播不可靠 | tunnel |
| 主机+ETS+多网关并存 | 主机router + ETS走tunnel/ets_router |
| 只做调试临时接入 | tunnel(即插即走) |
| 跨楼层多交换机 | router,但必须逐台开启IGMP Snooping |
6. 常见坑位与排查
| 症状 | 根因 | 处置 |
|---|---|---|
| 组播模式单方面能收不能发 | 交换机组播过滤不对称 | 检查IGMP Snooping与端口过滤策略 |
| 隧道频繁掉线 | 心跳超时/通道被抢 | 核对心跳周期,减少并发客户端 |
| ETS连不上knxd | discover未开或防火墙拦3671/UDP | 开discover,放行UDP 3671 |
| 组播环境偶发风暴 | 多路由器互转形成环路 | 只保留一个路由源,其余用tunnel |
| 隧道报文乱序 | 网络QoS/NAT干扰 | 隧道两端避免跨NAT,关闭QoS重排 |
7. 注意事项
- 一次只选一种常态模式:主机与网关之间要么组播路由、要么隧道,混用两条链路连同一网关会引发重复报文;
- 心跳参数对齐:隧道模式心跳过短会被网关误杀,过长又恢复慢,极物主机的20s/60s/5s组合经过大量工程验证,自研客户端可直接参考;
- 组播地址唯一:224.0.23.12是KNX标准地址,多套KNX系统共网时靠个体地址区分,不要尝试改组播地址规避;
- 抓包验证:模式之争用Wireshark的KNXnet/IP dissector一眼定乾坤(见《knxd - Wireshark抓包与总线监控》)。
8. 相关文档
- 《极物科技 | knxd - 部署与配置完全指南》
- 《极物科技 | KNX网关 - KNXnet/IP路由器对接配置》
- 《极物科技 | KNX协议 - Tunneling隧道协议详解》
- 《极物科技 | KNX协议 - 组播路由机制详解》
- 《极物科技 | knxd - Wireshark抓包与总线监控》
关于极物科技(ZEEWO)
极物科技(Zeewo)致力于为用户提供智能控制系统及硬件产品。我们以总线系统为技术底座,以**"稳定、可靠、快速响应"**为产品底线,是国内少有的拥有 KNX、DALI 全套软硬件自主研发能力的厂商之一。
我们的核心能力:
- 系统架构:自研极物 OS,支持多协议无界融合(KNX/DALI/CAN/RS485/IP)。
- 核心硬件:带双路 DALI 的 KNX 主机、超薄全金属定制面板、各类智选传感器及网关。
- 生态互联:深度融入 Apple HomeKit、Matter、小度、HomeAssistant 及纯血鸿蒙生态。
- 调试交付:独家支持 ETS 导出 XML 直接导入进行 APP 免编程调试,支持远程 WEB 运维。
我们的市场覆盖:
服务网点已覆盖全国核心城市(含长三角、珠三角、成渝等),并以高品质的方案深耕家居生活、酒店民宿、企业办公、疗愈康养、餐馆会所 等多个细分领域。


(如果您在开发或落地中遇到技术问题,欢迎通过官网或后台私信与我交流探讨)