Recurring "Unknown system error 24" crashing NR

Hi all!

I tried searching for my recurring issue, but couldn't find relatable threads, so forgive me if this has been address elsewhere.

I am running Node-RED on my NanoPi-R4S router (running FriendlyWRT, a branch of the OpenWRT world). It's running off of an SD card, which I've considered as a possible issue point, but everything else is running fine.

For context of use, the NanoPi is acting as a secondary router and server for a fun/complex homebrew setup, where it interacts with a data exchange server hosted by Brucontrol on my PC, manages all my external data updates on the Brewfather webapp, and handles my keg scales UDP messages that I use to track remaining volumes (with live websocket updates on a homepage I built).

About every 2 days (sometimes less), Node-RED stops working (web page won't load, my PC's NR instance shows connection issues with the router NR end point, the NR admin page won't load, etc.). The router is all fine otherwise; only Node-RED crashes.

I set it up to start logging in a .txt file upon boot, and I've captured this recurring error message in it:

31 Jan 20:50:51 - [error] SystemError [ERR_SYSTEM_ERROR]: A system error occurred: uv_interface_addresses returned Unknown system error 24 (Unknown system error 24)
    at Object.networkInterfaces (node:os:267:16)
    at allInterfaces (/.node-red/node_modules/bonjour/node_modules/multicast-dns/index.js:163:21)
    at Timeout.that.update [as _onTimeout] (/.node-red/node_modules/bonjour/node_modules/multicast-dns/index.js:123:63)
    at listOnTimeout (node:internal/timers:559:17)
    at processTimers (node:internal/timers:502:7)

I can reboot my NanoPi so my NR instance reloads and all is right, but it will again crash around two days later. The error message is consistent in the logs. This is a very recent issue (started last month); this installation of NR has been going strong for months.

I am currently working on a bandaid option to reboot the router every evening at 2 am, but any help sorting this issue would be greatly appreciated.


I think you need to track down what uses that.

cd ~/.node-red
npm ls bonjour

Boom, super helpful. It's my Google cast nodes:

root@FriendlyWrt:/.node-red# npm ls bonjour
node-red-project@0.0.1 /.node-red
+-- node-red-contrib-cast@0.2.17
| `-- bonjour@3.5.0
+-- node-red-contrib-google-home-notify-volume-adjustable@0.0.11
| `-- bonjour@3.5.0 deduped
`-- node-red-google-notify@1.4.8
  `-- bonjour@3.5.0 deduped

I use those to alert me if one of my ESP32 controllers aren't transmitting data. I planned to get rid of them once I knew my flow to reset my Tasmota power controllers worked properly, which it seems to. So I guess I can take these out and see what happens.

Thanks, @TotallyInformation!

1 Like

So I've removed these three modules, but I still get the error. The npm ls bonjour shows no other modules associated with bonjour, so it seems it's NR using the bonjour module itself.

Interestingly, when I try to find the /.node-red/node_modules/bonjour/node_modules/multicast-dns/index.js file to look into the process, I find that there is no /bonjour folder. Only /bonjour-services, which doesn't have its own node-modules. On PuTTY, I ran find . -name "*bonjo*" from my highest path level to see if I had some errantly placed/linked file, but only that /bonjour-services folder appeared in my NR folder.

I ran npm install bonjour in the .\node-red\node_modules folder, and it now has the directory structure as the error message. I'll see if installing that package helps.

How did you remove them?

Nothing is using bonjour, or npm ls would have found it. Did you try
npm ls bonjour-services
to find what is using that? You probably need to remove it also.

That is probably an ok way of installing, but better to do it from the .node-red folder.

You might want to shut down node-red and also then delete the package-lock.json just to be certain. Also check your global installs with npm -g ls bonjour.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.