令和4年度 春期 ネットワークスペシャリスト試験 午後II 問2 サーバ仮想化とコンテナ導入によるWebAP・専用APの移行と冗長設計

学習ガイド

総合商社における多数の業務アプリケーションサーバを、仮想化技術やコンテナ技術を用いて統合・刷新する題材を取り上げます。仮想サーバでのVRRP冗長化やコンテナ環境におけるポートフォワード通信、リバースプロキシのヘルスチェックによる障害切り分け、安全な移行計画の策定が論点です。本文の通信シーケンスとIPアドレス割当表を照合して宛先変換の挙動を特定し、監視プロトコルごとの成否判定から障害箇所を論理的に導き出します。

この記事で押さえる論点

  • サーバ仮想化におけるVRRPを用いた冗長化とホスト分散配置の重要性を説明できる
  • コンテナ環境で仮想ルータと共用リバースプロキシが通信を中継・識別する仕組みを説明できる
  • 階層的なヘルスチェックの結果から障害箇所を論理的に切り分ける手法を説明できる
  • DNSの切替えやTTL短縮を利用したシステム移行手順と停止前の確認項目を述べられる

問題本文

問2 仮想化技術の導入に関する次の記述を読んで,設問1〜5に答えよ。

U社は社員3,000人の総合商社である。U社では多くの商材を取り扱っており,商材ごとに様々なアプリケーションシステム(以下,APという)を構築している。APは個別の物理サーバ(以下,APサーバという)上で動作している。U社の事業拡大に伴ってAPの数が増えており,主管部署であるシステム開発部はサーバの台数を減らすなど運用改善をしたいと考えていた。そこで,システム開発部では,仮想化技術を用いてサーバの台数を減らすことにし,Rさんを担当者として任命した。
現在のU社ネットワーク構成を図1に示す。

図1 現在のU社ネットワーク構成(抜粋)
図の説明テキスト

インターネットに接続されたU社のネットワーク構成図。インターネットからルータ、FWを経由して内部にDMZ、PCセグメント、サーバセグメントが構成されている。DMZにはコンテンツDNSサーバ、キャッシュDNSサーバ、プロキシサーバが配置され、PCセグメントにはL3SWとL2SWを介してPCが接続、サーバセグメントには共用DBサーバ、監視サーバ、複数のAPサーバが配置されている。

現在のU社ネットワーク構成の概要を次に示す。

  • DMZ,サーバセグメント,PCセグメントにはプライベートIPアドレスを付与している。
  • キャッシュDNSサーバは,社員が利用するPCやサーバからの問合せを受け,ほかのDNSサーバへ問い合わせた結果,得られた情報を応答する。
  • コンテンツDNSサーバは,PCやサーバのホスト名などを管理し,PCやサーバなどに関する情報を応答する。
  • プロキシサーバは,PCからインターネット向けの HTTP 通信及び HTTPS(HTTP over TLS)通信をそれぞれ中継する。
  • APは,共用DBサーバにデータを保管している。共用DBサーバは,事業拡大に必要な容量と性能を確保している。
  • APごとに2台のAPサーバで冗長構成としている。
  • APサーバ上で動作する多くのAPは,HTTP通信を利用してPCからアクセスされるAP(以下,WebAPという)であるが,TCP/IPを使った独自のプロトコルを利用してPCからアクセスされるAP(以下,専用APという)もある。
  • 監視サーバは,DMZやサーバセグメントにあるサーバの監視を行っている。

〔サーバ仮想化技術を利用した AP の構成〕

Rさんは,WebAPと専用APの2種類のAPについて,サーバ仮想化技術の利用を検討した。サーバ仮想化技術では,物理サーバ上で複数の仮想的なサーバを動作させることができる。
Rさんが考えたサーバ仮想化技術を利用したAPの構成を図2に示す。

図2 サーバ仮想化技術を利用したAPの構成
図の説明テキスト

サーバセグメント内のネットワーク構成図。共用DBサーバがL2SWに接続され、L2SWの下にホストサーバaとホストサーバbが接続されている。各ホストサーバ内にはNIC、仮想SW、仮想NICがあり、それぞれAP仮想サーバ(AP0a、AP1aなど)に繋がっている。

ホストサーバでは,サーバ仮想化を実現するためのソフトウェアであるアが動作する。ホストサーバは仮想SWをもち,NICを経由してL2SWと接続する。

AP仮想サーバは,ホストサーバ上で動作する仮想サーバとして構成する。AP仮想サーバの仮想NICは仮想SWと接続する。

一つのAPは2台のAP仮想サーバで構成する。2台のAP仮想サーバでは,冗長構成をとるためにVRRPバージョン3を動作させる。サーバセグメントでは複数のAPが動作するので,VRRPの識別子としてAPごとに異なるイを割り当てる。①可用性を確保するために,VRRPを構成する2台のAP仮想サーバは,異なるホストサーバに収容するように設計する。

VRRPの規格では,最大ウ組の仮想ルータを構成することができる。また,②マスタとして動作しているAP仮想サーバが停止すると,バックアップとして動作しているAP仮想サーバがマスタに切り替わる。

一例として,AP仮想サーバ(AP0a)とAP仮想サーバ(AP0b)とで構成される,AP名がAP0のIPアドレス割当表を表1に示す。

