恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

OpenIPC 固件集成 Nabto Edge:让 IPC 的 RTSP 流穿透 NAT 实现全球直连访问

  • 首页
  • 资讯中心
  • /
  • OpenIPC 固件集成 Nabto Edge:让 IPC 的 RTSP 流穿透 NAT 实现全球直连访问

相关资讯

插件加载失败?一文读懂 did not activate 机制与排查 2026/10/4 9:48:58
前端已亡,神自天降(Trae)2:把 Base URL 改到 TaoToken 的完整配置与验证 2026/10/4 9:48:58
手写STFT的实现方法:从DFT原理到Matlab代码,真正搞懂时频分析 2026/10/4 9:48:58

最新资讯

COMSOL自适应网格全解析:从应力集中到BAW谐振器的高效仿真
SunnyUI Json 静态类使用指南:零第三方依赖的 C WinForm JSON 序列化方案
多租户SaaS架构设计:从数据隔离到云上部署的完整实践
市面上有哪些是真正安全的降AI率网站(稳住论文学术合规性)
GeoAI 版本演进全解析:从 v0.0.1 到 v0.35.0 的功能清单与源码印证
别再只问“AI论文软件谁第一”了:生态地质与修复人的上分指南 [特殊字符][特殊字符]

今日推荐

MR25H40CDF + PIC18F65K40:工业记录仪高可靠存储实战
基于STM32的数控恒压恒流电源设计:从硬件到PID调参全解析
LT9211 MIPI重定时器原理与双路扇出实战指南

本周热门

MR25H40CDF + PIC18F65K40:工业记录仪高可靠存储实战
基于STM32的数控恒压恒流电源设计:从硬件到PID调参全解析
LT9211 MIPI重定时器原理与双路扇出实战指南

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

OpenIPC 固件集成 Nabto Edge:让 IPC 的 RTSP 流穿透 NAT 实现全球直连访问

发布时间:2026/10/4 9:48:58
OpenIPC 固件集成 Nabto Edge:让 IPC 的 RTSP 流穿透 NAT 实现全球直连访问 嵌入式智能硬件物联网【免费下载链接】firmwareAlternative IP Camera firmware from an open community项目地址https://gitcode.com/gh_mirrors/fir/firmware点击查看免费下载导读本文以 OpenIPC 社区固件仓库中general/package/nabto包的官方集成指南为主体讲解如何在 OpenIPC 相机上启用 Nabto Edge 嵌入式 SDK 的tcp_tunnel_device组件实现不依赖公网 IP、无需端口映射从世界任意位置直接拉取相机 RTSP 流。读完本文你将掌握 Nabto Cloud Console 的设备注册流程、tcp_tunnel_device --demo-init的交互式配置方法、edge_tunnel_client的配对与取流操作并理解该包在 OpenIPC 构建系统中针对嵌入式场景所做的裁剪与调优。1. 这个包解决什么问题Nabto Edge 平台的核心思想是设备直连P2P客户端与设备之间的数据不经过中转服务器间接转发而是由平台Basestation协助双方完成 NAT 穿透后直接通信。这一点在 包配置文件 中描述得很清楚The Nabto Edge platform makes it possible to communicate directly between two entities: Instead of interacting indirectly with a device through a cloud service, the platform makes it simple to communicate directly with the actual device to invoke services or transfer data - also through firewalls.本包general/package/nabto从 Nabto Edge 嵌入式 SDK 中选取了tcp_tunnel_device组件官方 readme 给出的典型场景正是在 OpenIPC 相机上运行隧道设备程序让身处世界任意位置的客户端通过 Nabto 平台访问相机的 RTSP 流。从构建脚本general/package/nabto/nabto.mk可以看到该包的工程定位版本锁定为NABTO_VERSION 5.13.0源码来自上游 SDK 的 release 压缩包运行时依赖仅两个 OpenIPC 自维护的库libevent-openipc与mbedtls-openipc以Release模式静态编译BUILD_SHARED_LIBSOFF最终只向目标系统/usr/bin安装一个可执行文件tcp_tunnel_device非常适合资源受限的 IPC 环境。2. 前置准备注册产品与设备在给相机做任何配置之前需要先在Nabto Cloud Consolehttps://console.cloud.nabto.com完成注册获取两个关键标识标识格式示例作用Product-IDpr-xxxxxxxx标识你创建的产品产品级Device-IDde-xxxxxxxx标识某个具体设备设备级注意用于完成配对的fingerprint设备指纹只有在相机端完成配置之后才会生成因此顺序必须是先在云端注册拿到 pr/de 两串 ID再回到相机上配置最后把生成的 fingerprint 回填到云端设备设置里。若读者希望了解云端一侧的设备管理细节可查阅 Nabto 官方开发者文档中的 Guides原 readme 末尾给出的指引。本仓库不涉及云端控制台的实现代码。3. 相机端配置tcp_tunnel_device --demo-init登录 OpenIPC 相机的 shell示例中主机名为openipc-t31即君正 T31 平台启动带--demo-init参数的初始化流程rootopenipc-t31:# tcp_tunnel_device --demo-init No device configuration found. Creating configuration: /home/user/.nabto/edge/config/device.json. The device configuration requires a Product ID and a Device ID, created in the Nabto Cloud Console. Product Id: pr-ydk3xhyn Device Id: de-orruyc4n Demo initialization will make a simple IAM setup, be aware that this is not what you want in production. Local Open Pairing and Password Open Pairing are enabled. Newly paired users get the Administrator role. Next step is to add TCP tunnel services. What type of service do you want to add? [0]: continue [1]: ssh [2]: http [3]: rtsp Enter a valid number (default: 1) [0-3]: 3 Enter the port of your RTSP server (default: 8554) [0-65535]: 554 Enter your RTSP endpoint (default: /video): /stream0 Added rtsp service on localhost port 554 with metadata rtsp-path /stream03.1 交互步骤逐项解读输入产品与设备 ID把云端注册得到的pr-ydk3xhyn、de-orruyc4n依次输入。程序会在首次运行时自动创建配置目录与device.json。IAM 安全提示--demo-init会启用Local Open Pairing和Password Open Pairing两种配对方式新配对的用户直接获得Administrator角色——这是演示用途的简易 IAM 配置不推荐直接用于生产环境原 readme 对此有明确警告。添加隧道服务选择3rtsp随后指定RTSP 服务端口填写本地 RTSP 服务器的端口示例为554RTSP endpoint填写流路径示例为/stream0这是 OpenIPC 常见的子码流路径。完成服务添加后程序会输出Added rtsp service on localhost port 554 with metadata rtsp-path /stream0表明隧道服务已在127.0.0.1:554上就位并且把rtsp-path作为元数据与该项服务绑定。3.2 获取并保存 fingerprint初始化结束时程序会打印设备的 FingerprintSHA256 格式的十六进制串必须把它保存到云端对应设备的设置中否则设备将不被允许接入 BasestationThe configuration and state has been initialized The Fingerprint must be configured for this device in the Nabto Cloud Console before it will be allowed to attach to the Basestation. If you want to reuse an already configured fingerprint, you can copy the corresponding private key to /home/user/.nabto/edge/keys/device.key The device Fingerprint is: 3de2ec6ded2cc975bf87ed63b2303e02b8051fb7359b19a3d950ed0158bb3813同时注意输出里给出的一个复用技巧如果希望复用已配置过的指纹可以把对应的私钥拷贝到~/.nabto/edge/keys/device.key。4. 启动隧道设备并确认连接配置完成后直接以普通模式启动tcp_tunnel_device成功连接到 Basestation 时输出类似rootopenipc-t31:# tcp_tunnel_device ######## Nabto TCP Tunnel Device ######## # Product ID: pr-ydk3xhyn # Device ID: de-orruyc4n # Fingerprint: 3de2ec6ded2cc975bf87ed63b2303e02b8051fb7359b19a3d950ed0158bb3813 # Version: 0.0.0-branch.heads/master.commits.1910a49d27fc.dirty # Local UDP Port: 5592 # Friendly Name: Tcp Tunnel # # The device offers Local Open Pairing # # The device has Password Open Pairing enabled # Open Pairing Password: X9NphkArpzLU # Open Pairing SCT: 9jLgbUb4FWhe # Open Pairing String: ppr-ydk3xhyn,dde-orruyc4n,pwdX9NphkArpzLU,sct9jLgbUb4FWhe # ######## Configured TCP Services ######## # Id Type Host Port # rtsp rtsp 127.0.0.1 554 ######## Attached to the basestation这段输出是后续所有操作的关键信息源请留意其中三处Local UDP Port: 5592Nabto 设备侧 UDP 通信端口Open Pairing String形如ppr-...,dde-...,pwd...,sct...的一整串配对凭证客户端远程配对时要直接复制它Attached to the basestation一行即表明设备已成功附着到 Nabto 平台NAT 穿透通道已就绪。4.1 源码中的嵌入式调优有意思的是OpenIPC 对本包的上游代码做了嵌入式适配两处补丁直接改变了上面的运行行为0000-set-shared-libraries.patch 把配置目录从依赖$HOME的~/.nabto改为固定路径/etc/nabto宏定义由.nabto改为nabto、目录环境变量由读取HOME改为硬编码/etc。嵌入式系统没有标准的 home 目录这一改动保证了配置落盘位置的确定性0010-openipc-tuning.patch 针对 OpenIPC 的 RTSP 场景做了两处默认值调整应用显示名从Tcp Tunnel改为P2P CloudRTSP 交互式提示中的默认端口从8554改为554、默认 endpoint 从/video改为/stream0——这正是上面--demo-init示例中默认值与上游 SDK 不同的原因。5. 客户端侧构建edge_tunnel_client并远程取流相机端就绪后在任意一台能上网的 Linux 机器官方发布中另有 Windows 版本客户端上构建 Nabto 客户端edge_tunnel_client来自上游 nabto-client-edge-tunnel 项目的 release 产物随后完成配对与取流。5.1 两种配对模式Nabto 提供两种配对方式Local Open本地开放配对设备与客户端处于同一局域网时使用查找与绑定最简便Password Open密码开放配对设备在远端跨公网/NAT时的配对方式。readme 以远程设备这一通用场景为例采用Password Open。5.2 通过--pair-string完成首次配对配对凭证串可以直接从第 4 节相机端的输出中整体复制。执行$./edge_tunnel_client --pair-string ppr-ydk3xhyn,dde-orruyc4n,pwdX9NphkArpzLU,sct9jLgbUb4FWhe Connected to device ProductId: pr-ydk3xhyn DeviceId: de-orruyc4n Several pairing modes exists choose one of the following. [0]: Password Open [1]: Local Open Choose a pairing mode: 0 Open Password Pairing requires a username. The username is a name you choose for the new user, the username has to be unique among the registered users on the device. New Username: admin The device [0] pr-ydk3xhyn.de-orruyc4n has been set into the bookmarks as index 0要点选择0Password Open输入自定义用户名示例admin该用户名在设备已注册用户中必须唯一配对成功后设备以索引[0]存入客户端书签bookmarks后续命令用0引用该设备。5.3 查看相机提供的服务$ ./edge_tunnel_client --services Connected to the device [0] pr-ydk3xhyn.de-orruyc4n Available services ... Service: rtsp Type: rtsp Host: 127.0.0.1 Port: 554本例中相机只暴露了一个rtsp隧道服务。5.4 建立隧道并播放请求打开该服务对应的隧道./edge_tunnel_client --service rtsp Connected to the device [0] pr-ydk3xhyn.de-orruyc4n TCP Tunnel opened for the service rtsp listening on the local port 44391客户端在本机127.0.0.1:44391上开出一个监听端口任何发往该端口的数据都会被隧道送到相机内网的127.0.0.1:554。随后即可用 ffplay 播放务必指定 TCP 传输方式ffplay -rtsp_transport tcp rtsp://127.0.0.1:44391/stream0注意流路径要使用第 3 节配置时填写的 endpoint/stream0。至此一个相机在 NAT 内、客户端在全球任意网络的 RTSP 直连链路即告打通。6. 配套机制局域网内的 mDNS 服务广播为了让同一局域网中的客户端能更容易地找到设备对应Local Open配对模式OpenIPC 还为主包配套了 mDNS 广播描述文件 general/package/mdnsd-openipc/files/nabto.servicetype _nabto._udp port 5592 txt productiddevice txt deviceiddevice txt fnCloud服务类型为_nabto._udp端口5592——正好与第 4 节设备启动输出中的Local UDP Port: 5592一一对应说明本地发现与 Nabto 实际通信端口是同一端口txt productid/txt deviceid广播产品与设备标识客户端在局域网内可据此识别具体设备txt fnCloud是友好名称friendly name与补丁中把应用名改为P2P Cloud的意图一致。7. 小结与生产化提示阶段关键动作产物/凭证云端注册Nabto Cloud Console 创建产品与设备pr-xxxxxxxx、de-xxxxxxxx相机配置tcp_tunnel_device --demo-init录入 ID、添加 rtsp 服务fingerprint、配置目录/etc/nabto云端回填把 fingerprint 写入设备设置设备获准接入 Basestation相机运行tcp_tunnel_device输出Open Pairing String与端口 5592客户端配对edge_tunnel_client --pair-string ...设备进入书签索引 0客户端取流--services查看、--service rtsp建隧道本地端口如 44391 → 相机 127.0.0.1:554播放验证ffplay -rtsp_transport tcp ...远端 RTSP 画面需要特别提醒的两点--demo-init的 IAM 是演示配置默认让新配对用户获得Administrator角色生产环境务必按 Nabto 官方文档配置更严格的 IAM 规则与角色权限构建与运行范围以本仓库为准本包固定使用 SDK 5.13.0 版本、静态链接 OpenIPC 自维护的 libevent/mbedTLS并把配置目录固定在/etc/nabto这些行为由 nabto.mk 与两个补丁文件0000-set-shared-libraries.patch、0010-openipc-tuning.patch定义与上游 SDK 的默认行为并不完全一致排查问题时请以本仓库的实际输出为准。进一步了解 Nabto 平台的完整功能与配置项可参考官方开发者文档原 readme 末尾链接。本仓库内的 包说明 即本文核心操作的原始出处配置入口则在 Config.in菜单项BR2_PACKAGE_NABTO。赞分享嵌入式智能硬件物联网【免费下载链接】firmwareAlternative IP Camera firmware from an open community项目地址https://gitcode.com/gh_mirrors/fir/firmware点击查看免费下载相关推荐颠覆性P2P直连技术零成本穿透NAT实现主机互联颠覆性P2P直连技术零成本穿透NAT实现主机互联 在传统远程连接方案屡屡受挫的今天一种革命性的P2P直连技术正悄然改变着网络通信的格局。通过创新的NAT穿透网络通信【零成本直连革命】3分钟上手GoodLink让任意两台主机穿透NAT直连的开源神器【零成本直连革命】3分钟上手GoodLink让任意两台主机穿透NAT直连的开源神器 痛点直击你还在为这些问题抓狂吗 远程办公时Windows自带远程桌面网络通信tunnelto终极指南一键穿透内网实现全球访问tunnelto终极指南一键穿透内网实现全球访问 在现代开发工作流中将本地服务快速分享给远程团队成员或客户已成为刚需。tunnelto作为一款高性能的内网穿网络CLI后端上一篇解决Kitty终端字体大小渲染异常从配置到源码的全方位方案下一篇chezmoi 与 KeePassXC 集成指南使用 keepassxc 模板函数安全管理 dotfiles 中的密钥创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号