Adding dicom modality with non-static IP?

I would like to use Orthanc as a PACS server with Query/Retrieve/Send. Currently, I am able to set up my local OsiriX client (laptop) with no problems by adding a line to DICOM modalities:

     "hostname" : [ "HOSTNAME", "<ip_address>", <port_number> ]

However, my IP address is dynamic, and changes depending on my location, e.g. different wifi connection.

Is this by design, or is there some other way to allow clients to connect to the server without hard-coding their information into the Orthanc config file?

Thanks!

Jon

Dear Jon,

The “<ip_address>” can be a symbolic address retrieved from a DNS server (e.g. “orthanc.my-domain.com”).

In your case, you could setup a dynamic DNS service to track your modality:
http://en.wikipedia.org/wiki/Dynamic_DNS

Here is a list of dynamic DNS providers:
https://www.dmoz.org/Computers/Internet/Protocols/DNS/Service_Providers/Dynamic_DNS/

If you have acquired a personal domain name, chances are that your provider allow dynamic DNS from you domain.

Sébastien-

Dear Sebastien,

Apologies for the late follow-up - I have made due without this in the meantime.

Is it possible to achieve this functionality with SSH port forwarding? Here is an example:

Orthanc running on machine 1 with the configuration:
"DicomAet" : "OrthancAET",
"DicomPort" : 4444,
"HttpPort" : 8888,
...
"DicomModalities" : {
"myHostname" : ["localAET", "127.0.0.1", 11112]
},
...

Osirix running on machine 2, querying the location
Address: 127.0.0.1
AETitle: OrthancAET
Port: 4444

Osirix itself is set up to listen on port 11112, with hostname "myHostNAme" and "localAET." I am not able to change the IP to 127.0.0.1, so it shows the local IP.

From machine 2, I ssh into machine 1 and forward the ports 4444, 8888, and 11112. I can now load http://localhost:8888 from machine1, as well as query the location from machine 1. However, retrieving a study gives me the following error:

0006:031c TCP Initialization Error: Connection refused
E0711 13:53:24.770460 18169 MoveScp.cpp:179] IMoveRequestHandler Failed: Error in the network protocol

I realize this may be an Osirix-only issue, but first I thought I'd check if it is even possible.

Thanks

Hello,

DICOM communications through a SSH tunnel are definitely possible.

I think that your problem comes from the following part of your configuration on machine 1:

“DicomModalities” : {
“myHostname” : [“localAET”, “127.0.0.1”, 11112]
},

For this to work, you should setup another tunnel from machine 1 to machine 2 for DICOM port 11112. This will allow Orthanc to send back data to OsiriX. According to your description, you only have a tunnel from machine 2 to machine 1.

Indeed, remember that SSH tunnels are not bidirectionnal. But, DICOM Q/R requires the two computers to act as DICOM servers.

HTH,
Sébastien-