Question
· Oct 21

How to connect to InterSystems Caché using IPv4 and enable remote connections?

I’m trying to connect to an InterSystems Caché database from my local development environment using an IPv4 address. Most examples I’ve found show how to connect using the ODBC driver with the localhost or the default IP address (127.0.0.1). However, I want to know how to connect using my local IPv4 address.

Here’s what I need help with:

  1. Connecting with IPv4: I want to know how to specify my local IPv4 address in the ODBC connection string or any other method to connect to the Caché database.
  2. Enabling Remote Connections: Additionally, how can I configure InterSystems Caché to allow remote connections from other PCs on the same network or from outside network? What settings do I need to adjust?

What I’ve Tried:

  • I’ve attempted changing the Server value to my local IPv4 address, but I encounter errors.
  • I’ve checked the InterSystems documentation but haven’t found clear instructions for enabling remote access.
Product version: Caché 2013.1
$ZV: 2013.16.950
Discussion (4)0
Log in or sign up to continue

A few questions:

  • my local IPv4 address in the ODBC connection
    • in ODBC you have to specify the IP address of the Caché server 
    • there you create the connection FROM YOUR local server
    • by default there's no connection outgoing from Caché
    • No need for your local IP - eventually for some firewalls
  • enabling remote access 
    • if you have username + PW from Caché you should have access
    • only some firewalls on server or client may block you
  • more important: what OS do you run on server and client ?    
  • and what type of connection do you try to establish ?  Web, SuperServer, Terminal, ... ?

I am using Windows 11 and trying to connect to a SuperServer on port 1972. I have confirmed that the port is enabled by successfully establishing a Telnet connection to port 1972. However, I am facing issues when attempting to add a Data Source Name (DSN) using the ODBC driver.

 

Key Details:

  • OS: Windows 11
  • Port: 1972 (Telnet test successful)
  • ODBC Driver:
    • Path: C:\Program Files (x86)\Common Files\InterSystems\Cache\CacheODBC64.dll
    • Version: 2013.1.6.950.1.14259
  • DSN Name: Silk
  • Cache Namespace: Silk
  • Host IP: (IPv4)
  • User: sa (authentication via password)
  • Connection Success: When using localhost
  • Connection Failure: When using IPv4 address


Error Message:

When using the IPv4 address for the host, I receive the following error:

Driver = C:\Program Files (x86)\Common Files\InterSystems\Cache\CacheODBC64.dll
Driver Version = 2013.1.6.950.1.14259

Data Source Name = Silk
Host (IP Address) = [IPv4 address]
Port = 1972
Caché Namespace = Silk
Authentication Method = 0 - Password
User Name = sa
Description = 
Cache ODBC Logging = No
Use Locale Decimal symbol = No
Disable Query Timeout = 0
Static Cursors Support = 0
Unicode SQLTypes = 0

Connect Error: See CacheODBC.log for details
[Cache ODBC][State : S1000][Native Code 417]
[C:\WINDOWS\system32\odbcad32.exe]
Access Denied

The logs don’t provide any clear information as to the cause of the issue., In SQL Server, remote connections typically need to be explicitly enabled. It is possible that a similar setting or configuration might be required in this case to allow connections via IPv4. 

I restarted my PC, and it started working. I made a bunch of changes in the management portal, so I’m not sure which one did the trick. I had trouble connecting with my internal IPv4, but it worked fine with localhost before restarting. I think enabling some services and restarting PC did the Job. I’ll double-check the settings and post the exact configurations(if needed) here.
Thanks!