Question Can't stream to RTMP server through NordVPN meshnet using phone data and GoPro ?

bld939

Honorable
Dec 16, 2017
18
0
10,510
I set up an RTMP server on my home computer and successfully tested it by streaming to it from another computer on the same home network.
Now, I'm using NordVPN, which allows me to connect to my home computer, creating a virtual network, but my phone and laptop are actually on 4G data.

The streaming works fine from both the laptop and phone when connected to the virtual network.
I've also tested and confirmed that the GoPro is able to connect and stream when on home network.
However, when I connect a GoPro to the phone hotspot, it can't seem to connect to the home RTMP server through the virtual network [the laptop did succeed], I've tried many different addresses combinations until i gave up.
Atlast, I've tried to see if the GoPro can stream to other platforms on the internet like Twitch, Kick and VPS servers, worked without any issues.

It seems like the GoPro won't transmit through NordVPN meshnet network
[also, I've disabled Firewalls, addes rules, I've noticed my router is inside CGNAT/double NAT pool so I couldn't test forwarding ports]
Does anyone have an idea why it's not working ?
 
I have not looked at nordvpn for a while. Most times you connect from your house to the nordvpn site to use it to anonymously surf the internet. Does it offer some other server. Did you for example buy a fixed IP address from them. I have never done it but in theory you should be able to get incoming session using that function.

The problem with RTMP the device will connect just fine to each in the very begining of the communication but the protocol then negotiates a second port to carry the audio and video data over. This can be any ports and they are sent back and forth inside the the RTMP messages.

In general this is busted by any kind of NAT in the path. Many routers have a ability that is not always documented that will detect RTMP traffic and inpect the setup messages. It will intercept the port number needed and dynamically allow the traffic to pass the nat and firewalls. This varies a lot. With CGNAT it is not likely to have this feature. Not sure how it would work using nordvpn in the path.

Nobody in general run RTMP over the internet directly anymore. Just like your router can spy on the packets anyone else in the path could also. Modern RTMP session are encrypted which make it almost impossible to pass nat of firewalls.

Although even more complex you might use 2 vpn tunnels.

You would form the first between your main router and the nordvpn service that gives you fixed IP. You would then form a second vpn tunnel between the end device and a second router behind your main router. This is kinda like the tunnel someone who had a normal home router would setup except you have the added complexity of using the nordvpn to get a public IP.

This is going to be very messy no matter how attempt it. You could look into one of the vpn server function that is designed to allow small companies to have remote access for their employees. In these all your end device and your house open a single vpn tunnel to the server and the server make everything appear as it was on the lan. I don't know if nordvpn offers this service if that is what you were talking about.

Actual RTMP is hard to get to work over the internet so most video/audio transmission things use some other kind of protocol to hide this issue. Stuff like twitch for example uses their own proprietary method.