Force DVR to advertise a specific IP address on Bonjour/mDNS

Just installed Channels DVR and loving it so far!

I’m currently trying to get remote access working over a VPN to a remote iOS device.
However, my VPN and internal networks are on separate subnets, with a very restrictive firewall in between and no direct IP routing from the VPN side. I’ve forwarded the port required on the VPN server to Channels on the internal network, but the Bonjour packets are advertising the internal IP address, which fails.

If I can get Channels to advertise a specific IP address (the VPN server), it will work on both networks. Is there a way to do this?

mDNS packets generally don’t work over VPN. What kind of VPN are you using?

If I understand correctly, an app like Bonjour Browser on your iOS device shows Channels DVR, but using the IP in the other subnet?

The DVR engine looks at the local network interfaces to decide what IP to advertise, and supports multiple network interfaces with different IPs. There’s not really any way to provide a fake IP or change what’s being advertised. Your could disable the DVR’s bonjour and setup your own mdns repeater that pushes the correct IP over the VPN.

Another solution is to use the built-in remote access feature of the DVR. The advantage there is the app will know that its connected remotely and you can change the streaming quality/bitrate from the app. If you really want to connect over your VPN and you control the VPN dns server, you could also override the custom dns for your subdomain (xxx.channelsdvr.net) to point to the VPN IP.

It’s an OpenVPN server. I do control the VPN dns server and that sounds like a much better way to go, especially as it obeys remote quality settings. Thanks :smile:

1 Like