Troubleshooting: Away from Home access issues

Overview

To access your DVR channels and recordings while you're away from home, your router must be set up with port forwarding rules, to be able to relay traffic from the internet to your DVR server.

  • The DVR will attempt to configure your router automatically, using uPnP or NAT-PMP
  • You may need to login to your Router's configuration page and adjust settings manually
  • Your router needs to know that incoming traffic over TCP on port 8089 has to be forwarded to your DVR server's private IP address

flowchart LR subgraph remote [Away From Home] phone(Phone) --> lte(LTE) tablet(Tablet) --> hotel(Hotel WiFi) tv(TV) --> vacation(Vacation Home\nISP) end subgraph home [Home] lte --> internet hotel --> internet vacation --> internet internet((Internet)) internet -- public\nIP address --> router router(Home\nRouter) dvr(DVR Server\non port 8089) router -- private\nIP address --> dvr end

Port Forwarding Basics

Your home router is the gateway between the public internet and your private home network.

To troubleshoot issues, gather the following information:

  • your public internet IP
  • the private network IP assigned to your DVR server
  • your custom channelsdvr.net domain name

Public IP

Your ISP assigns your house a public IP address which is accessible from the internet.

Find your public IP by visiting a website like ipchicken.com or whatismyipaddress.com

Private IP

Your router assigns private IPs to all your home devices, using something called DHCP.

Find your DVR server's IP by looking under Remote DVR > Port Forwarding > Manual.

Custom channelsdvr.net domain name

Each DVR subscriber is assigned a custom domain name which points to their public IP address.

Visit my.channelsdvr.net in a browser and the URL in the browser bar will change to your custom domain name.

Troubleshooting

Is access working from a web browser over LTE?

  • Disable WiFi on your phone, to force connections over LTE
  • Visit my.channelsdvr.net in mobile Safari or Chrome

If the DVR web UI loads, your router is configured correctly!

Is the DVR troubleshooting page flagging any issues?

Check the DVR web UI under Settings > Support > Troubleshooting to see if any errors are reported/

Is your router forwarding traffic to your DVR?

Use portchecker.co to make sure port 8089 is open

  • your public IP should be prefilled under "Your IP Address"
  • change "Port Number" to 8089
  • click "Check"

If the port is listed as open, then your router is correctly sending the traffic from the internet to your DVR server.

If the port shows as closed, revisit your router settings.

Is your custom domain pointing to the correct public IP?

Your DVR server pings community.getchannels.com every 3-4 hours, which lets our servers see your public IP and ensure your custom domain is set to match.

Verify that the DNS response for your custom domain matches your public IP, using dnschecker.org, or a command-line utility like host, nslookup, dig or ping.

$ nslookup 5812adc9e7b2.u.channelsdvr.net
Address: 78.90.12.34

If the wrong IP is shown, verify you don't have any VPNs interfering and force a refresh by visiting http://<private-ip>:8089/auth/refresh

Is the correct SSL certificate being used for your custom domain?

We use Let's Encrypt to setup a secure HTTPS connection to your DVR while you're away from home, by installing a private SSL certificate that is specific to your DVR and custom domain.

Use the openssl command line utility to verify a valid certificate that matches your custom domain is being used:

$ openssl s_client -connect <public-ip>:8089 -servername <customdomain>.u.channelsdvr.net -showcerts >/dev/null
depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = R3
verify return:1
depth=0 CN = <customdomain>.u.channelsdvr.net
verify return:1
^C

Is your ISP blocking port 8089 for some reason?

Try connecting to your public IP on port 8089 directly, over LTE or from a remote location. Use http://<public-ip>:8089 (not https) to avoid SSL and test the underlying TCP connection. You should see a white page asking for an authentication code.

If it fails to load, this usually means either:

  • your router is not port-forwarding correctly
  • your ISP is using CGNAT

If you're confident neither of the above is true, then it is possible that your ISP has blocked 8089 for some reason. To verify:

  • add a second port-forwarding rule, setting external port to 58089 and leaving internal port as 8089
  • open http://<public-ip>:58089 to see if the connection succeeds

Is there a double-NAT because of multiple routers?

If you have more than one router, your DVR may be behind what's known as a double NAT. In this case, you will need to login to each router and setup a port forwarding rule that goes to the next device in the chain.

flowchart LR internet((Internet)) --> r1pub -.-> r1priv --> r2pub -.-> r2priv --> dvr subgraph router1 [ISP Router] r1pub(Public IP\n78.90.12.34) r1priv(Private IP\n192.168.1.1) end subgraph router2 [WiFi Router] r2pub(Public IP\n192.168.1.21) r2priv(Private IP\n10.0.1.1) end dvr(DVR Server\n10.0.1.21)

Use the following settings on each router:

  • ISP Router
    • Port forward TCP 8089 to 192.168.1.21 (send traffic to WiFi Router)
  • WiFi Router
    • Port forward TCP 8089 to 10.0.1.21 (send traffic to DVR)