{"id":1925,"date":"2026-07-20T12:56:30","date_gmt":"2026-07-20T12:56:30","guid":{"rendered":"https:\/\/integrationobjects.com\/blog\/?p=1925"},"modified":"2026-08-10T14:29:20","modified_gmt":"2026-08-10T14:29:20","slug":"opc-ua-discovery-explained-understanding-lds-and-gds","status":"publish","type":"post","link":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/","title":{"rendered":"OPC UA Discovery Explained: Understanding LDS and GDS"},"content":{"rendered":"<p>OPC UA made industrial systems easier to connect, configure, secure and scale. One of the improvements introduced by <a href=\"https:\/\/integrationobjects.com\/blog\/what-is-opc-ua\/\">OPC UA<\/a> is its standardized discovery mechanism.<\/p>\n<p>In OPC Classic, clients relied on OPC Enum, a Windows service that enumerated installed OPC servers on a local or remote machine using Microsoft DCOM. While OPC Enum simplified server discovery compared to manually entering ProgIDs or CLSIDs, it remained dependent on DCOM configuration and Windows networking, making discovery across firewalls or distributed environments complex and difficult to manage.<\/p>\n<p>OPC UA replaces this approach with built-in discovery services that enable clients to automatically locate available servers, endpoints, and supported security policies using standardized OPC UA services. As specified in OPC UA spec part12 &#8211; Discovery, OPC UA defines two discovery services:<\/p>\n<ul>\n<li>Local Discovery Server (LDS)<\/li>\n<li><a href=\"https:\/\/integrationobjects.com\/blog\/opc-ua-global-discovery-server-gds-explained-centralized-certificate-management-for-opc-ua\/\">Global Discovery Server (GDS)<\/a><\/li>\n<\/ul>\n<p>Although they share similar names, they solve different problems. Understanding the role of each is essential for designing scalable and secure OPC UA architectures.<\/p>\n<p>In this article, we will explain how OPC UA discovery works, compare LDS and GDS, and discuss when each should be used.<\/p>\n<h2>Why Does OPC UA Need Discovery?<\/h2>\n<p>Imagine a manufacturing facility with:<\/p>\n<ul>\n<li>50 PLCs exposing OPC UA servers<\/li>\n<li>Multiple SCADA systems<\/li>\n<li>An MES platform<\/li>\n<li>A historian<\/li>\n<li>Several engineering workstations<\/li>\n<li>Edge gateways collecting production data<\/li>\n<\/ul>\n<p>Every client application must know which OPC UA servers are available and how to connect to them.<\/p>\n<p>Without discovery, every endpoint must be configured manually:<\/p>\n<ul>\n<li>Server URL<\/li>\n<li>Port number<\/li>\n<li>Security policy<\/li>\n<li>Message security mode<\/li>\n<li>Application information<\/li>\n<\/ul>\n<p>Whenever a server changes its address or a new system is added, every affected client must be updated manually.<\/p>\n<p>Discovery eliminates much of this administrative effort by allowing applications to locate OPC UA servers dynamically.<\/p>\n<h2>What Is OPC UA Discovery?<\/h2>\n<p>OPC UA Discovery is a standardized mechanism that enables OPC UA clients to find available servers without requiring their addresses to be manually configured.<\/p>\n<p>Discovery provides information such as:<\/p>\n<ul>\n<li>Available OPC UA servers<\/li>\n<li>Application name<\/li>\n<li>Application URI<\/li>\n<li>Product URI<\/li>\n<li>Discovery URLs<\/li>\n<li>Communication endpoints<\/li>\n<li>Supported security policies<\/li>\n<li>Security modes<\/li>\n<\/ul>\n<p>This allows OPC UA client applications to automatically identify compatible servers.<\/p>\n<h2>How Discovery Works<\/h2>\n<p>At a high level, the discovery process follows these steps:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1926 aligncenter\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-process-diagram.png\" alt=\"OPC UA discovery process diagram showing client querying a discovery server for available servers and endpoints\" width=\"330\" height=\"391\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-process-diagram.png 592w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-process-diagram-253x300.png 253w\" sizes=\"auto, (max-width: 330px) 100vw, 330px\" \/><\/p>\n<p style=\"text-align: center;\"><strong><em>Figure 1: High-level OPC UA Discovery Process<\/em><\/strong><\/p>\n<p>The discovery service acts as a directory, allowing clients to locate servers before establishing secure communications.<\/p>\n<h2>What Is a Local Discovery Server (LDS)?<\/h2>\n<p>A Local Discovery Server (LDS) is a lightweight OPC UA service that runs on an individual computer or industrial device. Its purpose is to maintain a directory of OPC UA servers running on the local machine.<\/p>\n<p>Whenever an OPC UA server starts, it can register itself with the LDS. Clients connecting to that computer can then query the LDS to discover all locally available OPC UA servers.<\/p>\n<p>By default, an LDS is scoped to the machine it runs on. However, the OPC UA specification also defines an optional Multicast Extension (LDS-ME), which lets the LDS advertise itself using mDNS (Multicast DNS). When enabled, a client can call the <em>FindServersOnNetwork <\/em>service to discover OPC UA servers registered with any LDS-ME on the same subnet and not just the local machine. This extends an LDS&#8217;s reach across a local network segment, though it still stops at subnet boundaries and depends on multicast being permitted on the network. Some network administrators do disable multicast for security reasons, since mDNS traffic is inherently unauthenticated.<\/p>\n<h2>What Information Does an LDS Store?<\/h2>\n<p>A registered OPC UA server application typically provides:<\/p>\n<ul>\n<li>Application Name<\/li>\n<li>Application URI<\/li>\n<li>Product URI<\/li>\n<li>Discovery URL<\/li>\n<li>Endpoint URLs<\/li>\n<li>Supported security policies<\/li>\n<li>Available transport profiles<\/li>\n<\/ul>\n<p>The LDS simply stores this information and makes it available to requesting <a href=\"https:\/\/integrationobjects.com\/sioth-opc\/sioth-opc-unified-architecture\/opc-ua-client\">OPC UA clients<\/a>. It does not inspect process data or participate in communications between clients and servers.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-1927 aligncenter\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-local-discovery-server-lds-architecture.png\" alt=\"Local Discovery Server (LDS) architecture diagram showing OPC UA servers registering with an LDS on a single machine\" width=\"387\" height=\"375\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-local-discovery-server-lds-architecture.png 430w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-local-discovery-server-lds-architecture-300x291.png 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/p>\n<p style=\"text-align: center;\"><strong><em>Figure 2: Typical LDS Architecture<\/em><\/strong><\/p>\n<p>Want to see OPC UA discovery in action? Our OPC UA Client Toolkit includes built-in server discovery via LDS.<\/p>\n<h2>Advantages of an LDS<\/h2>\n<p>An LDS offers several benefits:<\/p>\n<ul>\n<li><strong>Simplified Configuration<\/strong><\/li>\n<\/ul>\n<p>Clients no longer need manually maintained endpoint lists.<\/p>\n<ul>\n<li><strong>Automatic &amp; Standardized Discovery<\/strong><\/li>\n<\/ul>\n<p>New OPC UA servers become discoverable immediately after registration.<\/p>\n<p>Discovery behaves consistently across products from different vendors.<\/p>\n<h2>Limitations of an LDS<\/h2>\n<p>Although useful, an LDS has important limitations. It does not:<\/p>\n<ul>\n<li>Discover servers beyond its local subnet (even with the multicast extension enabled, an LDS&#8217;s reach stops at subnet boundaries)<\/li>\n<li>Manage certificates<\/li>\n<li>Distribute trust lists<\/li>\n<li>Renew certificates<\/li>\n<li>Revoke certificates<\/li>\n<li>Act as a Certificate Authority<\/li>\n<\/ul>\n<p>Its scope is intentionally limited to local discovery.<\/p>\n<h2>What Is a Global Discovery Server (GDS)?<\/h2>\n<p>As industrial environments grow, discovery across a single computer is not sufficient.<\/p>\n<p>Organizations often operate hundreds of OPC UA servers, multiple production sites, cloud-connected applications, historians, MES systems, enterprise analytics platforms, etc.<\/p>\n<p>Managing these applications individually quickly becomes difficult.<\/p>\n<p>The Global Discovery Server (GDS) addresses this challenge by providing centralized application discovery across an entire organization. Unlike the LDS, the GDS also manages the security lifecycle of OPC UA applications.<\/p>\n<h2>What Does a GDS Do?<\/h2>\n<p>A GDS provides two major capabilities:<\/p>\n<ol>\n<li><strong>Enterprise-Wide Discovery<\/strong><\/li>\n<\/ol>\n<p>Applications register themselves with the GDS. OPC UA Clients can then discover OPC UA servers anywhere within the enterprise.<\/p>\n<p>The GDS stores information including application name, application URI, discovery URLs, available endpoints, and supported security policies.<\/p>\n<ol start=\"2\">\n<li><strong>Certificate Management<\/strong><\/li>\n<\/ol>\n<p>One of the most important responsibilities of a GDS is managing OPC UA application certificates. A GDS can:<\/p>\n<ul>\n<li>Issue certificates<\/li>\n<li>Renew certificates<\/li>\n<li>Revoke certificates<\/li>\n<li>Maintain trust lists<\/li>\n<li>Distribute trusted certificates<\/li>\n<\/ul>\n<p style=\"text-align: center;\"><a id=\"download\" class=\"btn_product_download\" href=\"https:\/\/integrationobjects.com\/blog\/blog-opc-ua-security\/\"><strong>See our OPC UA Security Guide<\/strong><\/a><\/p>\n<p>Architecturally, a GDS is itself a complete OPC UA Server &#8211; not a lightweight directory like an LDS. Because of this, all interactions with a GDS (registering an application, querying for servers, managing certificates) happen over an authenticated, secured OPC UA session rather than an open discovery call. This is an important distinction: it means GDS communication is secured by design, and it is part of why the GDS is the component trusted to issue and manage certificates on behalf of other applications.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1928 aligncenter\" src=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-global-discovery-server-gds-architecture.png\" alt=\"Global Discovery Server (GDS) architecture diagram showing enterprise-wide OPC UA server registration and certificate management across multiple sites\" width=\"338\" height=\"285\" srcset=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-global-discovery-server-gds-architecture.png 500w, https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-global-discovery-server-gds-architecture-300x253.png 300w\" sizes=\"auto, (max-width: 338px) 100vw, 338px\" \/><\/p>\n<p style=\"text-align: center;\"><strong><em>Figure 3: Typical GDS Architecture<\/em><\/strong><\/p>\n<p>Unlike an LDS, a GDS can manage applications across multiple computers, production lines, and even geographically distributed facilities.<\/p>\n<h2>LDS vs. GDS<\/h2>\n<p>The following table summarizes the differences between the two discovery services.<\/p>\n<table>\n<tbody>\n<tr>\n<td><strong>Feature<\/strong><\/td>\n<td><strong>Local Discovery Server (LDS)<\/strong><\/td>\n<td><strong>Global Discovery Server (GDS)<\/strong><\/td>\n<\/tr>\n<tr>\n<td><strong>Scope<\/strong><\/td>\n<td>Single computer (subnet-wide with LDS-ME)<\/td>\n<td>Entire enterprise<\/td>\n<\/tr>\n<tr>\n<td><strong>Server discovery<\/strong><\/td>\n<td>\u2714<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Application registration<\/strong><\/td>\n<td>Local only<\/td>\n<td>Enterprise-wide<\/td>\n<\/tr>\n<tr>\n<td><strong>Requires authenticated session<\/strong><\/td>\n<td>\u2716 (open discovery queries)<\/td>\n<td>\u2714 (secured OPC UA session)<\/td>\n<\/tr>\n<tr>\n<td><strong>Certificate management<\/strong><\/td>\n<td>\u2716<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Trust list management<\/strong><\/td>\n<td>\u2716<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Automatic certificate renewal<\/strong><\/td>\n<td>\u2716<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Certificate revocation<\/strong><\/td>\n<td>\u2716<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Multi-site support<\/strong><\/td>\n<td>\u2716<\/td>\n<td>\u2714<\/td>\n<\/tr>\n<tr>\n<td><strong>Scalability<\/strong><\/td>\n<td>Limited<\/td>\n<td>Supported<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<h2>How LDS and GDS Work Together<\/h2>\n<p>The LDS and GDS are complementary rather than competing technologies. A typical workflow looks like this:<\/p>\n<ol>\n<li>An OPC UA server starts.<\/li>\n<li>The server registers with the LDS on its host computer.<\/li>\n<li>The server also registers with the GDS.<\/li>\n<li>The GDS validates or issues the server&#8217;s certificate.<\/li>\n<li>OPC UA Clients discover servers locally through the LDS or enterprise-wide through the GDS.<\/li>\n<\/ol>\n<h2>Do You Always Need an LDS \/ a GDS?<\/h2>\n<p>Not necessarily. Many OPC UA clients already know the endpoint address of the server they need to connect to. In these situations, discovery is optional.<\/p>\n<p>An LDS is most useful when:<\/p>\n<ul>\n<li>Multiple OPC UA servers run on one machine.<\/li>\n<li>Engineering software needs to browse available servers.<\/li>\n<li>Dynamic discovery simplifies deployment.<\/li>\n<\/ul>\n<p>For a small system with one or two <a href=\"https:\/\/integrationobjects.com\/sioth-opc\/sioth-opc-unified-architecture\/opc-ua-server-simulator\">OPC UA servers<\/a>, manually managing certificates is often acceptable. A GDS becomes increasingly valuable when:<\/p>\n<ul>\n<li>The number of OPC UA applications grows.<\/li>\n<li>Multiple facilities are involved.<\/li>\n<li>Certificate management becomes difficult.<\/li>\n<li>Security policies must be centrally enforced.<\/li>\n<li>Enterprise-wide scalability is required.<\/li>\n<\/ul>\n<p>In either case, confirm that the specific products in your architecture actually support what you&#8217;re planning around &#8211; LDS support is close to universal, but GDS support still varies more by vendor and version.<\/p>\n<h2>Frequently Asked Questions<\/h2>\n<style>#sp-ea-1931 .spcollapsing { height: 0; overflow: hidden; transition-property: height;transition-duration: 300ms;}#sp-ea-1931.sp-easy-accordion>.sp-ea-single {margin-bottom: 10px; border: 1px solid #e2e2e2; }#sp-ea-1931.sp-easy-accordion>.sp-ea-single>.ea-header a {color: #444;}#sp-ea-1931.sp-easy-accordion>.sp-ea-single>.sp-collapse>.ea-body {background: #fff; color: #444;}#sp-ea-1931.sp-easy-accordion>.sp-ea-single {background: #eee;}#sp-ea-1931.sp-easy-accordion>.sp-ea-single>.ea-header a .ea-expand-icon { float: left; color: #444;font-size: 16px;}.sp-easy-accordion .sp-ea-single .ea-header a{\r\n  display: block;\r\n    text-decoration: none;\r\n    cursor: pointer;\r\n    font-weight: 600;\r\n    color: #444;\r\n    font-size: 16px;\r\n    line-height: 1;\r\n  box-shadow: none;}<\/style><div id=\"sp_easy_accordion-1784551829\"><div id=\"sp-ea-1931\" class=\"sp-ea-one sp-easy-accordion\" data-ea-active=\"ea-click\" data-ea-mode=\"vertical\" data-preloader=\"\" data-scroll-active-item=\"\" data-offset-to-scroll=\"0\"><div class=\"ea-card ea-expand sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19310\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19310\" aria-controls=\"collapse19310\" href=\"#\" aria-expanded=\"true\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-minus\"><\/i> Is LDS a mandatory prerequisite for OPC UA software?<\/a><\/h3><div class=\"sp-collapse spcollapse collapsed show\" id=\"collapse19310\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19310\"> <div class=\"ea-body\"><p>No. OPC UA clients can connect directly to known server endpoints without using an LDS. Discovery is just a convenience layer on top, not a requirement.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19311\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19311\" aria-controls=\"collapse19311\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> What about a GDS - is that mandatory?<\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse19311\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19311\"> <div class=\"ea-body\"><p>Also no. The GDS is optional but highly recommended for medium and large deployments where centralized certificate management improves security and reduces administrative effort. For small setups, the added complexity often outweighs the benefits.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19312\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19312\" aria-controls=\"collapse19312\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Can LDS and GDS run side by side?<\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse19312\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19312\"> <div class=\"ea-body\"><p>Yes. Many enterprise deployments use an LDS for local discovery and a GDS for centralized discovery and certificate management.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19313\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19313\" aria-controls=\"collapse19313\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Does the GDS replace the LDS?<\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse19313\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19313\"> <div class=\"ea-body\"><p>No. The two services complement each other. The LDS provides local discovery, while the GDS provides enterprise-wide discovery and centralized security management. Think of it less as replacement and more as division of labor: LDS answers \"what is running on this machine,\" GDS answers \"what is running anywhere, and can I trust it.\"<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19314\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19314\" aria-controls=\"collapse19314\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Is LDS an OPC UA server?<\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse19314\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19314\"> <div class=\"ea-body\"><p>Sort of. An LDS is implemented as a special-purpose OPC UA server \u2014 it exposes the standard <em>FindServers <\/em>and R<em>egisterServer2<\/em> services over an OPC UA endpoint (typically opc.tcp:\/\/host:4840\/UADiscovery). However, it is not a general-purpose OPC UA server that exposes process data.<\/p><\/div><\/div><\/div><div class=\"ea-card sp-ea-single\"><h3 class=\"ea-header\"><a class=\"collapsed\" id=\"ea-header-19315\" role=\"button\" data-sptoggle=\"spcollapse\" data-sptarget=\"#collapse19315\" aria-controls=\"collapse19315\" href=\"#\" aria-expanded=\"false\" tabindex=\"0\"><i aria-hidden=\"true\" role=\"presentation\" class=\"ea-expand-icon eap-icon-ea-expand-plus\"><\/i> Does GDS support come standard with most OPC UA products?<\/a><\/h3><div class=\"sp-collapse spcollapse \" id=\"collapse19315\" data-parent=\"#sp-ea-1931\" role=\"region\" aria-labelledby=\"ea-header-19315\"> <div class=\"ea-body\"><p>Not as reliably as you would expect. LDS support has been near-universal for years, but GDS is newer territory. Some major industrial platforms only added it in the last release or two, and others still do not support it natively. Before planning around a GDS, it is worth confirming that every OPC UA application in your architecture actually supports GDS registration and certificate push\/pull, rather than assuming it is a universally available option the way LDS is.<\/p><\/div><\/div><\/div><script type=\"application\/ld+json\">{ \"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"@id\": \"sp-ea-schema-1931-6aae97794d02c\", \"mainEntity\": [{ \"@type\": \"Question\", \"name\": \"Is LDS a mandatory prerequisite for OPC UA software?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"No. OPC UA clients can connect directly to known server endpoints without using an LDS. Discovery is just a convenience layer on top, not a requirement.\" } },{ \"@type\": \"Question\", \"name\": \"What about a GDS - is that mandatory?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Also no. The GDS is optional but highly recommended for medium and large deployments where centralized certificate management improves security and reduces administrative effort. For small setups, the added complexity often outweighs the benefits.\" } },{ \"@type\": \"Question\", \"name\": \"Can LDS and GDS run side by side?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Yes. Many enterprise deployments use an LDS for local discovery and a GDS for centralized discovery and certificate management.\" } },{ \"@type\": \"Question\", \"name\": \"Does the GDS replace the LDS?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"No. The two services complement each other. The LDS provides local discovery, while the GDS provides enterprise-wide discovery and centralized security management. Think of it less as replacement and more as division of labor: LDS answers 'what is running on this machine,' GDS answers 'what is running anywhere, and can I trust it.'\" } },{ \"@type\": \"Question\", \"name\": \"Is LDS an OPC UA server?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Sort of. An LDS is implemented as a special-purpose OPC UA server \u2014 it exposes the standard<em>FindServers<\/em>and R<em>egisterServer2<\/em>services over an OPC UA endpoint (typically opc.tcp:\/\/host:4840\/UADiscovery). However, it is not a general-purpose OPC UA server that exposes process data.\" } },{ \"@type\": \"Question\", \"name\": \"Does GDS support come standard with most OPC UA products?\", \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Not as reliably as you would expect. LDS support has been near-universal for years, but GDS is newer territory. Some major industrial platforms only added it in the last release or two, and others still do not support it natively. Before planning around a GDS, it is worth confirming that every OPC UA application in your architecture actually supports GDS registration and certificate push\/pull, rather than assuming it is a universally available option the way LDS is.\" } }] }<\/script><\/div><\/div>\n<h2>Looking for Free OPC UA Products?<\/h2>\n<p>If you are looking for OPC UA test products, click <a href=\"https:\/\/integrationobjects.com\/sioth-opc\/sioth-opc-unified-architecture\/opc-ua-server-simulator\">here<\/a> to download a free OPC UA Server Simulator and <a href=\"https:\/\/integrationobjects.com\/sioth-opc\/sioth-opc-unified-architecture\/opc-ua-client\">here<\/a> to download a free OPC UA Client.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>OPC UA made industrial systems easier to connect, configure, secure and scale. One of the improvements introduced by OPC UA is its standardized discovery mechanism.<\/p>\n","protected":false},"author":1,"featured_media":1930,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[183],"tags":[196,194],"class_list":["post-1925","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-opc-ua","tag-opc-ua-discovery","tag-opc-ua-security"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>OPC UA Discovery Explained: Understanding LDS and GDS<\/title>\n<meta name=\"description\" content=\"Learn how OPC UA Discovery works, the differences between Local Discovery Server (LDS) and Global Discovery Server (GDS), and when to use each.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OPC UA Discovery Explained: Understanding LDS and GDS\" \/>\n<meta property=\"og:description\" content=\"Learn how OPC UA Discovery works, the differences between Local Discovery Server (LDS) and Global Discovery Server (GDS), and when to use each.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/\" \/>\n<meta property=\"og:site_name\" content=\"OPC Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Integration.Objects.OPC\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-20T12:56:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-10T14:29:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-lds-gds-header.png.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1248\" \/>\n\t<meta property=\"og:image:height\" content=\"832\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"OPCBlogAdmin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@IntegObjects\" \/>\n<meta name=\"twitter:site\" content=\"@IntegObjects\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"OPCBlogAdmin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"OPC UA Discovery Explained: Understanding LDS and GDS","description":"Learn how OPC UA Discovery works, the differences between Local Discovery Server (LDS) and Global Discovery Server (GDS), and when to use each.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/","og_locale":"en_US","og_type":"article","og_title":"OPC UA Discovery Explained: Understanding LDS and GDS","og_description":"Learn how OPC UA Discovery works, the differences between Local Discovery Server (LDS) and Global Discovery Server (GDS), and when to use each.","og_url":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/","og_site_name":"OPC Blog","article_publisher":"https:\/\/www.facebook.com\/Integration.Objects.OPC\/","article_published_time":"2026-07-20T12:56:30+00:00","article_modified_time":"2026-08-10T14:29:20+00:00","og_image":[{"width":1248,"height":832,"url":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-lds-gds-header.png.png","type":"image\/png"}],"author":"OPCBlogAdmin","twitter_card":"summary_large_image","twitter_creator":"@IntegObjects","twitter_site":"@IntegObjects","twitter_misc":{"Written by":"OPCBlogAdmin","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/","url":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/","name":"OPC UA Discovery Explained: Understanding LDS and GDS","isPartOf":{"@id":"https:\/\/integrationobjects.com\/blog-\/#website"},"primaryImageOfPage":{"@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/#primaryimage"},"image":{"@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/#primaryimage"},"thumbnailUrl":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-lds-gds-header.png.png","datePublished":"2026-07-20T12:56:30+00:00","dateModified":"2026-08-10T14:29:20+00:00","author":{"@id":"https:\/\/integrationobjects.com\/blog-\/#\/schema\/person\/6efbaf488a07e418b93ff77f00af386b"},"description":"Learn how OPC UA Discovery works, the differences between Local Discovery Server (LDS) and Global Discovery Server (GDS), and when to use each.","breadcrumb":{"@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/#primaryimage","url":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-lds-gds-header.png.png","contentUrl":"https:\/\/integrationobjects.com\/blog\/wp-content\/uploads\/2026\/07\/opc-ua-discovery-lds-gds-header.png.png","width":1248,"height":832,"caption":"OPC UA discovery explained - Local Discovery Server (LDS) vs Global Discovery Server (GDS)"},{"@type":"BreadcrumbList","@id":"https:\/\/integrationobjects.com\/blog\/opc-ua-discovery-explained-understanding-lds-and-gds\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/integrationobjects.com\/blog-\/"},{"@type":"ListItem","position":2,"name":"OPC UA Discovery Explained: Understanding LDS and GDS"}]},{"@type":"WebSite","@id":"https:\/\/integrationobjects.com\/blog-\/#website","url":"https:\/\/integrationobjects.com\/blog-\/","name":"OPC Blog","description":"OPC and related technologies news from Integration Objects","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/integrationobjects.com\/blog-\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/integrationobjects.com\/blog-\/#\/schema\/person\/6efbaf488a07e418b93ff77f00af386b","name":"OPCBlogAdmin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/integrationobjects.com\/blog-\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/f2d787c3c48eb147d5b4d0c9d05c6f35a5946c7dc40af2eedbe64030e99ea299?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f2d787c3c48eb147d5b4d0c9d05c6f35a5946c7dc40af2eedbe64030e99ea299?s=96&d=mm&r=g","caption":"OPCBlogAdmin"}}]}},"_links":{"self":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/1925","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/comments?post=1925"}],"version-history":[{"count":6,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/1925\/revisions"}],"predecessor-version":[{"id":2032,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/posts\/1925\/revisions\/2032"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/media\/1930"}],"wp:attachment":[{"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/media?parent=1925"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/categories?post=1925"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/integrationobjects.com\/blog\/wp-json\/wp\/v2\/tags?post=1925"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}