ネットワーク基礎4 択難易度 応用

状況

昨日、example.com のゾーンを別の DNS サービスへ移した。今朝から監視サーバーの curl https://api.example.com/health が「Could not resolve host: api.example.com」で失敗している。

原因を調べる順番として、最も適切なものは?

  1. Acurl -v で HTTP の応答とヘッダーを見る
  2. Bnc -vz api.example.com 443 でポートに届くか確かめる
  3. Cdig api.example.com で名前が引けるか、どの DNS が答えるか
  4. DAPI サーバーのアプリのログでエラーを探す

正答

  1. C → B → A → D
  2. D → A → B → C
  3. A → B → C → D
  4. B → C → A → D

解説

「Could not resolve host」は名前解決の段階で失敗したという意味で、TCP の接続も HTTP の要求も始まっていない。しかも直前に DNS のゾーンを移しているので、最初に dig で名前が引けるか、どのサーバーが答えているかを見る(C。移行先にレコードを移し忘れた、が典型)。名前が引けたら nc -vz で 443 番に届くか(B)、届いたら curl -v で TLS と HTTP の応答(A)、と下の層から順に進める。要求が届いていない以上、API サーバーのログ(D)には何も残っておらず、最初に見ても手がかりが無い。上から全部見る順番は遠回り。

参考: bind9.readthedocs.io

troubleshootingdnsdignccurl

この問題を含む ネットワーク基礎 のテストを制限時間つきで解く

ネットワーク基礎クイズへ