For the complete documentation index, see llms.txt. This page is also available as Markdown.

Local Streaming on Verkada Cameras

Learn what local streaming is and how it works

Local streaming is when the feed from a Verkada camera is forwarded directly to the accessing device, rather than accessed from the cloud.

This feature reduces the amount of traffic sent and received from the internet. When viewing a camera’s stream, the camera automatically attempts to transition to local stream mode.


Requirements for local streaming

  • The accessing device must be able to reach the camera’s private IP.

  • Port 4100 TCP/UDP must be open bidirectionally between the client and the camera.

  • No proxies can be present between the client and the camera.

  • See Required Network Settings for Cameras for allowlisted domains.


Identify if your device is local streaming

View

Example

Local stream on a web or mobile browser

Local stream on Command mobile app

Remote stream on Command mobile app

How local streaming works

1

The camera’s Domain Name System (DNS) record needs to be registered.

2

Verkada Command instructs the streaming device to attempt to establish a local stream with the camera.

3

The streaming device requests the camera’s DNS record.

5

The camera’s feed is sent directly to the streaming device.

Step 1: Camera’s DNS record is registered

When the camera connects to Command, it shares its metadata, including its private IPv4 address. Verkada uses this data to provision a public type A DNS record for the camera's private IP address. Local DNS servers can now resolve requests for the Fully Qualified Domain Name (FQDN) of the camera. This DNS record is utilized for local streaming.

Get a camera’s FQDN

1

In Verkada Command, go to All Products > Cameras > camera’s live stream.

2

Right-click anywhere, click Inspect, and locate the Network tab.

3

Filter results ping and refresh the page.

The ping traffic contains the FQDN of the camera you are viewing.

Get a camera’s FQDN

Step 2: Transition to local streaming

When the camera’s live stream is accessed, the streaming device tries to change to local streaming. If the camera's private IP address is reachable from the device and the required domains are allowed on the network, the streaming device establishes an HTTPS connection with the camera to directly receive the live feed.

Step 3: Streaming device requests the camera’s DNS record

1

When a camera feed is accessed, Command directs the streaming device to establish a connection to the camera's FQDN.

2

The accessing device sends out a standard DNS request (UDP port 53) for the FQDN of the camera.

3

DNS resolves the FQDN to provide the camera's private IP address to the accessing device.

4

The device attempts to establish an HTTPS session over port 4100. If the device cannot reach the camera's private IP address, the process terminates here, and the stream does not transition to local.

You can find the camera's IP address on the camera's settings page.

Step 4: Streaming device establishes a secure connection with the camera

If the camera's private IP address is reachable, the TCP session is initiated. The SSL handshake occurs (TLS 1.2), and the HTTPS session is established. This ensures traffic is encrypted and secure. Through this connection, the camera's SQ live feed is accessed. ​​ Packet Capture showing TCP handshake for the camera’s private IP on port 4100:

TLS Key Exchange showing the publicly-signed certificate presented by the camera:

Step 5: Camera’s feed is sent directly to the streaming device

Once the secure connection is established, the camera sends the video to the client:


Historical playback

When viewing historical footage over a local stream, multi-camera playback speed limits apply the same way they do over cloud streaming. See View Historical Footage for speed limits by camera count.


Troubleshooting

If you are experiencing issues with local streaming, try the following:

  • Verify the cameras are online and streaming as expected.

  • Verify the network configuration:

    • Your streaming device is on the same local network or can route to the camera’s network.

    • Port 4100 TCP/UDP is open bidirectionally between the streaming device and the camera.

    • No proxies are present on the network.

  • Verify the streaming device:

    • Is updated with the latest firmware or software updates.

    • Clear your browser’s cache and cookies, or try using an incognito/private browsing mode.

    • Test local streaming on a different device to determine if the issue is device-specific.

  • Check your browser’s settings to verify your browser allows “Local Network Access.” Browsers may block local network access by default, which can prevent local streaming.

Last updated

Was this helpful?