表1 AP0のIPアドレス割当表
図の説明テキスト

表1 AP0のIPアドレス割当表

割当対象 IP アドレス
AP0a と AP0b の VRRP 仮想ルータ 192.168.0.16/22
AP0a の仮想 NIC 192.168.0.17/22
AP0b の仮想 NIC 192.168.0.18/22

APごとに,AP仮想サーバの仮想NICで利用する二つのIPアドレスとVRRP仮想ルータで利用する仮想IPアドレスの計三つのIPアドレスの割当てと,一つのFQDNの割当てを行う。APごとに,コンテンツDNSサーバにリソースレコードの一つであるエレコードとしてVRRPで利用する仮想IPアドレスを登録し,FQDNとIPアドレスの紐付けを定義する。PCにインストールされているWebブラウザ及び専用クライアントソフトウェアは,DNSのエレコードを参照して接続するAPのIPアドレスを決定する。

〔コンテナ仮想化技術を利用した WebAP の構成〕

次に,Rさんはコンテナ仮想化技術の利用を検討した。WebAPと専用APに分け,まずは WebAP について利用を検討した。コンテナ仮想化技術では,ある OS 上で仮想的に分離された複数のアプリケーションプログラム実行環境を用意し,複数の AP を動作させることができる。

Rさんが考えた,コンテナ仮想化技術を利用した WebAP(以下,WebAP コンテナという)の構成を図 3 に示す。

図3 WebAP コンテナの構成
図の説明テキスト

サーバセグメント内のWebAPコンテナの構成図。共用リバースプロキシと共用DBサーバがL2SWに接続。その下にコンテナサーバaとコンテナサーバbが接続され、各コンテナサーバ内には仮想ルータ、仮想ブリッジ、仮想NICがあり、それぞれWebAPコンテナに繋がっている。

コンテナサーバでは,コンテナ仮想化技術を実現するためのソフトウェアが動作する。コンテナサーバは仮想ブリッジ,仮想ルータをもち,NIC を経由して L2SW と接続する。WebAP コンテナの仮想 NIC は仮想ブリッジと接続する。

WebAP コンテナは,仮想ルータの上で動作する NAPT 機能と TCP や UDP のポートフォワード機能を利用して,PC や共用 DB サーバなどといった外部のホストと通信する。コンテナサーバ内の仮想ブリッジセグメントには,新たに IP アドレスを付与する必要があるので,プライベート IP アドレスの未使用空間から割り当てる。また, ③複数ある全ての仮想ブリッジセグメントには,同じ IPアドレスを割り当てる。

WebAPコンテナには, APごとに一つのFQDNを割り当て, コンテンツDNSサーバに登録する。

WebAPコンテナでは, APの可用性を確保するために, 共用リバースプロキシを新たに構築して利用する。共用リバースプロキシは負荷分散機能をもつ HTTPリバースプロキシとして動作し, クライアントからの HTTPリクエストを受け, ④ヘッダフィールド情報から WebAPを識別し,WebAPが動作する WebAPコンテナへ HTTPリクエストを振り分ける。振り分け先である WebAPコンテナは複数指定することができる。振り分け先を増やすことによって, WebAPの処理能力を向上させることができ, また, 個々の WebAPコンテナの処理量を減らして負荷を軽減できる。

共用リバースプロキシ, コンテナサーバには, サーバセグメントの未使用のプライベート IPアドレスを割り当てる。共用リバースプロキシ, コンテナサーバの IPアドレス割当表を表2に, コンテナサーバ a で動作する仮想ブリッジセグメント a の IPアドレス割当表を表3に示す。

表2 共用リバースプロキシ,コンテナサーバのIPアドレス割当表(抜粋)
図の説明テキスト

表2

割当対象 IPアドレス
共用リバースプロキシ 192.168.0.98/22
コンテナサーバa 192.168.0.112/22
コンテナサーバb 192.168.0.113/22
表3 仮想ブリッジセグメントaのIPアドレス割当表(抜粋)
図の説明テキスト

表3

割当対象 IPアドレス
仮想ルータ 172.16.0.1/24
WebAPコンテナ (AP0a) 172.16.0.16/24
WebAPコンテナ (AP1a) 172.16.0.17/24

共用リバースプロキシは, 振り分け先である WebAPコンテナが正常に稼働しているかどうかを確認するためにヘルスチェックを行う。ヘルスチェックの結果, 正常な WebAPコンテナは振り分け先として利用され, 異常がある WebAPコンテナは振り分け先から外される。振り分けルールの例を表4に示す。

表4 振り分けルールの例(抜粋)
図の説明テキスト

表4 振り分けルールの例
AP0 (ap0.u-sha.com) は AP0a (192.168.0.112:8000) と AP0b (192.168.0.113:8000) に振り分け。AP1 (ap1.u-sha.com) は AP1a (192.168.0.112:8001) と AP1b (192.168.0.113:8001) に振り分け。

