Howdy!
This isn't so much a query as it is an 'FYI' for anyone in a specific ISP situation as myself. Hopefully it will help someone:
I am on a cellular ISP behind CGNAT so in order to make Remote DVR functionality work, I have to route all Remote DVR traffic through a VPN in order to get a public IP where port 8089 can be forwarded. This wasn't too complex to get working but I did have to force the gateway for the local LAN IP of the Channels DVR server to use the VPN public IP and not my CGNAT'ed cellular public IP. The only trouble with this is that for low latency access I have rolled my own OpenVPN server using a local VPS provider which has transfer bandwidth caps. When selecting my VPN gateway for Channels DVR to use when updating it's Remote DVR IP (essentially a DDNS service run via the FancyBits 'my.channelsdvr.net' subdomain) it also had the undesirable side effect of making it use the VPN connection for initiating TV Everywhere (TVE) stream downloads when serving my local LAN FireSticks or for re-upload when transcoding to remote, mobile devices. This heavily cut into the VPS transfer caps which was undesirable.
In order to remedy this I setup some packet captures and found out that the Remote DVR DDNS IP update function essentially talks to one of two CloudFlare IPs used by FancyBits, presently 104.24.112.77 and 104.24.113.77. With this information I was able to create an alias for those IPs and a policy based route on my router's firewall (I use PFSense) which forces any IP updates from the Remote DVR out of the VPN while letting all other TVE stream targets download using my local cellular gateway (and thus not eating into my VPS transfer limits). The rule looks like this for anyone who cares:
Rule Action: Pass/Allow
Source Protocol: IPv4
Source Network: LAN
Source Host: [Channels DVR IP]
Destination: [104.24.11x.77 IPs Alias]
Gateway: [VPN Interface GW]
Obviously if you use IPv6 in your setup you would need to add aliases/rules for those addresses too but I only use IPv4 on my LAN at the moment so I didn't mess with that.
This is probably useless info to most but I figured it might help someone out
As an aside, it might be nice to have an 'Advanced' feature to the Remote DVR setting so that when 'Manual' port forward option is selected, it allows for a manual IP address entry too. This would remove the need for any DDNS and policy based routing hacks when using this kind of setup. But I realize this is an edge case so I understand why the developers would not want to add this feature and risk confusing most folks who play with the Remote DVR setup options.