-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: 1.48.2
-
Component/s: None
-
Environment:OS: Windows / Linux
node.js / npm versions:
Additional info:
-
5
-
None
-
None
-
Developer Tools
Problem Statement/Rationale
- We use MongoDB Cloud Atlas database in our Azure deployment using Azure private link connectivity to the cluster.
- This works well for our workloads in the cluster.
- Our client machines don't have access to the public internet.
- For similar services we use a SOCKS5 or SSH Proxy machine inside the same network zone to allow access to those private resources for developer access.
- This setup works well for postgress or mysql.
- For MongoDB Atlas Cloud this currently does not work as the DNS SRV records seems to be still resolved on the "plain" operating system level ignoring the proxy settings. This fails as our client machines don't have access to public internet.
Steps to Reproduce
1) Have a Mongo DB server which is only reachable behind private dns endpoint on azure. (Means the actual IPs can only be resolved in the private network zone, the SRV records is resolved using public internet)
2) Configure connection in Mongo DB Compass
mongodb+srv://myDatabaseUser:D1fficultP%40ssw0rd@cluster0.example.mongodb.net/?retryWrites=true&w=majority
3) Configure SSH proxy for connection to jump host on restricted client
4) Try to connect
Expected Results
Compass should open SSH connection to jump host and perform SRV + DNS lookup via jump host. Once ip resolve use SSH connection to connect to database.
Actual Results
No connection to SSH jump host is performed. Compass fails already with exceptions:

If a SSH proxy is configured in Compass I would expect that the DNS resolution takes place inside the remote SSH proxy host (or when using SOCKS5 proxy using the configured SOCKS proxy) and not using the local system.
Additional Notes