PCが,表4中のAP0と行う通信の例を次に示す。

  1. PCのWebブラウザは,http://ap0.u-sha.com/へのアクセスを開始する。
  2. PCはDNSを参照して,ap0.u-sha.comの接続先IPアドレスとしてオを取得する。
  3. PCは宛先IPアドレスがオ,宛先ポート番号が80番宛てへ通信を開始する。
  4. PCからのリクエストを受けた共用リバースプロキシは振り分けルールに従って振り分け先を決定する。
  5. 共用リバースプロキシは宛先IPアドレスが192.168.0.112, 宛先ポート番号がカ番宛てへ通信を開始する。
  6. 仮想ルータは宛先IPアドレスが192.168.0.112, 宛先ポート番号がカ番宛てへの通信について,⑤ポートフォワードの処理によって宛先IPアドレスと宛先ポート番号を変換する。
  7. WebAPコンテナAP0aはコンテンツ要求を受け付け,対応するコンテンツを応答する。
  8. 共用リバースプロキシはコンテンツ応答を受け,PCに対応するコンテンツを応答する。
  9. PCはコンテンツ応答を受ける。

WebAPコンテナであるAP0aとAP1aに対するPCからのHTTP接続要求パケットの例を図4に示す。

図4 AP0a と AP1a に対する PC からの HTTP 接続要求パケットの例
図の説明テキスト

PCから共用リバースプロキシ、仮想ルータを経てWebAPコンテナへ至る通信経路上でのパケット内容の例。(i) 送信元IP:PC、宛先IP:192.168.0.98(80)。(ii) 送信元IP:192.168.0.98、宛先IP:192.168.0.112(8000/8001)。(iii) 送信元IP:192.168.0.98、宛先IP:172.16.0.16(80)/172.16.0.17(80)。

〔コンテナ仮想化技術を利用した専用APの構成〕

Rさんは,専用APは TCP/IP を使った独自のプロトコルを利用するので,HTTP通信を利用する WebAP と比較して,通信の仕方に不明な点が多いと感じた。そこで,コンテナ仮想化技術を導入した際の懸念点について上司のO課長に相談した。次は,コンテナ仮想化技術を利用した専用AP(以下,専用APコンテナという)に関する,RさんとO課長の会話である。

Rさん:専用APですが,APサーバ上で動作する専用APと同じように,専用APコンテナとして動作させることができたとしても,⑥PCや共用DBサーバなどといった外部のホストとの通信の際に,仮想ルータのネットワーク機能を使用しても専用APが正常に動作することを確認する必要があると考えています。

O課長:そうですね。専用APはAPごとに通信の仕方が違う可能性があります。APサーバと専用APコンテナの構成の違いによる影響を受けないことを確認する必要がありますね。それと,⑦同じポート番号を使用する専用APが幾つかあるので,これらの専用APに対応できる負荷分散機能をもつ製品が必要になります。

Rさん:分かりました。

Rさんは専用APで利用可能な負荷分散機能をもつ製品の調査をし,WebAPと併せて検討結果を取りまとめ,O課長に報告した。

Rさんが,サーバの台数を減らすなど運用改善のために検討したまとめを次に示す。

  • 第一に,リソースの無駄が少ないことやアプリケーションプログラムの起動に要する時間を短くできる特長を生かすために,コンテナ仮想化技術の利用を進め,順次移行する。
  • 第二に,コンテナ仮想化技術の利用が適さないAPについては,サーバ仮想化技術の利用を進め,順次移行する。
  • 第三に,移行が完了したらAPサーバは廃止する。

〔監視の検討〕

次に,Rさんが考えた,監視サーバによる図3中の機器の監視方法を表5に示す。

表5 図3中の機器の監視方法(抜粋)
図の説明テキスト

表5
項番1〜3はping監視で共用リバースプロキシやコンテナサーバを対象。項番4〜5はTCP接続監視でWebAPコンテナ(AP0a/AP0b)を対象とし、宛先は192.168.0.112:8000等。項番6〜8はURL接続監視で共用リバースプロキシや各WebAPコンテナへのHTTPリクエストを対象。

監視サーバは3種類の監視を行うことができる。ping監視は,監視サーバが監視対象の機器に対してICMPのエコー要求を送信し,一定時間以内に キ を受信するかどうかで,IPパケットの到達性があるかどうかを確認する。TCP接続監視では,監視サーバが監視対象の機器に対してSYNパケットを送信し,一定時間以内に ク パケットを受信するかどうかで,TCPで通信ができるかどうかを確認する。URL接続監視では,監視サーバが監視対象の機器に対して HTTP ケ メソッドでリソースを要求し,一定時間以内にリソースを取得できるかどうかで HTTPサーバが正常稼働しているかどうかを確認する。ping監視で WebAPコンテナの稼働状態を監視することはできない。⑧表5のように複数の監視を組み合わせることによって,監視サーバによる障害検知時に,監視対象の状態を推測することができる。

〔移行手順の検討〕

Rさんは,コンテナ仮想化技術を利用した WebAPの移行手順を検討した。

2台の APサーバで構成する AP0を,WebAPコンテナ(AP0a)と WebAPコンテナ(AP0b)へ移行することを例として,WebAPの移行途中の構成を図5に,WebAPの移行手順を表6に示す。

図5 WebAPの移行途中の構成(抜粋)
図の説明テキスト

