Glossary · Connection

Local Discovery Server

A Local Discovery Server is a small OPC UA server that runs on a host, listens on port 4840 and keeps a register of the OPC UA servers on that machine. Servers announce themselves with RegisterServer; clients call FindServers to enumerate them, and FindServersOnNetwork to reach the mDNS-advertised servers on the local network.

What it actually holds

The LDS holds ApplicationDescriptions - ApplicationUri, ProductUri, application type, and the discovery URLs each server advertised. It does not proxy sessions, hold data or know anything about address spaces. A client uses it to turn a host name into a list of candidate servers, then talks to those servers directly. It advertises the Local Discovery Server 2017 facet and the LDS server capability code.

It owns port 4840, so your server does not

This is the practical consequence people meet first. If an LDS is installed on a machine, it binds 4840, and every other server on that host must listen elsewhere. That is why so many products default to ports other than 4840 and why hardcoding 4840 into a client configuration breaks on hosts with an LDS. Registration also requires mutual certificate trust between the server and the LDS.

Network discovery and its limits

FindServersOnNetwork is backed by multicast DNS on UDP 5353. Multicast does not cross subnets or most VLAN boundaries, and is commonly filtered by managed switches and wireless controllers, so a plant network split across VLANs will show an empty list even when everything is healthy. Treat network discovery as a convenience for commissioning, never as the mechanism a production client depends on.

Example

What FindServers returns from an LDS

FindServers on opc.tcp://edge01:4840
  [0] ApplicationUri  urn:edge01:Vendor:LineServer
      DiscoveryUrls   opc.tcp://edge01:48010/UA/LineServer
  [1] ApplicationUri  urn:edge01:OpcPlc
      DiscoveryUrls   opc.tcp://edge01:50000

Note the ports: the LDS itself holds 4840, so the real servers are elsewhere.
The mistake people make: Expecting an LDS to be present. Most PLCs and embedded servers have none - they simply listen on 4840 themselves - and a client that insists on discovering through an LDS will find nothing. Discovery through an LDS is optional infrastructure; a direct GetEndpoints against the server address always works.

Defined in: Part 12 - Discovery and Global Services; the LDS is separate from the GDS and provides only local discovery.

Last verified 7 September 2026 against OPC UA 1.05.07. OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Free download
OPC UA Server Acceptance Test Pack
A 40-check acceptance test you run against a vendor's server before commissioning sign-off. Weighted scoring, three hard gates, and a one-page verdict for the supplier meeting.
Get the free test pack →
Free, no course, no login