Dear Xrootd team.

I am deploying a Xrootd server (4.9) behind a port-forwarding NAT.
I.e. the node itself only has a private IP address, but it can be contacted via the NAT’s public IP address.

The problem is, 
xrdfs <URL> ls
does not work!
(While xrdcp does, at least for a small file)

Looking at the debug messages, I see that xrdfs first successfully contacts the Xrootd server, 
but then tries to open a new connection to the internal IP address.

How can I tell the Xrootd server to never use the internal IP address, and use the NAT’s public IP instead?
Note that xrootd on the node itself has no way to auto-detect this information.

Thank you in advance,
  Igor Sfiligoi
  OSG and PRP teams

Excerpt from the XRD_LOGLEVEL=Debug xrdfs root://stashcache-origin-merra2.nautilus.optiputer.net:31094 ls /merra2/
(stashcache-origin-merra2.nautilus.optiputer.net is the NAT’s DNS name, 10.244.22.53 is the private IP addres)
...
[2019-02-13 08:52:39.235574 -0800][Debug  ][TaskMgr           ] Registering task: "FileTimer task" to be run at: [2019-02-13 08:52:39 -0800]
[2019-02-13 08:52:39.235620 -0800][Debug  ][PostMaster        ] Creating new channel to: stashcache-origin-merra2.nautilus.optiputer.net:31094 1 stream(s)
[2019-02-13 08:52:39.235646 -0800][Debug  ][PostMaster        ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0] Stream parameters: Network Stack: IPAuto, Connection Window: 120, ConnectionRetry: 5, Stream Error Window: 1800
[2019-02-13 08:52:39.236480 -0800][Debug  ][TaskMgr           ] Registering task: "TickGeneratorTask for: stashcache-origin-merra2.nautilus.optiputer.net:31094" to be run at: [2019-02-13 08:52:54 -0800]
[2019-02-13 08:52:39.238006 -0800][Debug  ][PostMaster        ] [stashcache-origin-merra2.nautilus.optiputer.net:31094] Found 6 address(es): [::ffff:198.17.101.70]:31094, [::ffff:198.17.101.46]:31094, [::ffff:130.191.103.1]:31094, [::ffff:128.114.109.70]:31094, [::ffff:171.66.4.10]:31094, [::ffff:198.48.92.50]:31094
[2019-02-13 08:52:39.238071 -0800][Debug  ][AsyncSock         ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Attempting connection to [::ffff:198.48.92.50]:31094
[2019-02-13 08:52:39.238133 -0800][Debug  ][Poller            ] Adding socket 0x1715ab0 to the poller
[2019-02-13 08:52:39.293202 -0800][Debug  ][AsyncSock         ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Async connection call returned
[2019-02-13 08:52:39.293382 -0800][Debug  ][XRootDTransport   ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Sending out the initial hand shake + kXR_protocol
[2019-02-13 08:52:39.348512 -0800][Debug  ][XRootDTransport   ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Got the server hand shake response (type: server [], protocol version 400)
[2019-02-13 08:52:39.348611 -0800][Debug  ][XRootDTransport   ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] kXR_protocol successful (type: server [], protocol version 400)
[2019-02-13 08:52:39.351161 -0800][Debug  ][XRootDTransport   ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Sending out kXR_login request, username: isfiligo, cgi: ?xrd.cc=us&xrd.tz=-8&xrd.appname=xrdfs&xrd.info=&xrd.hostname=test-012.t2.ucsd.edu&xrd.rn=v20181017-9b957ca, dual-stack: true, private IPv4: false, private IPv6: false
[2019-02-13 08:52:39.405956 -0800][Debug  ][XRootDTransport   ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0.0] Logged in, session: 030000000b0000003e00000003000000
[2019-02-13 08:52:39.406091 -0800][Debug  ][PostMaster        ] [stashcache-origin-merra2.nautilus.optiputer.net:31094 #0] Stream 0 connected.
[2019-02-13 08:52:39.406114 -0800][Debug  ][Utility           ] Monitor library name not set. No monitoring
[2019-02-13 08:52:39.461686 -0800][Debug  ][PostMaster        ] Creating new channel to: 10.244.22.53:31094 1 stream(s)
[2019-02-13 08:52:39.461765 -0800][Debug  ][PostMaster        ] [10.244.22.53:31094 #0] Stream parameters: Network Stack: IPAuto, Connection Window: 120, ConnectionRetry: 5, Stream Error Window: 1800
[2019-02-13 08:52:39.463259 -0800][Debug  ][TaskMgr           ] Registering task: "TickGeneratorTask for: 10.244.22.53:31094" to be run at: [2019-02-13 08:52:54 -0800]
[2019-02-13 08:52:39.463348 -0800][Debug  ][PostMaster        ] [10.244.22.53:31094] Found 1 address(es): [::ffff:10.244.22.53]:31094
[2019-02-13 08:52:39.463413 -0800][Debug  ][AsyncSock         ] [10.244.22.53:31094 #0.0] Attempting connection to [::ffff:10.244.22.53]:31094
[2019-02-13 08:52:39.463499 -0800][Debug  ][Poller            ] Adding socket 0x170ff20 to the poller
 


Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1