Best approach to video stream

Hello! I’m trying to achieve a setup that will allow a camera to stream from a remote location to my location using a Black Magic Design Studio camera and a Black Magic Design Streaming Bridge. Basically the camera is at location A and the stream bridge at location B, but I have no control over the network I’m plugging into. I can’t access the router/modem/switches at these locations. What I do have is a pair of Protectli routers with OPNSense as an OS and ZeroTier installed. I’ve been able to ping the routers as well as the camera and stream bridge with their respective ZeroTier IPs using a desktop. All seems good there. The trouble I run into is the video stream from the camera isn’t relayed to the streaming bridge. The camera compresses the video and sends it uses RTMP to send it to the bridge, where it’s then output via hdmi. With the camera and stream bridge connected to a local switch, everything works great, so I don’t believe it to be a hardware issue of any sort.

I’ve set static IPs in ZeroTier and entered those into the respective devices, but it seems I’m missing something in the setup that’s critical.

In ZeroTier 10.147.19.11 is the camera and 10.147.19.9 is the associated router.
10.147.19.12 is the stream bridge and 10.147.19.97 is the associated router

Any thoughts on what might get these two talking?

Here’s a shot of the ZT setup.

Do you have anything in your managed routes? You’ll really only need to add a couple routes in there. Maybe allow stuff through OPNSense depending on how you have that setup.

Hey, l0crian. I don’t have anything in there currently. This is all VERY new to me - didn’t know difference between WAN and LAN 4 days ago. I’ll scope out some references on the matter and see if that get’s us a good connections.

Re: OPNSense - I’ve gone the nuclear route and setup a floating rule to all interfaces that lets everything go everywhere on ipv4 - all ports open, nothing blocked, etc. This was an attempt to isolate errors and can appreciate the lack of security, but not overly concerned about someone creeping in on the video at this point. I’m guessing that’s what you’re referencing with ‘allow stuff through’ or have I misunderstood?

Thanks!

Gotcha, that’s not a problem. What’s the LAN subnet’s at Waco and Austin?

You can basically just create a site-to-site VPN setup here. You wouldn’t even need to have your camera stuff talk on ZeroTier IPs.

Well I’m intrigued by that as it sounds like a slightly simpler approach!

Regarding the subnets - you’ll have to forgive me here…I’m not sure how to check! I assume the inquiry is into the OPNSense subnet for each? Or would they be a function of ZT?

Correct, the subnets you configured for LAN on each of your OPNsense boxes.

NOTE: You’ll want to make sure they’re not the same subnet. For instance, you could have:

  • Waco - 192.168.1.0/24
  • Austin - 192.168.2.0/24

First - thank you for the help! I’m indebted at least a couple of drinks already.

I didn’t really do any setup at all - boxes comes with OPNSense installed and I pretty much hooked them up and ran with it. Currently both boxes are the same - 192.168.1.1.

I’ll go on and change them up so that Austin is .1 and Waco is .2.

Thanks again! Looking forward to getting this worked out

Roger that! Once you do that, and your streaming bridge and camera get an IP in those ranges, you can add a few managed routes within ZeroTier Central:

  • 192.168.2.0/24 via 10.147.19.9
  • 192.168.1.0/24 via 10.147.19.12

That’ll tell each OPNsense box how to get between those 2 subnets, allowing the 2 devices to talk.

I may have errored - I went into OPNSense>Interface>LAN and changed the 192.168.1.1 to 192.168.2.1

It appears that now I can’t connect to the OPNSense browser GUI. Neither 192.168.1.1 nor 192.168.2.1 are responsive. Should I have made other changes as well before applying that subnet change?

Your IP on the box you’re using to access them likely still has the old subnet’s IP. You’ll need to pull a new IP. The easiest way to do that is to unplug the cable for a couple seconds and then plug it back in.

You can try accessing the OPNsense GUI from your ZeroTier IPs as well since you didn’t change the WAN interface.

Tried doing an unplug/replug with no luck. I am able to still ping the ZT IP for the router though. How would I go about pulling up the GUI from the ZT IP?

Edit - Disregard. That was easy - just put the ZT IP into the browser and it pulled right up.

Ok, got the routing in there, but not quite working yet.

Here’s the current setup:
Austin Router
OPNSense LAN-192.168.1.1
ZT Router IP (static)-10.147.19.97
ZT Stream Bridge IP (static)-10.147.19.19

Waco Router
OPNSense LAN-192.168.10.1
ZT Router IP (static)-10.147.19.9
ZT Camera IP (static)-10.147.19.3

The camera and bridge have been set to static IP and their respective IPs input, with a gateway being the router IP. I can ping all the ZT IPs without issue, but no luck on getting the video stream going.

There are two lights on both the camera and the stream bridge, one yellow and one green. I believe the yellow is for network connection and green is for tx/rx. Both devices show steady yellow, but the stream bridge has a slow/intermittent green where as the camera green is fairly rapid. Probably not the most technical approach to troubleshooting, but perhaps worth noting.

Any thoughts as to what else may be causing issues?

I did see where ZT mentioned the use of bridging for this type of ordeal, but also seemed many people found success in routing.

Did you add the routes in managed routes within Zerotier central?

Ahh, yes. Forgot to include that screenshot

Edit- just realized I may have mis-entered some of these; double checking them now.

What are the non-Zerotier IPs on the camera and streaming bridge?

They don’t have one. I input IPs to ZT and then typed them into camera and stream bridge.

You may have this misconfigured at the moment unless you’re doing bridging down to those devices.

In an earlier picture, it looked like you had multiple IPs on what you called Waco and Austin. That just puts multiple IPs on those devices, and won’t push them further into your network.

I recommend getting the Black Magic devices on your LAN segment at each site. You’ll use OPNsense to access those devices from both Zerotier and the local LAN.

I’ve been released from message purgatory.

After spending more time looking and reading things my understanding has continued to grow.

I’ve set the camera and stream bridge to get an IP from the router (protectli) and they do so just fine. With having zero tier up and running - can ping the routers from other devices no problem - and the camera/stream bridge a LAN IP at each router, I need to route the device LAN IP to a ZT IP…right? Other option that I think I understand would be to bridge the port with the camera on it to the WAN port on the hardware, but that route seems more complex. Thoughts?

You can do LAN IP to LAN IP now. The camera can talk with its IP, directly to the Streaming Bridge’s IP.