共用リバースプロキシと共用DBサーバがL2SWに接続され、L2SWの下に既存のAPサーバが2台と、移行先となるコンテナサーバa, bが併存しているネットワーク図。

表6 WebAPの移行手順
図の説明テキスト

表6 WebAP の移行手順

項番 概要 内容
1 WebAP コンテナの構築 コンテナサーバ上に WebAP コンテナを構築する。
2 共用リバースプロキシの設定 WebAP コンテナに合わせて振り分けルールの設定を行う。
3 WebAP コンテナ監視登録 監視サーバに WebAP コンテナの監視を登録する。
4 動作確認 ⑨テスト用の PC を用いて動作確認を行う。
5 DNS 切替え DNS レコードを書き換え,AP サーバから WebAP コンテナへ切り替える。
6 AP サーバ監視削除 監視サーバから AP サーバの監視を削除する。
7 AP サーバの停止 ⑩停止して問題ないことを確認した後に AP サーバを停止する。

Rさんは表6のWebAPの移行手順をO課長に報告した。次は,WebAPの移行手順に関する,O課長とRさんの会話である。

O課長:今回の移行はAPサーバとWebAPコンテナを並行稼働させてDNSレコードの書換えによって切り替えるのだね。
Rさん:そうです。同じ動作をするので,DNSレコードの書換えが反映されるまでの並行稼働期間中,APサーバとWebAPコンテナ,どちらにアクセスが行われても問題ありません。
O課長:分かりました。並行稼働期間を短くするためにDNS切替えの事前準備は何があるかな。
Rさん:はい。⑪あらかじめ,DNSのTTLを短くしておく方が良いですね。
O課長:そうですね。移行手順に記載をお願いします。
Rさん:分かりました。
O課長:動作確認はどのようなことを行うか詳しく教えてください。
Rさん:はい。WebAPコンテナ2台で構成する場合は,⑫次の3パターンそれぞれでAPの動作確認を行います。一つ目は,全てのWebAPコンテナが正常に動作している場合,二つ目は,2台のうち1台目だけWebAPコンテナが停止している場合,最後は,2台目だけWebAPコンテナが停止している場合です。また,障害検知の結果から,正しく監視登録されたことの確認も行います。
O課長:分かりました。良さそうですね。

APを,仮想化技術を利用したコンテナサーバやホストサーバに移行することによって期待どおりにサーバの台数を減らせる目途が立ち,システム開発部では仮想化技術の導入プロジェクトを開始した。

設問と解答・解説

設問1

〔サーバ仮想化技術を利用したAPの構成〕について,(1)〜(3)に答えよ。

(1)配点 4点

本文中の ア に入れる適切な字句又は数値を答えよ。

模範解答

ハイパーバイザ

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 同義語などで解答しているが、本文の意図からわずかに外れる
  • 0点: 正解と異なる、または無回答

解説

サーバ仮想化を実現するためのソフトウェアを答える。本文の空欄アの前後には「ホストサーバでは,サーバ仮想化を実現するためのソフトウェアであるアが動作する」とある。サーバ仮想化において、物理サーバ上で複数の仮想マシンを稼働させるためのソフトウェアはハイパーバイザと呼ばれる。

高得点のポイント

  • 「ハイパーバイザ」と正確に記述すること。
(2)配点 4点

本文中の イ に入れる適切な字句又は数値を答えよ。

模範解答

VRID

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 部分的な解答
  • 0点: 正解と異なる、または無回答

解説

VRRP(Virtual Router Redundancy Protocol)において、仮想ルータを識別するための識別子を答える。本文には「VRRPの識別子としてAPごとに異なるイを割り当てる」とある。VRRPでは仮想ルータのグループを識別するためにVRID(Virtual Router ID)を使用する。

高得点のポイント

  • 「VRID」と正確に記述すること。
(3)配点 4点

本文中の ウ に入れる適切な字句又は数値を答えよ。

模範解答

255

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 意図は汲み取れるが正確ではない
  • 0点: 正解と異なる、または無回答

解説

VRRPで構成できる仮想ルータの最大組数。VRIDは8ビットのフィールドで定義されており、1〜255の範囲の値を指定できる。そのため、構成できる仮想ルータの最大組数は255となる。

高得点のポイント

  • 仮想ルータの最大数である「255」を正確に記述すること。
(4)配点 4点

本文中の エ に入れる適切な字句又は数値を答えよ。

模範解答

A

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 不要な文字が含まれているが正解を含む
  • 0点: 正解と異なる、または無回答

解説

FQDNとIPv4アドレスの紐付けを定義するDNSのリソースレコード。問題文中のIPアドレス(例:192.168.0.16)はIPv4アドレスであるため、これを登録するレコードはAレコードとなる。

高得点のポイント

  • 「A」と正確に記述すること。
(5)配点 4点

本文中の下線①について,2台のAP仮想サーバを同じホストサーバに収容した場合に起きる問題を可用性確保の観点から40字以内で述べよ。

模範解答

ホストサーバが停止した場合,AP仮想サーバが2台とも停止する。

採点基準

