alpineでgit cloneがうまくいかなかったので

Version情報

$ uname -a
Linux LAPTOP-****** 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 Linux

$ cat /proc/version
Linux version 5.10.16.3-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Fri Apr 2 22:23:49 UTC 202

DockerでのAlpineについてはこちらの方の記事が参考になるかも

pc.atsuhiro-me.net

起こったこと

$ ssh -T git@github.com

エンター押しても先に進まない。

-vvvオプションでより詳しく見てみる

$ ssh -T -vvv git@github.com
OpenSSH_8.8p1, OpenSSL 1.1.1o  3 May 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/kuzunoha/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/kuzunoha/.ssh/known_hosts2'
debug1: Authenticator provider $SSH_SK_PROVIDER did not resolve; disabling
debug2: resolving "github.com" port 22
debug3: resolve_host: lookup github.com:22
debug3: ssh_connect_direct: entering
debug1: Connecting to github.com [198.51.45.8] port 22.
debug3: set_sock_tos: set socket 3 IP_TOS 0x48

ここで止まる

ipアドレスで無理やりつなげてみる

頑張ってgithubIPアドレスで無理やりつなげてみる

$ ssh -T git@13.114.40.48
Hi ****! You've successfully authenticated, but GitHub does not provide shell access.

うまくいったらしい。DNSの問題だろうか。

DNSの設定変更

/etc/resolv.confの変更を行いたい。

しかし、/etc/resolv.confの変更しただけではwsl再起動時に/etc/resolv.confが再生成されてしまう。

そのため、/etc/wsl.confを生成し、以下の内容で入力する。

[network]
generateResolvConf = false

そして、/etc/resolv.confを一度削除し、/etc/resolv.confを再度作成、以下の内容で保存する。

nameserver 8.8.8.8
nameserver 8.8.4.4

そのあとWindowsを再起動してWSL2を再起動する。そしてsshしてみる。

$ ssh -T git@github.com
Hi ****! You've successfully authenticated, but GitHub does not provide shell access.

うまくいった。