Oh, ok. I think I understand your setup. I haven't tried anything exactly like that. Have you tried modifying your configurations like in the following example?
Pretend you have the following setup.
Your local iRODS server:
zone: local
zone key: localkey
private IP address: 10.0.0.1
FQDN:
data.local.org (DNS maps to a public IP address, and institutional NAT translates address to 10.0.0.1)
The remote iRODS server:
zone: remote
zone key: remotekey
The
shared federation negotiation key is negotiationkey.
On the remote iRODS server, the following object has been added to the "federation" array in /etc/irods/server_config.json.
{
"negotiation_key": "negotiationkey",
"zone_key": "localkey",
"zone_name": "local"
}
On the local iRODS server, the following object has been added to the "federation" array in /etc/irods/server_config.json.
{
"negotiation_key": "negotiationkey",
"zone_key": "remotekey",
"zone_name": "remote"
}
Also, in /etc/irods/server_config.json, the "host_resolution"."host_entries" array has an object like the following in it.
{
"address_type": "local",
"addresses": [
"10.0.0.1",
]
}
If that doesn't work, you might need to make the local iRODS server think it is named
data.local.org. To do this, set "irods_host" in /var/lib/irods/.irods/irods_environment.json to "
data.local.org", and modify its /etc/hosts so that the server resolves "
data.local.org" as 127.0.0.1. I'm not certain, but you might need to change "catalog_provider_hosts" in /etc/irods/server_config.json to [ "
data.local.org" ].
I hope this is helpful.
Tony