知識・理解度(内容)2点
  • 2点: ホストサーバの停止に伴い、両方のAP仮想サーバが停止することが正確に記述されている
  • 1点: ホストサーバの障害の影響には触れているが、AP仮想サーバ両方の停止について言及が不十分
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: 可用性確保の観点からの問題点が論理的かつ明確に伝わる構造になっている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線①「可用性を確保するために,VRRPを構成する2台のAP仮想サーバは,異なるホストサーバに収容するように設計する」。これを同じホストサーバに収容した場合の問題を問う。2台のAP仮想サーバが同じ物理的なホストサーバで稼働していると、そのホストサーバ自体に障害が発生した場合、2台とも同時に停止してしまい、冗長化の意味がなくなる。

高得点のポイント

  • ホストサーバが停止した場合の影響について触れること。 * 両方のAP仮想サーバが停止し、可用性が損なわれることを論理的に記述すること。
(6)配点 4点

本文中の下線②について,マスタが停止したとバックアップが判定する条件を50字以内で述べよ。

模範解答

バックアップが,VRRPアドバタイズメントを決められた時間内に受信しなくなる。

採点基準

知識・理解度(内容)2点
  • 2点: VRRPアドバタイズメントを受信しなくなるという条件が正確に記述されている
  • 1点: アドバタイズメントなどの通信途絶について触れているが要素が不十分
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: 決められた時間内に受信しないという判定の仕組みが論理的かつ明確に伝わる
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

VRRPにおいて、バックアップ側がマスタの停止を判定する条件を問う。マスタは定期的にVRRPアドバタイズメント(マルチキャストパケット)を送信している。バックアップはこれを監視し、一定時間(マスタダウンインターバル)受信できなくなった場合に、マスタが停止したと判定し自身がマスタに昇格する。

高得点のポイント

  • 「VRRPアドバタイズメント」の受信に言及していること。 * 決められた時間内に受信しなくなるという条件を論理的に記述すること。

設問1(3)は,正答率が低かった。VRRPは可用性確保のためによく利用される技術であり,動作原理について正確に理解してほしい。

設問2

(1)配点 4点

本文中の下線③について,複数ある全ての仮想ブリッジセグメントで同じIPアドレスを利用して問題ない理由を40字以内で述べよ。

模範解答

外部ではコンテナサーバに付与したIPアドレスが利用されることはないから

採点基準

知識・理解度(内容)2点
  • 2点: 外部ネットワークでは仮想ブリッジセグメントのIPアドレスが利用されないことが正確に記述されている
  • 1点: 外部と通信する際のIPアドレス変換に触れているが説明が不足している
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: IPアドレスが競合しない理由が論理的かつ明確に記述されている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線③について、全ての仮想ブリッジセグメントで同じプライベートIPアドレス空間を利用して問題ない理由。図3および本文より、WebAPコンテナは「仮想ルータの上で動作する NAPT 機能と TCP や UDP のポートフォワード機能を利用して」外部と通信する。コンテナサーバ外部のネットワーク(サーバセグメントなど)からは、コンテナサーバ自身のIPアドレス(192.168.0.112など)宛てに通信が行われ、仮想ブリッジセグメント内のIPアドレス(172.16.0.0/24など)は外部から直接ルーティングされない。

高得点のポイント

  • 外部からの通信において、コンテナサーバに付与したIPアドレスが利用される点に触れること。 * 仮想ブリッジセグメントのIPアドレスが外部と重複・競合しない論理構造を明示すること。
(2)配点 4点

本文中の下線④について,共用リバースプロキシはどのヘッダフィールド情報からWebAPを識別するか。15字以内で答えよ。

模範解答

ホストヘッダフィールド

採点基準

知識・理解度(内容)2点
  • 2点: 「ホストヘッダフィールド」が正確に記述されている
  • 1点: 「Hostヘッダ」など同義の表現を使用している
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: 適切な名詞の形で端的に記述されている
  • 1点: やや冗長だが意味は通じる
  • 0点: 論理が破綻している、または無回答

解説

下線④について、HTTPリバースプロキシがWebAPを識別するために用いるヘッダフィールド情報。HTTP/1.1では、同一IPアドレス上で複数の仮想ホストを識別するためにホストヘッダフィールド(Hostヘッダ)が利用される。クライアント(ブラウザ)はリクエスト時に宛先のFQDNをHostヘッダに設定して送信する。

高得点のポイント

  • HTTPリクエストにおける「ホストヘッダフィールド」を正確に指定すること。 * 文字数制限(15字以内)を満たすこと。
(3)配点 5点

本文中の オ に入れる適切なIPアドレスを答えよ。

模範解答

192.168.0.98

採点基準

正確性(内容)5点
  • 5点: 正解と完全に一致している
  • 2点: 一部のオクテットが誤っている等の軽微なミス
  • 0点: 正解と異なる、または無回答

解説

空欄オ。PCが http://ap0.u-sha.com/ にアクセスする際、DNSから取得する宛先IPアドレス。表4の振り分けルールの例を見ると、ap0.u-sha.com へのアクセスは一旦共用リバースプロキシが受け取る構成になっている。表2「共用リバースプロキシ,コンテナサーバのIPアドレス割当表」より、共用リバースプロキシのIPアドレスは 192.168.0.98 である。

高得点のポイント

  • 宛先となる共用リバースプロキシのIPアドレス「192.168.0.98」を正確に記述すること。
(4)配点 4点

