Apps won't connect locally, LAN uses a non-RFC1918 subnet (137.1.1.x)

I set up Channels DVR Server tonight on a Windows 10 VM at 137.1.1.23. The web admin works fine from my workstation by IP and DNS name, and I can schedule and record. But the Fire Stick and phone apps find the server, then fail with "Your DVR is not quite set up yet."

My home LAN has used 137.1.1.x for about 25 years, since back when nobody cared, so it's a public range and not 10.x or 192.168.x. With 8089 forwarded, the phone connects fine over cellular but fails again on home Wi-Fi.

Is there any way to tell the server to treat 137.1.1.0/24 as local, through a setting, a config file or an environment variable, without renumbering the whole LAN? Thanks!

You probably need to set them up as if you were connecting remotely to them and configure your DNS server to give CDVR IP in response to the unique name used to connect remotely. You can close the firewall after that.

Possibly it's mDNS that's not working properly on your LAN. Another possibility is it's a directed broadcast issue. If those things don't take you in the correct direction, renumber you LAN. I know renumbering can be an adventure.

Thanks @hal9000, got it working.

My LAN uses a non-private IP range, so the apps wouldn't take the server's local address. pfSense also sits behind my ISP router (double NAT).

  1. I set Remote Streaming to Manual and port forwarded 8089 on the pfSense WAN to the DVR. Remote access worked after that.
  2. At home it still timed out, because the ISP router won't loop traffic back in. To fix that, I added a pfSense LAN port forward: TCP, destination <public IP>, port 8089, redirected to <DVR IP>:8089, with NAT reflection disabled. I also turned on "Enable automatic outbound NAT for Reflection."

Now everything connects at home and away. If your public IP changes, you have to update the LAN rule.

Just put a record for the DVR in your DNS. No firewall rules needed.