Node Red not being able to open HTTP

HI Guys,

I have an EPIC controller and i am using NodeRed to captire some information from the internet. I am using the HTTP return. It had been working fine for 2 years, but some time ago it started lagging or even wasnt available to open the page.

I also send text messages from Node Red, using the email node, and i am having the same problem of completing the “sent” process.

Screenshot 2024-07-29 at 10.31.46 AM

Sounds more like a networking issue more so than a Node-RED issue at this point… So, start with the groov Manage network tools.
Be sure and use the tools on the same EPIC that the Node-RED flow is running on.
Try a ping of the same hostname or IP that the HTTP request node is using.
Then try the ‘Test TPC port’ function.

The results of those two should start to guide your next steps.

HI Beno,

I verified all the network settings and non have changed since the system has been online. Access to web pages are available within the network. Even copying the link from the node to chrome works fine. Node Red isn’t able to access the network consistently, occasionally it does turn out to work.

Other than the Ping Option, have you seen anything like this?

regards

Keep in mind that Chrome is not on the EPIC, so that test is not really of any value other than saying the gateway and network at the time of the test to the PC is fine.

This is why it needs to be tested from the EPIC and the groov Manage tools are a quick sanity check.
Since you are saying that sometimes it works, the next thing I would be quickly setting up is a Node-RED to groov View ping check running 24*7.

Install the node-red-contrib-advanced-ping in the pallete.
It outputs a millisecond ping time vs the regular ping node that just outputs true/false.

Take the output and put it into a groov View data store on the EPIC (so it is all on localhost - this is important!!).
Then trend it.
Here is what it should look like:

Of course, you will only have one trend line.
Ping the exact server of the URL you are trying to hit. (The server, not the URL).
I’d make a few tends of different lengths like I did in that post.
15 minute, and 1 week at the very least.

Now you have a long running trend from the EPIC and will be able to see when its up and when its down.
There is clearly something going on with the network connectivity from the EPIC to the server that is hard to spot / troubleshoot.

Thanks Beno,

Tried to download the node and it didnt work. Also Tried downloading one randomly, it didnt download.

I did a google.com ping within the Epic and it connected.

Might it be that Node Red needs an update?

Ah–hah!
What did the Node-RED error log say?
I bet it was something about not reaching the NPM repo?

There is clearly something about that network drop the EPIC is on if that is the case.

But, to answer your question, what firmware version is the EPIC running?

I got no errors from NodeRed, simply it stopped with “download” icon and return to its previous state. No Errors at all.

I attached the current version of the EPIC

Not sure where you are seeing the ‘download’ button.
When installing a node from the pallete, there is an ‘install’ button.

You will need to click the ‘view log’ button, it is arrowed, the text changes when you install the node.

HI Beno,

Sorry, meant update or install options. Its not completing the step, i think its becuase its not being able to access the server.

Duplicate the groov Manage tab and leave the Node-RED editor open in one and then navigate to the groov Manage log and then select the button for the Node-RED log.
Leave that tab open.
Then go back to the Node-RED editor tab and click on the three burger menu top right, select manage pallete and then click the install tab and then type in Ping and then click on install on the advanced-ping one.
Then go back to the groov Manage tab with the Node-RED log and it will update with the error / progress.
Then either screenshot or copy paste the error here.

But yeah, I think that there is an issue with the network drop that the EPIC is on.

It tried to install it, but then stopped and there is no record of why.

Sorry, updating, it did give an error. Please review.

Thanks!
Progress.

Just as I guessed a few posts back, its failing to install because it cant reach the npmjs registry server.
ie, that EPIC really does have some network issues that your PC (running Chrome) does not.

Back to groov Manage network tools.
Try and ping registry.npmjs.org

This still is the issue we are trying to track down.
It worked fine for 2 years, now it only works sometimes.
The idea of the Ping node was to see when it worked and when it failed and try and help you narrow down whats changed.

Right now, its failed pretty hard.
So we need to start with Ping and try and find why that EPIC cant get out to the Internet.
Its either gateway or DNS (name server).

The groov Manage network ping will test both.
The EPIC networking will need to look up the host name of registry.npmjs.org and covert it into an IP (that’s the DNS) and then it will need a gateway to reach that IP on the Internet.

…or corporate proxy / MITM which his corporate PC would be a slave to (corporate CA), but the EPIC would be outside corporate IT control so it fails when connecting to sites with TLS. May need to talk to the company IT folks and see what they say.

1 Like

Hi Beno,

Attached is the ping test to the server through the EPIC. The epic had no problem to send and reach the server.

Ok, good progress.
We can see that the EPIC was able to convert the server hostname into an IP address and could get out onto the internet and ping it.

Try and install the ping node into the pallete now.
If it fails, then you are going to reach out to your IT guys, but if it works, then it sort of confirms that there is an intermittent issue with the network to the EPIC, but lets see if we can get that advanced ping node installed first.

I would do a quick test with an HTTP get node to check what happens when you try to retrieve a website using https. See if you get a certificate error.

Use this flow:

https://cookbook.nodered.org/http/simple-get-request

That’s a really good idea @philip.

Looking more closely at what might be going on, I see that @hcopsc1 is running 3.4 firmware. I know a lot of certs got updated in 3.6, so I think the websites they are hitting are requiring that new cert. Ping will work, of course, but an HTTPS connection will have issues.

Possibly. The root cert for registry.npmjs.org is fairly old though - from 2016. I am suspecting a corporate proxy is running a man-in-the-middle “attack” - common in a lot of orgs these days. If that is the case then the corporate CA cert will need installed on the EPIC or a rule setup by IT to bypass the proxy and they shouldn’t use the company PC for anything personal.

Screenshot 2024-08-21 at 1.02.39 PM

This is the response from the node.

In terms of the network, i am using a Tmobile Mobile Modem. I have certains restriction within the network that i built for security, but have been the same ones since day one.

I verified another system that is working fine with the same setup, and this is the version fo the PLC.

I think it might be the firmware version causing the problem. Cause i see no other thing than that.