I have an iOS Runtime SDK application (v 100.7) to which I recently added an offline mode which allows the user to select an area of interest on the map and a replica is created including all the feature services. I followed the pattern described in this article if you want to see implementation details.
The AGSOfflineMapTask is created from a web map portal item I created on my company's on-premise Portal (enterprise 10.7.1). We use a reverse proxy server configured like this diagram. Activating offline mode fails and generates the following error for every service contained in the web map: "A server with the specified hostname could not be found", then gives the url of the internal url rather than the public-facing url outside the firewall.

I made sure that the url for the web map portal item supplied to the AGSOfflineMapTask uses the public-facing url, but it seems that the call to start() function makes requests to the internal urls and I don't have a way to change that, so the requests are being blocked by the firewall.
I'm currently relying on a workaround by temporarily changing the hosting server for portal to the dmz url and republishing all the services contained in the map which works, but this is not a good solution because it violates our security policy. I could use a suggestion for a better way of downloading a portion of the map for offline use.