Okay. I guess I wasn't clear on my setup.
I am currently using a Raspberry Pi as my Open VPN server. The Raspberry Pi listens to any incoming requests from VPN clients from "the internet" and then establishes a connection to my home network. The VPN server (raspberry pi) will then assign my client (let's say my work computer) an IP address. At that point, I can now access ALL the devices on my home network from my work office computer, as if I'm at home. So I can now remotely access the NVR, each individual camera, ping my TVs, etc. So the NVR is not really sending traffic out to the internet, it's sending it over local IP to the Raspberry Pi (VPN server), which is then encrypting the data and tunneling it over to me through the internet to my work computer.
Let's say my NVR lives on my local network at 192.168.10.50. I can then set up a rule in my router to block 192.168.10.50 from ever reaching outside to the internet and thus the NVR won't be able to fetch firmware update, fetch the NTP clock server, etc. However, the NVR can still send traffic to the Raspberry Pi device, which say, lives at 192.168.10.20 because it is on LAN and there is no restrictions by the router. So I can still get a Live feed from all cameras so long as I'm connected to the LAN whether physically or with the assistance of VPN.
Of course, I guess the challenge is how to tunnel push notifications through the VPN server (Raspberry PI) out into Dahua's servers?
Does this make sense?
I know you guys said cameras don't access the internet ever, but that's not exactly true though right? If you use
DDNS service provider or Sync with NTP server, all that requires talking "through" to the internet. Not to mention whatever backdoor "phone home" firmware code the camera could have.