基本情報技術者 2018年 秋期 午後 問04
ネットワークの障害分析と対策に関する次の記述を読んで、設問に答えよ。
G社は、ソフトウェア開発会社である。G社のネットワーク構成を図1に示す。

(1) 図1中の各セグメントには、図に記された機器を含む複数の機器が配置されており、各機器はセグメントごとに用意されたスイッチにLANケーブルで接続されている。
(2) 社員は、事務作業を事務セグメント内のPCを使用して行い、ソフトウェア開発作業を開発プロジェクトごとに設けられた開発セグメント内のPCを使用して行う。現在、開発セグメントは、開発セグメント1から開発セグメント10まである。
(3) 事務セグメント内のPCは、リモートデスクトップ(手元のPCをクライアントとして、他のPCをGUIで遠隔操作する技術であり、操作される側がサーバになる)のクライアント機能(以下、リモートデスクトップ機能という)又はSSHを用いて、開発セグメント内のPCを遠隔操作できる。
(4) 開発セグメント内のPCは、事務セグメント内のファイルサーバにアクセスできる。
(5) 事務セグメント内のPCからインターネット上に公開されたWebサイトを閲覧する際には、DMZセグメント内のプロキシサーバを経由する。
(6) ルータBは、内蔵のパケットフィルタ型のファイアウォール機能によってセグメント間の通信の可否を制御しており、上記(3)〜(5)に必要な通信だけを許可している。ルータBのファイアウォール機能は、送信元ネットワークから、宛先ネットワークの指定したポート番号への通信の可否を制御するものであって、許可した通信の応答パケットの通過も許可する。
〔障害の発生〕
ある日、“事務セグメント内のPC B-1から、リモートデスクトップ機能を用いて、開発セグメント1内のPC1-1を遠隔操作しようとしたが、接続できなかった”と報告があったので、障害箇所を特定するために原因の切分けを行った。
初めに、事務セグメント内のPC B-2から、PC1-1にリモートデスクトップ機能を用いて接続を試みたが、失敗した。
次に、PC B-1からSSHを用いてログインした開発セグメント1内のPC1-2でpingコマンドを実行し、PC1-1から応答が返ってくることを確認した。
これらのことから、障害の原因としてaやbの不具合が考えられたので、これらに不具合があるかどうかを調査して、原因を特定した。
〔セグメントの追加〕
新しい開発プロジェクトの立ち上げに伴い、開発セグメント11をネットワークに追加した。開発セグメント11は、開発セグメント1~10と同様にスイッチ11でルータBと接続する。ルータBのファイアウォールに追加した設定を表1に示す。ところが、表1の設定には誤りがあり、開発セグメント11に接続されたPCに関して、cことが分かった。
事務セグメントと開発セグメント11のネットワークアドレスは、表2のとおりである。