本文中の カ に入れる適切なポート番号を答えよ。

模範解答

8000

解説

空欄カ。共用リバースプロキシが宛先IPアドレス192.168.0.112(コンテナサーバa)へ通信する際の宛先ポート番号。表4の振り分けルールによると、AP0 (ap0.u-sha.com) の振り分け先の一つは 192.168.0.112:8000 である。したがって、宛先ポート番号は 8000 となる。

各選択肢の解説

本設問は数値記述であり、正解は 8000 のみであるため、他の数値は表4の振り分けルール(AP0のコンテナサーバaへのポート番号)と合致せず誤りとなる。

(5)配点 5点

本文中の下線⑤について,変換後の宛先IPアドレスと宛先ポート番号を答えよ。

模範解答

172.16.0.16

80

採点基準

正確性(内容)5点
  • 5点: IPアドレスとポート番号の両方が完全に一致している
  • 2点: いずれか一方のみ正解している
  • 0点: 両方とも異なる、または無回答

解説

下線⑤について、仮想ルータによるポートフォワード処理後の宛先IPアドレスと宛先ポート番号。図4(ii)から(iii)へのパケット変換例を見ると、宛先IP 192.168.0.112、宛先ポート 8000 宛てのパケットは、WebAPコンテナ(AP0a)宛てに変換されている。表3よりWebAPコンテナ(AP0a)のIPアドレスは 172.16.0.16 であり、図4(iii)における宛先ポート番号は 80 である。

高得点のポイント

  • 変換後の宛先IPアドレスとして「172.16.0.16」を導き出せていること。 * 変換後の宛先ポート番号として「80」を導き出せていること。

設問2(2)は,正答率が低かった。HTTPのヘッダフィールド情報のうち,ホストヘッダフィールドを用いてアプリケーションを識別する技術はリバースプロキシでよく利用される。HTTPプロトコルの特徴を踏まえ理解を深めてほしい。

設問3

(1)配点 5点

本文中の下線⑥について,専用APごとに確認が必要な仮想ルータのネットワーク機能を二つ答えよ。

模範解答

NAPT機能

ポートフォワード機能

採点基準

正確性(内容)5点
  • 5点: 2つの機能が完全に一致している
  • 2点: いずれか1つのみ正解している
  • 0点: 両方とも異なる、または無回答

解説

専用APごとに確認が必要な仮想ルータのネットワーク機能。本文の「コンテナ仮想化技術を利用した WebAP の構成」に、「WebAP コンテナは,仮想ルータの上で動作する NAPT 機能と TCP や UDP のポートフォワード機能を利用して…通信する」とある。専用APを同様の構成にする場合、この2つの機能(NAPT機能、ポートフォワード機能)を介しても独自プロトコルが正常に動作するかを確認する必要がある。

高得点のポイント

  • 仮想ルータが提供する「NAPT機能」と「ポートフォワード機能」の2つを正しく抜き出していること。
(2)配点 5点

本文中の下線⑦について,どのような仕組みが必要か。40字以内で答えよ。

模範解答

複数のIPアドレスを設定し,IPアドレスごとに専用APを識別する仕組み

採点基準

知識・理解度(内容)3点
  • 3点: 複数のIPアドレスを設定し、それで専用APを識別することが正確に記述されている
  • 2点: IPアドレスによる識別に触れているが、複数設定する仕組みの記述がやや不足
  • 1点: IPアドレスなどの要素は挙げているが内容が不十分
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: 仕組みとして論理的かつ明確に伝わる構造になっている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線⑦の負荷分散機能について、どのような仕組みが必要か。WebAPの場合はHTTPのホストヘッダフィールドを用いて識別できたが、専用APは独自プロトコルであり同じポート番号を使用するため、通信内容(L7)での識別が困難である。そのため、負荷分散装置(リバースプロキシなど)に専用APごとの複数のIPアドレスを割り当て、宛先IPアドレスによって専用APを識別し振り分ける仕組みが必要となる。

高得点のポイント

  • 複数のIPアドレスを設定することに言及していること。 * IPアドレスごとに専用APを識別する仕組みであることを論理的に記述すること。

設問4

〔監視の検討〕について,(1)〜(3)に答えよ。

(1)配点 5点

本文中の キ に入れる適切な字句を答えよ。

模範解答

エコー応答

採点基準

正確性(内容)5点
  • 5点: 正解と完全に一致している
  • 2点: 意図は汲み取れるが正確な用語ではない
  • 0点: 正解と異なる、または無回答

解説

ping監視で使用されるICMPメッセージ。監視サーバがエコー要求(Echo Request)を送信し、正常であれば対象機器からエコー応答(Echo Reply)を受信することで到達性を確認する。

高得点のポイント

  • ICMPにおける「エコー応答」を正確に記述すること。
(2)配点 5点

本文中の ク に入れる適切な字句を答えよ。

模範解答

SYN/ACK

採点基準

正確性(内容)5点
  • 5点: 正解と完全に一致している
  • 2点: SYN ACK など表記揺れはあるが意味は正しい
  • 0点: 正解と異なる、または無回答

解説

TCP接続監視の手順。監視サーバがSYNパケットを送信し、対象機器のポートが開いていればSYN/ACK(あるいはSYN+ACK)パケットが返ってくる。これを受信できるかどうかでTCPの通信可否を確認する。

