まず考え方を理解し、次のアクティビティで確認しましょう。
障害を見つけるための手法
当てずっぽうではなく問題を絞り込んでいけるような、障害を見つけるための再現可能な方法を学びます。
できるようになること
- ランダムに設定を変えるのではなく、決まった手順に従う
- レイヤースタックを使って、テストごとに探索範囲を半分にする
- 一度に1つだけ変更し、次に進む前に確認する
この前に: ホスト、スイッチ、ルーターがそれぞれ何をするか知っている必要があります - 「ホスト、スイッチ、ルーター」を参照。それ以外は不要です。このレッスンは意図的に早い段階に置かれています。
重要な理由: このパスのほぼすべてのラボは、修正しなければならない壊れたネットワークです。手法がなければ、何かがうまくいくまで色々変え続けるだけで、何が原因だったのか決して分かりません。手法があれば、同じ障害をはるかに短い時間で見つけられ、それが何であったかを言えるようになります。
ネットワークをすばやく直せる人とそうでない人の違いは、知識量だけで決まることはほとんどありません。手順に沿って調べるか、思いつきで試すかの違いです。手順があれば、「インターネットが使えない」という曖昧な訴えを、具体的な設定不良へと絞り込めます。
調査の手順
- 問題を特定する: 正確には何が失敗し、何は動いているか?
- 症状から可能性を絞り、考えられる原因について仮説を立てる。
- 仮説を証明または否定できる1つのコマンドで検証する。
- 1つだけ修正する。
- 関連する別の動作ではなく、元の症状が解消したことを確認する。
- 次の担当者が最初から調べ直さずに済むよう、原因を記録する。
下位レイヤーから順に調べる
下位レイヤーの障害は上位のあらゆる場所に紛らわしい症状を生むため、下から上へテストします。インターフェースが管理上ダウンしているのに、ルーティングプロトコルを調べても意味がありません。
| 確認すること | コマンド | 失敗した場合 |
|---|---|---|
| インターフェースはアップしているか? | ip -brief link show | ここで止めます。上位の確認はまだ意味がありません。 |
| 正しいアドレスとマスクが設定されているか? | ip -brief address show | マスクが誤っていると、ホストはローカル範囲を誤認します。 |
| 自分のサブネット内に到達できるか? | ping <neighbour on the same subnet> | 障害はローカルにあります - アドレス、マスク、またはスイッチです。 |
| ゲートウェイに到達できるか? | ping <gateway> | ゲートウェイアドレスが誤っているか、ルーターがそのサブネットにいません。 |
| ルーターは経路を知っているか? | show ip route | 経路がないか誤っています。これらのラボでは多くの障害がここにあります。 |
問題の範囲を半分にする
は上のファイルを何も開けないと報告しました。は最初にサーバーへログインする代わりに、サーバーと同じサブネット上のホストからpingします。成功すればサーバー側は正常で、障害は2つのサブネット間の経路にあります。1つのコマンドでネットワークの半分を候補から外せました。失敗すればサーバーまたはそのローカルセグメントに問題があり、拠点間ルーティングは関係ありません。
用語
- 症状
- ユーザーが観察したこと。障害そのものではありません。「メールが遅い」と「経路がない」は異なる記述です。
- 考えられる原因の仮説
- 具体的で検証可能な推測。「DNSに何か問題がある」では不十分ですが、「クライアントのリゾルバーアドレスが誤っている」なら仮説です。
- 影響範囲
- 誰が影響を受けるか。1台のホスト、1つのサブネット、全員のどれかによって、疑うレイヤーが変わります。
重要なポイント
- 動かないものを調べる前に、まだ動いているものを確認します。その境界が障害の場所を示します。
- 物理リンクから上へ順にテストします。下位レイヤーの障害は上位のすべてを壊れているように見せます。
- 設定に触れる前に、症状を具体的で検証可能な仮説に変えます。
- 1つだけ変更し、元の症状が解消したか確認します。
- 影響範囲はレイヤーを絞る手がかりです。1台のホスト、1つのサブネット、全員では、障害の種類が異なります。
続ける準備はできましたか?
無料アカウントを作成すると、進捗を保存して理解度チェックを受けられます。