〔障害発生の予防〕
現在のネットワーク構成では、社内のセグメント間の全ての通信がルータBを経由するので、ルータBの過負荷によって社内ネットワークに障害が発生することが懸念される。そこで、ルータCを増設することによって負荷を分散させることとし、増設後の構成として構成案1と構成案2の二つを検討した。
構成案1及び構成案2における、ルータとスイッチの接続形態を図2に示す。
構成案1では、セグメントごとにルータBかルータCのどちらかのルータを使用するように設定することによって、負荷を分散させる。このとき、ルータの冗長化技術を用いて、一方のルータに障害が発生したときは、もう一方のルータが使用されるように構成する。
構成案2では、ルータBとルータCの役割を分けることによって、負荷を分散させる。ルータCに、事務セグメントと開発セグメントの間の通信を中継する役割をもたせる。
G社ではdことやeことを重視して、構成案1を採用することにした。
設問1:
問題文を見る 本文中のに入れる適切な答えを、解答群の中から選べ。
a, bに関する解答群
ア:PC1-1のLANポート
イ:PC1-1のソフトウェア
ウ:スイッチ1
エ:スイッチB
オ:設定を含むルータBのソフトウェア
カ:ルータBのLANポート
cに関する解答群
ア:事務セグメント内のPCからSSHを用いて当該PCを遠隔操作できない
イ:事務セグメント内のPCからリモートデスクトップ機能を用いて当該PCを遠隔操作できない
ウ:当該PCから事務セグメント内のファイルサーバにアクセスできない
d, eに関する解答群
ア:可用性を高められる
イ:機密性を高められる
ウ:障害発生時に原因を特定しやすい
エ:セグメント間で通信する際に経由する機器が少なくなる
オ:ルータB, Cとスイッチ間をつなぐLANケーブルの本数が少なくて済む
カ:ルータBとルータCの負荷に大きな差が生じないように調整できる
模範解答
a:イ、b:オ、c:ウ、d:ア、e:カ(a,bは順不同、d,eは順不同)
解説
解答の導き方
この問題では、障害の切分け、ファイアウォールの設定方向、ルータを増設する構成の特徴を順に考えます。セグメント(ネットワークを分けたまとまり)同士の通信は、ルータ(異なるネットワーク間の通信を中継する機器)を通ります。スイッチ(同じセグメント内の機器をつなぐ機器)は、同じセグメント内の通信を中継します。
a、b:リモートデスクトップ接続の障害原因
最初に、PC B-1からPC1-1へのリモートデスクトップ接続が失敗しています。さらに、PC B-2から試しても失敗しています。そのため、PC B-1だけに原因があるとは考えにくくなります。
次に、PC B-1からSSH(Secure Shell:通信を暗号化して遠隔操作する方式)でPC1-2にログインし、そこからPC1-1へping(相手の機器に応答を求め、ネットワーク上で届くかを確かめるコマンド)を実行すると、応答が返ってきています。これは、PC1-1がネットワーク上で応答できることを示します。PC1-1のLANポートやスイッチ1の接続に問題がある可能性は低くなります。
ただし、このpingはPC1-2からPC1-1への確認です。リモートデスクトップを動かすPC1-1のソフトウェアが正常かどうかまでは分かりません。また、事務セグメントから開発セグメントへの通信ではルータBを通りますが、リモートデスクトップに使うポート番号(通信先のサービスを識別する番号)の通信が、ルータBのファイアウォールで許可されているかも別に確認する必要があります。
したがって、原因として考えられるのは、PC1-1のソフトウェアと、設定を含むルータBのソフトウェアです。これがaとbに入ります。
c:開発セグメント11からファイルサーバへの通信
ファイアウォール(通信を許可するか制限する仕組み)の設定は、送信元ネットワークから宛先ネットワークへの通信を許可する形で読みます。
表1のファイルサービスの設定は、送信元が「10.0.0.0/16」、宛先が「10.1.11.0/24」です。表2によると、前者は事務セグメント、後者は開発セグメント11です。つまり、この設定は「事務セグメントから開発セグメント11へのファイルサービスの通信」を許可しています。
しかし、本文で必要とされているのは、開発セグメント内のPCから事務セグメント内のファイルサーバへのアクセスです。必要な通信方向は、開発セグメント11から事務セグメントです。表1の設定とは逆方向なので、新たに始めるファイルアクセスは許可されません。
許可された通信への応答パケットは通過できますが、それは、許可された方向で始まった通信への返事です。逆方向から新しく始める通信まで許可するわけではありません。したがって、開発セグメント11のPCは事務セグメント内のファイルサーバにアクセスできず、cは「ウ」です。
d、e:ルータを増設する構成の選択
構成案1では、各開発セグメントがルータBとルータCのどちらを使うかを決めて負荷を分散します。また、問題文には、一方のルータに障害が発生した場合、もう一方のルータを使うとあります。片方に障害が起きても通信を続けやすくなるため、重視する点の一つは「可用性を高められる」ことです。可用性とは、必要なときにシステムを利用できる度合いです。
さらに、開発セグメントごとに利用するルータを割り当てられるので、ルータBとルータCの負荷に大きな差が出ていれば、セグメントの割当てを調整できます。そのため、もう一つ重視する点は「ルータB, Cの負荷に大きな差が生じないように調整できる」ことです。
誤りやすいポイント
- pingの応答があることだけで、リモートデスクトップも正常だとは判断できません。pingで確認しているのはネットワーク上の応答であり、リモートデスクトップのソフトウェアや、その通信に使うポート番号の許可設定は別の確認事項です。
- ファイアウォールの設定では、送信元と宛先の順序を逆に読まないようにします。開発セグメントからファイルサーバへアクセスするには、開発セグメントが送信元、事務セグメントが宛先です。
- 通信への応答が許可されることと、その逆方向から新しく通信を始められることは別です。
- 構成案1の負荷分散は、ルータBとルータCの負荷を自動で同じにするという意味ではありません。どのセグメントにどちらのルータを使わせるかを調整できる、ということです。
FAQ
Q: SSHでPC1-2に接続できるなら、リモートデスクトップも使えるのではありませんか?
A: いいえ。SSHとリモートデスクトップは別の通信方式です。SSHが許可されていても、リモートデスクトップ用の通信が許可されているとは限りません。また、接続先PCのリモートデスクトップ機能に問題がある可能性もあります。
A: いいえ。SSHとリモートデスクトップは別の通信方式です。SSHが許可されていても、リモートデスクトップ用の通信が許可されているとは限りません。また、接続先PCのリモートデスクトップ機能に問題がある可能性もあります。
Q: 許可された通信の応答パケットが通るのに、なぜ開発セグメントからファイルサーバへアクセスできないのですか?
A: 応答として通るのは、許可された方向で開始された通信への返事です。開発セグメントから新たにファイルサーバへの接続を始めるには、その方向の通信を許可する設定が必要です。
A: 応答として通るのは、許可された方向で開始された通信への返事です。開発セグメントから新たにファイルサーバへの接続を始めるには、その方向の通信を許可する設定が必要です。
Q: 可用性と負荷分散は、どう違いますか?
A: 可用性は、障害が起きても利用を続けやすくすることです。負荷分散は、複数の機器に処理を分け、特定の機器に負荷が集中しないようにすることです。
A: 可用性は、障害が起きても利用を続けやすくすることです。負荷分散は、複数の機器に処理を分け、特定の機器に負荷が集中しないようにすることです。
関連キーワード: ファイアウォール、ポート番号、SSH、リモートデスクトップ、冗長化、負荷分散



