【问题标题】:How do I change the IP address that Node-RED is hosted on?如何更改托管 Node-RED 的 IP 地址?
【发布时间】:2022-01-04 16:43:48
【问题描述】:

我一直在尝试配置在 http://localhost:1880 本地运行的 Node-RED 以在我将通过路由器的“DHCP 静态 IP 配置”配置的静态 IP 地址上运行,以便 Node-RED 可以可在整个局域网内访问。

我将如何更改托管 Node-RED 的 IP 地址,因为我似乎没有找到任何资源。

很想知道通过路由器在 LAN 上运行 Node-RED 的确切方法;比如静态 IP 地址应该分配给具有特定 MAC 地址的特定设备,还是 Node-RED 可以驻留在路由器本身上。

【问题讨论】:

    标签: iot router node-red dhcp static-ip-address


    【解决方案1】:

    默认情况下,Node-RED 绑定到0.0.0.0,这是绑定到所有可用接口的快捷方式(日志说通过http://localhost:1880 访问,因为这将始终可用)。您应该会发现,如果您知道运行 Node-RED 的机器的 IP 地址并从 LAN 上的另一台机器输入 http://ip-address:1880,它应该会连接到 Node-RED 编辑器。

    您可以在 settings.js 文件中更改此绑定地址(在 node-RED 启动时早期登录的 userDir 中找到,在 Linux/Unix 机器上默认位于 ~/.node-red 中)。您可以取消注释 uiHost 行并将 IP 地址更改为主机的静态 IP 地址。在 99.9% 的情况下,您不应该这样做,只需将其保留为默认值0.0.0.0

    至于如何将托管 Node-RED 的设备设置为具有固定 IP 地址,这将完全取决于您拥有的路由器类型,但通常的方法是将内置 DHCP 服务器的路由器设置为只需为该设备分配一个由其 MAC 地址标识的静态 IP 地址。这意味着您无需更改设备上的任何内容。

    您不太可能(或想要)实际在路由器上运行 Node-RED,大多数家庭(或企业)路由器都是专业设备,在它们上运行像 Node-RED 这样的编程环境真的不是从安全的角度来看是个好主意,除非你 110% 知道自己在做什么。

    谈到安全性,请确保在您的settings.js 中启用adminAuth,然后再在路由器上设置任何端口转发以将Node-RED 暴露给外界。一个不安全的 Node-RED 编辑器很可能会被 Shodan 之类的东西快速扫描并立即使用 https://nodered.org/docs/user-guide/runtime/securing-node-reded 来托管 Crypto 挖掘或更糟。仔细阅读以下内容https://nodered.org/docs/user-guide/runtime/securing-node-red

    【讨论】:

    • 嘿,非常感谢!我确实设法通过 LAN 上的不同设备通过ip-address:1880 访问编辑器!想知道这是否是一种好方法,例如让 Raspberry Pi 在本地运行 Node-RED,以便可以通过网络访问它,或者是否有任何替代方法;非常适合生产。
    • 另外,我还希望我构建的 Node-RED 仪表板可以通过 Internet 访问。 IBM Cloudinary、DigitalOcean 和大多数其他平台要求您输入信用卡来注册或创建 Node-Red 实例。而且由于它是为了工作,我无法添加我的,经理们似乎对很快获得一张工作信用卡持怀疑态度。对免费替代品有什么建议吗?可能是托管服务或替代方法。是否可以像 Raspberry Pi 一样在本地运行 Node-RED,并通过静态 IP 地址通过 Internet 访问它。
    • 这些问题都不适合 Stack Overflow
    猜你喜欢
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 2017-04-02
    • 2020-06-12
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    相关资源
    最近更新 更多