curlコマンドの--resolveオプションでSNIの動作確認
2019-08-05

httpなサイトへのアクセスはHostヘッダーで十分でしたが, SNIなサイトだとこれだとうまくいきません。(TLSハンドシェイクの時点でホスト名の情報が必要になるため)


$ curl -H 'Host: youyo.io' http://xxx.xxx.xxx.xxx/

curlの --resolve オプションを使ってホスト名を解決してあげるとうまいこといきます。


$ curl --help | grep 'resolve'
     --resolve HOST:PORT:ADDRESS  Force resolve of HOST:PORT to ADDRESS


$ curl --resolve 'youyo.io:443:xxx.xxx.xxx.xxx' https://youyo.io/

hostsファイルの編集も不要で便利です。