復習:デバッグ
Coddyの「ターミナルで学ぶネットワーク」コースのレッスン 47/47。
この方法では、順番に確認することで、一つずつ可能性を排除していきます。
名前は解決されるか? されないなら、そもそも何もダイヤルされていません。
そのマシンは存在するか? Ping を使います。ただし、沈黙しているからといって、ほとんど何も証明できないことを覚えておいてください。
ポートは開いているか? nc -z。接続拒否はすぐに返り、パケット破棄はハングします。
サービスは応答するか? curl を使い、終了コードを読み取ります。0 は通信できた、7 は拒否された、28 はタイムアウトした、35 は TLS がないことを示します。
何と返答したか? ステータスコードを確認します。2xx は成功、3xx は別の場所へ移動、4xx はリクエストを修正、5xx は相手側の障害です。
そして、リクエスト自体に疑いがあるときは、推測をやめましょう。途中にリスナーを置き、実際に送信された内容を正確に読み取ります。
チャレンジ
自分で起動するサーバーに対して、最後にもう一度、完全な手順を実行します。
servedを含むindex.htmlを作成し、ポート 9134 で配信するgrep localhost /etc/hostsが何かを見つけた場合はname: okを出力するnc -zが 9134 番ポートが開いていることを確認した場合はport: okを出力する/index.htmlへのリクエストのステータスコードとstatus:を出力するbody:とページの内容を出力する
期待される出力:
name: ok
port: ok
status: 200
body: served自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ターミナルで学ぶネットワークのすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド