😄
[Github]: Temporary failure in name resolutionエラーの直すメモ
[Github]: Temporary failure in name resolutionエラーの直すメモ
GithubにSSH接続する設定(公開鍵を登録)した後、git pushしたら「Temporary failure in name resolution」というエラーが出たのでその時のメモ
エラー文
エラー文を見るにDNS関連のエラーではないかと推測
ssh: Could not resolve hostname github.com: Temporary failure in name resolution
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
発生した際の状況
エラー発生した際の状況は下記の通り。
-
ssh -T git@github.com接続したら ユーザー名およびYou've successfully authenticated, but GitHub does not provide shell access.と出て認証に成功した旨の出力が得られる - その直後に
git pushしたら上記のエラー文が表示される。 - pingコマンドでgithub.comに通信の疎通を確認したら問題なし
- リモートリポジトリのURLは
git@github.com:username/repository.gitの形式になっている
環境
WSL上のUbuntuで行っています。
PRETTY_NAME="Ubuntu 24.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.3 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
解決までにやったこと・確かめたこと
解決するまでに色々やったのでリストアップします。
1. .sshキー・フォルダの存在を確認
キーはgithub_rsaという名前で作成しました。
ls ~/.ssh
# config github_rsa github_rsa.pub known_hosts known_hosts.old
2. GitHubに登録したか
GithubのSSHキーの設定ページにSSHキーがあるかを確かめる
ここには作成したキーの公開鍵を登録する。ssh-rsa...のようなはじまり方をする文字列
3. 接続先を指定しているか
Host github github.com
HostName github.com
IdentityFile ~/.ssh/github_rsa
User git
PreferredAuthentications: publickey
4. nameserverを変更
nameserverをgoogleの8.8.8.8に変更した。
/etc/resolv.conf
nameserver=8.8.8.8
5. 再起動
nameserverの変更を反映させるため再起動して確かめる
wslもシャットダウン
wsl --shutdown
wsl -s Ubuntu
6. wsl.confの編集
/etc/wsl.conf
[network]
generateResolvConf = false
原因の推測
おそらくsshの設定ファイルの誤字が原因なのではないかと考察
.ssh/configを下記のようにしていたことが原因かも?
ユーザー部分に自分のGithubユーザー名を指定していた誤字が原因でpingは通っているけど接続ができないみたいになったのかも
今は正常に動作するようになってしまったから、今後同じエラーが起きたら1つ1つ確認しながら原因を調査したい
Host github github.com
# ~
User 自分のGithubのユーザー名
# ~
参考
最後に
間違っていることなどあればコメントに書いていただけると幸いです。
よろしくお願いいたします。
Discussion