平成17年度テクニカルエンジニア(ネットワーク)午後Ⅱ 問Ⅱ設問2解答と解説

目次

解答

(1)20時以降のアプリケーションサーバが停止している時間帯

(2)1 (c)
2 (d)
3 (e)
4 (f)
5 (a)
6 (b)
(3)DNSの動作に依存せずに応答を調べることができるから(26字)
(4)最大値 144
最小値 24
(5)1 L3SW
2 FW
3 L2SW3

解説

(1)
まずは問題文をよく見て、なぜ特定の時間帯を選んでping監視を行う必要性があるのか考えてみましょう。P14に次のように記載されています。

まず、監視対象のサーバとしてアプリケーションサーバのホスト名を指定し、ping監視で応答を確認した。ping監視の際、監視サーバが送受信したパケットを図3に示す。

今回問題の対象となっているのはアプリケーションサーバです。ping応答が正常に返ってきているときの動作は図3で確認済みであることが分かります。続いて以下のように記載されています。

さらに、ping監視の応答が無い場合のエラーメッセージを確認するため、業務システムの1日の運用における特定の時間帯を選んで、ping監視を行った。

これを読んで分かるように、特定の時間帯を選ぶ目的はping監視の応答が無い場合のエラーメッセージの確認です。よってアプリケーションサーバが起動していない時間帯にpingを実施すればよいということになります。アプリケーションサーバは業務システムのサーバです。業務システムが停止している時間帯は問題文のp13に記載されています。

業務システムは、営業日の8時から20時までサービスを提供している。サービス終了後、バックアップデータの取得を行い、バックアップが終了した時点で各サーバの稼動を停止し、翌営業日の7時半に起動している。

この時間帯を30字以内でまとめると

20時以降のアプリケーションサーバが停止している時間帯

でよいでしょう。

(2)
図3は監視サーバからアプリケーションサーバに対してpingコマンドを実行した場合のパケットの流れです。pingコマンドは引数としてIPアドレスまたはホスト名を指定することができます。引数としてホスト名を指定した場合は、DNSサーバに対してホスト名に対するIPアドレスの問い合わせ(これを名前解決といいます)を行い、該当するIPアドレスに対してエコー要求を送るという動作になります。DNSで名前解決を実施してから該当するIPアドレスをめがけて通信を開始するという流れは、Web参照などICMP以外の他のアプリケーションと同様です。

ARPはIPアドレスを元に通信相手のMACアドレスを知るためのプロトコルです。同一セグメント内の通信はEthernetにて行われます。Ethernetは相手先MACアドレスを指定してフレームを送信するため、データ送信のためにはまず通信相手先のMACアドレスを知る必要があります。この時、IPアドレスからMACアドレスを知るために使用するプロトコルがARPです。

ARPの一連の流れを図示すると以下のようになります。

TENW-H17-PM2-12.jpg

パケットの流れは上図の通りの順番になります。
サーバはパケットを送る際、まずはデフォルトゲートウェイに対してイーサネットフレームを転送します。そのため、デフォルトゲートウェイのMACアドレスを知らなくては通信を開始することができません。よって最初にARPによって、デフォルトゲートウェイのIPアドレスからMACアドレスの解決が実施されます。

上の図では省略していますが、L3SW~FW間、FW~DNSサーバ間もEthernetで接続されるため、同様にARPによるMACアドレスの取得が行われます。なお、MACアドレスは通常キャッシングされるため、2回目以降はARPによる名前解決を実施せずに効率よく転送することが可能です。

こういったパケット転送の流れはネットワークの基本なので、確実に理解しておきましょう。

(3)
ICMPやtelnetは引数としてホスト名とIPアドレスのどちらを指定することも可能です。ところがK君は自動監視の設定として、ホスト名ではなくIPアドレスを用いることにしました。その理由は何でしょうか?

ホスト名を指定した場合のpingの動作は(2)の解説の通り、通信の都度DNSサーバへの名前解決が必要になってしまいます。通信するためにはまずDNSサーバに問い合わせて通信相手先のIPアドレスを知らなくてはならないからです。これはtelnetや他のアプリケーションでも全く同じ流れになります。

監視先としてホスト名を指定した場合に問題となるのは、DNSサーバが故障した時です。DNSサーバで名前解決ができなければ、表の監視対象一覧への監視は全てNGになってしまいます。これは運用上望ましくありません。

一方監視先としてIPアドレスを指定すればこの問題はありません。DNSサーバが故障したとしても、他のサーバが正常に稼動していればpingは正常に応答が返ってくるはずです。

よって監視にホスト名ではなくIPアドレスを用いた理由をまとめると

DNSの動作に依存せずに応答を調べることができるから

となります。

(4)
Ping監視で障害を検知するための条件は本文p15に記載されています。

監視対象のサーバに対してping監視を行い、応答監視タイマの初期値である4秒以内に応答を受信したら正常応答と判断し、受信後2分で再びping監視を行う。4秒以内に応答が無ければ、直ちに二度目のping監視を行うが、応答監視タイマを8秒にして応答を待つ。応答があれば正常応答とするが、応答が無い場合は、応答監視タイマを12秒にして三度目のping監視を行う。ここで応答があれば正常応答と判断するが、応答が無い場合は、エラーメッセージを表示し、表示後2分で再びping監視を行う。

文章だと分かりにくいですが、簡単にまとめると以下のようになります。

  • pingが連続3回応答無しの場合に障害として検知する
  • 通常時のpingは2分間隔で実施(タイムアウト4秒)
  • 通常時のpingがNGの場合に二度目のpingを実施(タイムアウト8秒)
  • 二度目のpingがNGの場合に三度目のpingを実施(タイムアウト12秒)

S社の監視サーバはpingが3回連続でNGとなった場合に初めて障害として検知します。これは、一時的なパケットロスや遅延のゆらぎによるタイムアウトを障害として検知してしまうのを防ぐためです。ICMP自体はパケットの到達を保障するプロトコルではないため、途中でパケットロス等が発生した場合も再送処理等は行われずタイムアウトとなります。そこでサーバ側でpingを連続して実施することで、一時的なロスなのか継続的な障害かを判断することができます。

障害検知に要する時間は最大の場合、最小の場合を図にすると以下のようになります。

TENW-H17-PM2-13.jpg

TENW-H17-PM2-14.jpg

単位は秒で回答する必要があるので

最大値:144秒
最小値:24秒

となります。

(5)
監視サーバからメールサーバに対するサービス監視を行う際も、監視トラフィックはネットワーク経由でやり取りされることになります。ですからメールサーバから応答がない場合に、メールサーバの障害を疑うのはもちろんですが、経由するネットワークにおいても障害がないかを頭に入れておくことが必要です。障害きり分けを行にはまずはネットワーク経路を理解する必要があります。

監視サーバからメールサーバへの監視は、空欄【イ】で回答したとおり、telnetコマンドを使用しています。また下線2に記載されている通り、監視の対象はホスト名ではなくIPアドレスを用いているため、監視の通信経路にDNSを考慮する必要はありません。よってトラフィックの経路を図示すると以下の通りになります。

TENW-H17-PM2-15.jpg

図を見て分かるとおり、監視のトラフィックが経由するネットワーク機器は、

監視サーバ → L3SW → FW → L2SW3 → メールサーバ 

となります。よってメールサーバ以外に確認すべき機器は「L3SW」、「FW」、「L2SW3」の3つになります。

【参考URL】

written by Gene


解説はいかがでしたか?Geneが作った最新版H17-H19年度テクニカルエンジニア(NW)午後問題解説のご購入は、こちらをクリック!