WSL (Windows 用 Bash) で、次のコマンドを使用して SSH ブリッジを作成しようとしました。
ssh -l ubuntu -L 15555:<ip1>:22 <ip2>
bind: Address already in use
ただし、この時点でエラーが発生します。
Authenticated to <ip2> ([<ip2>]:22).
debug1: Local connections to LOCALHOST:15555 forwarded to remote address <ip1>:22
debug3: channel_setup_fwd_listener: type 2 wildcard 0 addr NULL
debug3: sock_set_v6only: set socket 4 IPV6_V6ONLY
debug1: Local forwarding listening on ::1 port 15555.
debug2: fd 4 setting O_NONBLOCK
debug3: fd 4 is O_NONBLOCK
debug1: channel 0: new [port listener]
debug1: Local forwarding listening on 127.0.0.1 port 15555.
bind: Address already in use
UbuntuとCygwinで同じコマンドを試しましたが、うまくいきましたが、WSLでは機能しません。また、別のポートを試しましたが成功しなかったため、netstatでこの問題を引き起こす可能性があるエントリが見つかりませんでした。
理由は何か知っていますか?
答え1
この試み:
ssh -l ubuntu -L 127.0.0.1:15555:<ip1>:22 <ip2>
またはこれ:
ssh -l ubuntu -4 -L 15555:<ip1>:22 <ip2>
問題は、デフォルトでIPv6アドレスにバインドされることです。これはバグとして報告されました。ここBashOnWindowsビルド14942で修正されました。