WSL を使用して Windows に Linux をインストールしている
OS は Ubuntu
シェルスクリプトを書く時に重宝している
Windows のバッチファイルやコマンドファイルと比較してシェルスクリプトは強力だ
今回は curl コマンドを使いAPIから必要なデータを取得する処理を作っていた
cURL が応答なくレスポンスが返らない
Windowsのコマンドプロンプトからたたくとレスポンスが返るためコマンドが原因ではない
cURL トラブルシューティング(-vオプションつけて)していて
宛先がIPv6だったため、すわIPv4オプションを付けるも
Tryingで止まってしまう
Git Bashでもレスポンス成功するためcurlコマンドではなくWSL上で稼働しているUbuntuに着目した
WSLが使っているWinSocketが原因
管理者権限 で以下のコマンドを実行
WinSocket、IPインターフェース、プロキシーキャッシュ、DNSキャッシュをクリアし、OS再起動で解消した
netsh winsock reset
netsh int ip reset all
netsh winhttp reset proxy
ipconfig /flushdns