SSH tunnel failing to bind requested port in Airbyte Cloud setup

Summary

The user is facing issues with an SSH tunnel setup in Airbyte Cloud, where the port binding is failing due to an attempt to use IPv6 instead of IPv4. The user has tried using both IP addresses and URLs in the configuration but without success.


Question

Hello everyone, I am looking for some help with ssh tunnels failing to bind the requested port.

I am using airbyte cloud and have setup a destination to a private redshift instance using an ssh tunnel through a bastion server (EC2).

Testing the connection succeeds, but it fails when running an actual connection sync, with a timeout connecting to the server. But before that happens I see the following in the logs:

2024-01-09 19:26:46 destination > Warning: Permanently added '<bastion location>' (ED25519) to the list of known hosts.
2024-01-09 19:26:46 destination > bind [::1]:5439: Cannot assign requested address```
Even though the ssh connection is opened, the port binding is failing.  And it looks like its trying to bind over IPv6, which is failing because the bastion is only setup for IPv4.  I have tried using both IP addresses and urls within the configuration for the redshift and bastion locations, but it seems like it really wants to use IPv6 instead of IPv4.  When setting up an ssh tunnel locally, I can pass the `-4` flag, which makes it default to IPv4 and works correctly, but IPv6 does not.

Any suggestion on how I might be able to get this to work?

<br>

---

This topic has been created from a Slack thread to give it more visibility.
It will be on Read-Only mode here. [Click here](https://airbytehq.slack.com/archives/C021JANJ6TY/p1704834040644499) if you want to access the original thread.

[Join the conversation on Slack](https://slack.airbyte.com)

<sub>
["ssh-tunnel", "port-binding", "ipv6", "ipv4", "airbyte-cloud", "bastion-server", "redshift-instance"]
</sub>