高得点のポイント

  • 3ウェイハンドシェイクにおいてSYNへの応答である「SYN/ACK」を正確に記述すること。
(3)配点 4点

本文中の ケ に入れる適切な字句を答えよ。

模範解答

GET

採点基準

正確性(内容)4点
  • 4点: 「GET」(「get」など大文字小文字の違いを含む)と正しく解答している。
  • 2点: 正答に近いが、一部の字句が誤っている、または欠けている。
  • 0点: 正解と異なる、または無回答。

解説

URL接続監視の手順。HTTPサーバからリソース(コンテンツ)を取得して正常稼働を確認するためには、HTTPのGETメソッドを用いてリクエストを送信する。

高得点のポイント

  • HTTPリソース取得の基本メソッドである「GET」を正確に記述すること。
(4)配点 4点

本文中の下線⑧について,表5中の項番2,項番4,項番7で障害検知し,それ以外は正常の場合,どこに障害が発生していると考えられるか。表5中の字句を用いて障害箇所を答えよ。

模範解答

コンテナサーバa

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 表の字句を用いていないが対象は合っている
  • 0点: 正解と異なる、または無回答

解説

表5の監視項目において、項番2(コンテナサーバaへのping)、項番4(192.168.0.112:8000 へのTCP)、項番7(http://192.168.0.112:8000/index.html へのURL)で障害を検知した場合の障害箇所。これらはすべてコンテナサーバaに関連するIPアドレス宛ての監視であり、ping監視の段階で到達不能となっていることから、大元のコンテナサーバa自体に障害が発生していると推測できる。

高得点のポイント

  • 表5中の字句を用いて「コンテナサーバa」と正確に解答すること。
(5)配点 4点

本文中の下線⑧について,表5中の項番4,項番7で障害検知し,それ以外は正常の場合,どこに障害が発生していると考えられるか。表5中の字句を用いて障害箇所を答えよ。

模範解答

WebAPコンテナ(AP0a)

採点基準

正確性(内容)4点
  • 4点: 正解と完全に一致している
  • 2点: 表の字句を用いていないが対象は合っている
  • 0点: 正解と異なる、または無回答

解説

項番4(TCP接続監視)、項番7(URL接続監視)で障害検知し、項番2(ping監視)は正常な場合の障害箇所。コンテナサーバa自体への到達性(ping)はあるが、AP0aへのTCP接続およびHTTPアクセスが失敗しているため、コンテナサーバa上で動作しているWebAPコンテナ(AP0a)に障害が発生していると推測できる。

高得点のポイント

  • 表5中の字句を用いて「WebAPコンテナ(AP0a)」と正確に解答すること。

設問5

〔移行手順の検討〕について,(1)〜(4)に答えよ。

(1)配点 5点

表6中の下線⑨について,WebAPコンテナで動作するAPの動作確認を行うために必要になる,テスト用のPCの設定内容を,DNS切替えに着目して40字以内で述べよ。

模範解答

APのFQDNとIPアドレスをPCのhostsファイルに記載する。

採点基準

知識・理解度(内容)3点
  • 3点: hostsファイルにFQDNとIPアドレスを記載することが正確に記述されている
  • 2点: hostsファイルの利用には触れているが、記載内容の指定が不十分
  • 1点: 名前解決の仕組みに触れているが具体的な方法が欠けている
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: テスト用PCでのDNS切替え代替手段として論理的かつ明確に記述されている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線⑨のテスト用PCを用いた動作確認におけるDNS切替え前の設定。移行手順(表6)の項番4「動作確認」は、項番5「DNS切替え」の前に行われる。この時点では本番のDNSはまだAPサーバを指しているため、テスト用PCからWebAPコンテナ(共用リバースプロキシ)へFQDNを用いてアクセスするには、テスト用PCのローカルな名前解決機能であるhostsファイルに、APのFQDNと共用リバースプロキシのIPアドレスの紐付けを記載する必要がある。

高得点のポイント

  • テスト用PCの「hostsファイル」を使用することに言及していること。 * APのFQDNとIPアドレスを記載して名前解決を優先させる論理構造が明確であること。
(2)配点 5点

表6中の下線⑩について,APサーバ停止前に確認する内容を40字以内で述べよ。

模範解答

APサーバに対するPCからのアクセスがなくなっていることを確認する。

採点基準

知識・理解度(内容)3点
  • 3点: APサーバに対するPCからのアクセスがなくなっていることが正確に記述されている
  • 2点: 通信の確認には触れているが、アクセスが「なくなる」ことの明示がやや弱い
  • 1点: 稼働状況などの一般的な確認にとどまっている
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: 停止して問題ない状態の定義が論理的かつ明確に記述されている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線⑩のAPサーバ停止前に確認する内容。DNSレコードをWebAPコンテナ側に切り替えた後も、DNSのキャッシュ情報(TTL)が残っている間は、一部のクライアントから旧環境であるAPサーバへアクセスが来る可能性がある。そのため、APサーバのログやネットワーク接続状況を確認し、クライアントからのアクセスが完全になくなっていることを確認してから停止する必要がある。

高得点のポイント

  • APサーバに対するアクセス(通信)に着目していること。 * アクセスがなくなっている(ゼロになっている)ことを確認するという論理構造が明確であること。
(3)配点 4点

本文中の下線⑪について,TTLを短くすることによって何がどのように変化するか。40字以内で述べよ。

模範解答

キャッシュDNSサーバのDNSキャッシュを保持する時間が短くなる。

採点基準

知識・理解度(内容)2点
  • 2点: キャッシュDNSサーバがキャッシュを保持する時間が短くなることが正確に記述されている
  • 1点: キャッシュに触れているが、保持時間の短縮についての説明が不十分
  • 0点: 内容が不適切、または無回答
論理性(構造)2点
  • 2点: TTL短縮による事象の変化が論理的かつ明確に記述されている
  • 1点: 文意は伝わるが論理展開がやや不明確
  • 0点: 論理が破綻している、または無回答

解説

下線⑪におけるDNSのTTL(Time To Live)を短くする効果。TTLはDNSレコードのキャッシュ有効期間を示す。事前にこれを短く設定しておくことで、クライアントや中継するキャッシュDNSサーバが古いIPアドレスをキャッシュとして保持する時間が短くなる。これにより、DNS切り替え後、速やかに新しいIPアドレス(WebAPコンテナ側)へアクセスが向くようになる。

高得点のポイント

  • 「キャッシュDNSサーバ」や「DNSキャッシュ」に言及していること。 * キャッシュを保持する時間が短くなるという変化を的確に記述していること。
(4)配点 4点

本文中の下線⑫について,3パターンそれぞれでAPの動作確認を行う目的を二つ挙げ,それぞれ35字以内で述べよ。(1つ目)

模範解答

WebAPコンテナ2台が正しく構築されたことを確認するため

共用リバースプロキシの設定が正しく行われたことを確認するため

採点基準

知識・理解度(内容)2点
  • 2点: 「WebAPコンテナ2台が正しく構築されたことの確認」または「共用リバースプロキシの設定が正しく行われたことの確認」のいずれか一方の目的が正確に記述されている。
  • 1点: 動作確認の事実に触れているが、構築や設定の正しさへの言及が不十分である。
  • 0点: 内容が不適切、または無回答。
論理性(構造)2点
  • 2点: 目的として論理的かつ明確に記述されている。
  • 1点: 文意は伝わるが目的の表現としてやや不明確である。
  • 0点: 論理が破綻している、または無回答。

解説

下線⑫におけるAPの動作確認パターンの目的(1つ目・2つ目は順不同)。
動作確認の目的としては、全てのWebAPコンテナが正常に動作している場合の確認を通じて「WebAPコンテナ2台が正しく構築されたこと」を確認すること、および1台停止時の振り分け等を通じて「共用リバースプロキシの設定が正しく行われたこと」を確認することの二つが挙げられます。

高得点のポイント

  • 「WebAPコンテナ2台が正しく構築されたこと」または「共用リバースプロキシの設定が正しく行われたこと」のいずれか一方の目的を明確に記述していること。
  • 目的として論理的に記述されていること。
(5)配点 4点

本文中の下線⑫について,3パターンそれぞれでAPの動作確認を行う目的を二つ挙げ,それぞれ35字以内で述べよ。(2つ目)

模範解答

WebAPコンテナ2台が正しく構築されたことを確認するため

共用リバースプロキシの設定が正しく行われたことを確認するため

採点基準

知識・理解度(内容)2点
  • 2点: 1つ目の欄と異なるもう一方の目的(1つ目がコンテナ構築なら共用リバースプロキシ設定、1つ目が共用リバースプロキシ設定ならコンテナ構築)が正確に記述されている。
  • 1点: 1つ目の欄と異なるもう一方の動作確認に触れているが、設定や構築の正しさへの言及が不十分である。
  • 0点: 1つ目の欄と同じ内容を答えている、内容が不適切、または無回答。
論理性(構造)2点
  • 2点: 目的として論理的かつ明確に記述されている(1つ目の欄と異なる内容である場合に限る)。
  • 1点: 文意は伝わるが目的の表現としてやや不明確である(1つ目の欄と異なる内容である場合に限る)。
  • 0点: 論理が破綻している、または無回答。1つ目の欄と同じ内容を答えている場合もこの段階とする。

解説

下線⑫におけるAPの動作確認パターンの目的(1つ目・2つ目は順不同)。
動作確認の目的としては、全てのWebAPコンテナが正常に動作している場合の確認を通じて「WebAPコンテナ2台が正しく構築されたこと」を確認すること、および1台停止時の振り分け等を通じて「共用リバースプロキシの設定が正しく行われたこと」を確認することの二つが挙げられます。
1つ目の欄と重複しない、もう一方の目的を解答します。

高得点のポイント

  • 1つ目の欄で解答したものとは異なる、もう一方の目的を明確に記述していること。
  • 目的として論理的に記述されていること。

設問5(4)は,正答率が低かった。本問の動作確認を行う目的は,移行手順に記載の作業が正しく行われたことを確認するためである。共用リバースプロキシの動作確認だけに着目した解答が散見された。本文中に示された状況をきちんと読み取り,正答を導き出してほしい。

Spineチーム