# Cogent DataHub OPC UA Server unreachable

**URL:** <https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218>\
**Category:** Ignition\
**Tags:** vision\
**Created:** [May 3, 2023, 7:03pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218 "2023-05-03T19:03:31Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![d.vasilev](https://avatars.discourse-cdn.com/v4/letter/d/df705f/32.png) [@d.vasilev](https://forum.inductiveautomation.com/u/d.vasilev)\
**Post date:** [May 3, 2023, 7:03pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/1 "2023-05-03T19:03:32Z")

</div>

Hi,  
I am trying to configure OPC UA Server connection from Ignition 8,13 Vision to Cogent DataHub OPC UA server.  
No any issues if I use laptop with Ignition Trial version.

After entering the endpoint URL, I get these options (means connection is established):

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/f/c/fc905cd57156a27c4f81d2d78b35164b2a5ac991.png)

However, at next step error pops up:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/5/d5d8a0fd62eebac2c0752aef748d2abbf543aefb.png)

Found this article, but did not help:

> **[Flexy connecting to OPC UA server](https://forum.hms-networks.com/t/flexy-connecting-to-opc-ua-server/67025/8)**
>
> Hi Deryck, I don’t know how much you interact with support from other regions. I know MAC Solutions in the UK is a distributor for both HMS products and the Cogent DataHub. If there are known issues, the support team in that region might know...

Wireshark could not help either.  
Any ideas?

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [May 3, 2023, 7:08pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/2 "2023-05-03T19:08:20Z")

</div>

Is there no alternative to select in that next step? This is probably happening because the hostname can’t be resolved, but usually you should get an option to proceed using the IP you originally used to discover.

---

<div class="post-metadata">

**Author:** ![d.vasilev](https://avatars.discourse-cdn.com/v4/letter/d/df705f/32.png) [@d.vasilev](https://forum.inductiveautomation.com/u/d.vasilev)\
**Post date:** [May 3, 2023, 7:11pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/3 "2023-05-03T19:11:18Z")

</div>

Tried couple of times, but got this:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/3/8/38768597e3db013872c909e2e8ef4af63b5d9182.png)

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [May 3, 2023, 7:12pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/4 "2023-05-03T19:12:07Z")

</div>

What happens if you select the “Substitute URL From Discovery” option?

Is there some error in the Ignition Gateway logs?

---

<div class="post-metadata">

**Author:** ![d.vasilev](https://avatars.discourse-cdn.com/v4/letter/d/df705f/32.png) [@d.vasilev](https://forum.inductiveautomation.com/u/d.vasilev)\
**Post date:** [May 3, 2023, 7:14pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/5 "2023-05-03T19:14:59Z")

</div>

java.util.concurrent.ExecutionException: UaServiceFaultException: status=Bad\_ServerUriInvalid, message=The ServerUri is not a valid URI.

at java.base/java.util.concurrent.CompletableFuture.reportGet(Unknown Source)

at java.base/java.util.concurrent.CompletableFuture.get(Unknown Source)

at com.inductiveautomation.ignition.gateway.opcua.client.connection.web.discovery.wizardsteps.ManualDiscoveryServerEntryStep.getEndpoints(ManualDiscoveryServerEntryStep.java:97)

at com.inductiveautomation.ignition.gateway.opcua.client.connection.web.discovery.wizardsteps.ManualDiscoveryServerEntryStep.next(ManualDiscoveryServerEntryStep.java:86)

at org.apache.wicket.extensions.wizard.dynamic.DynamicWizardModel.next(DynamicWizardModel.java:126)

at com.inductiveautomation.ignition.gateway.opcua.client.connection.web.discovery.EndpointWizardButtonBar$NextButton.onClick(EndpointWizardButtonBar.java:26)

at org.apache.wicket.extensions.wizard.WizardButton.onSubmit(WizardButton.java:88)

at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1304)

at org.apache.wicket.markup.html.form.Form.process(Form.java:967)

at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:789)

at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:701)

at jdk.internal.reflect.GeneratedMethodAccessor555.invoke(Unknown Source)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.base/java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)

at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:216)

at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:243)

at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:236)

at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:890)

at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)

at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)

at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)

at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)

at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)

at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)

at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)

at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201)

at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602)

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434)

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349)

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

at com.inductiveautomation.catapult.handlers.RemoteHostNameLookupHandler.handle(RemoteHostNameLookupHandler.java:116)

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:322)

at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:59)

at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146)

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)

at org.eclipse.jetty.server.Server.handle(Server.java:516)

at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388)

at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633)

at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380)

at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)

at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)

at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)

at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)

at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386)

at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)

at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)

at java.base/java.lang.Thread.run(Unknown Source)

Caused by: org.eclipse.milo.opcua.stack.core.UaServiceFaultException: status=Bad\_ServerUriInvalid, description=The ServerUri is not a valid URI.

at org.eclipse.milo.opcua.stack.client.UaStackClient.lambda$deliverResponse$5(UaStackClient.java:328)

at org.eclipse.milo.opcua.stack.core.util.ExecutionQueue$Task.run(ExecutionQueue.java:119)

at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [May 3, 2023, 7:20pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/6 "2023-05-03T19:20:32Z")

</div>

Can you get a Wireshark capture while you attempt this? As far as I can tell this error is coming from the server for some reason...

---

<div class="post-metadata">

**Author:** ![d.vasilev](https://avatars.discourse-cdn.com/v4/letter/d/df705f/32.png) [@d.vasilev](https://forum.inductiveautomation.com/u/d.vasilev)\
**Post date:** [May 3, 2023, 7:22pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/7 "2023-05-03T19:22:20Z")

</div>

Thank you for your always activ support, Kevin.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [May 3, 2023, 7:24pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/8 "2023-05-03T19:24:44Z")

</div>

Okay, in that step where you can select "Use another URL", try

`opc.tcp://192.168.33.99:51310/CogentDataHub/DataAccess`

and not just the IP:port.

If that doesn't work you might need to contact Cogent support, because I can't see why else it might return a ServiceFault in response to a GetEndpointsRequest.

---

<div class="post-metadata">

**Author:** ![d.vasilev](https://avatars.discourse-cdn.com/v4/letter/d/df705f/32.png) [@d.vasilev](https://forum.inductiveautomation.com/u/d.vasilev)\
**Post date:** [May 3, 2023, 7:32pm UTC](https://forum.inductiveautomation.com/t/cogent-datahub-opc-ua-server-unreachable/73218/9 "2023-05-03T19:32:18Z")

</div>

Worked like charm. Thanks a lot!
