Locally, everything works fine on HTTP (http://192.168.1.222).

Externally, however, only PARTIALLY on HTTPS (https://mydomain:8344) through Caddy. I can connect to the site (first picture), but streams won’t start.

Any idea why this is the case? My theory is that the RTSP port (554) is for streaming and that when I go to the local address (that is on 80), the site ITSELF initiates a connection to port 554 in the background. However, this apparently does not happen when I connect remotely.

EDIT: In the same Caddyfile, I reverse proxy my Jellyfin server that only uses a single port, and that works fine. The Caddy server runs on my Ubuntu Server 23 on Raspberry pi 5.

  • @gaylord_fartmaster
    link
    4
    edit-2
    1 month ago

    My theory is that the RTSP port (554) is for streaming and that when I go to the local address (that is on 80), the site ITSELF initiates a connection to port 554 in the background. However, this apparently does not happen when I connect remotely.

    I think you’re on the right track here. The DVR is probably telling your browser to connect to http://192.168.1.222:554 for the stream, which on LAN is fine because you have a route to 192.168.1.222, but when connecting externally you won’t be able to get to 192.168.1.222.

    You can probably check the network connections in dev tools in the browser to confirm that.

    Edit: Editing this to also stress the importance of the advice given by @[email protected]. My home cameras are also only accessible from outside my network via wireguard.

    • @[email protected]OP
      link
      fedilink
      11 month ago

      You’re right. Now I just need to find a good and easy to set up FOSS vpn that runs on Arch and Ubuntu