ネットワークスペシャリスト 2024年 午後1 問03
ローカルブレイクアウトによる負荷軽減に関する次の記述を読んで、設問に答えよ。
A社は、従業員300人の建築デザイン会社である。東京本社のほか、大阪、名古屋、仙台、福岡の4か所の支社を構えている。本社には100名、各支社には50名の従業員が勤務している。
A社は、インターネット上のC社のSaaS(以下、C社SaaSという)を積極的に利用する方針にしている。A社情報システム部ネットワーク担当のBさんは、C社SaaS宛ての通信がHTTPSであることから、ネットワークの負荷軽減を目的に、各支社のPCからC社SaaS宛ての通信を、本社のプロキシサーバを利用せず直接インターネット経由で接続して利用できるようにする、ローカルブレイクアウトについて検討することにした。
〔現在のA社のネットワーク構成〕
現在のA社のネットワーク構成を図1に示す。

現在のA社のネットワーク構成の概要を次に示す。
・本社及び各支社はIPsec VPN機能をもつUTMでインターネットに接続している。
・プロキシサーバは、従業員が利用するPCのHTTP通信、HTTPS通信をそれぞれ仲介する。プロキシサーバではセキュリティ対策として各種ログを取得している。
・DMZや内部ネットワークではプライベートIPアドレスを利用している。
・PCには、DHCPを利用してIPアドレスの割当てを行っている。
・PCが利用するサーバは、全て本社のDMZに設置されている。
・A社からインターネット向けの通信については、本社のUTMでNAPTによるIPアドレスとポート番号の変換をしている。
〔現在のA社のVPN構成〕
A社は、UTMのIPsec VPN機能を利用して、本社をハブ、各支社をスポークとするア型のVPNを構成している。本社と各支社との間のVPNは、IP in IPトンネリング(以下、IP-IPという)でカプセル化し、さらにIPsecを利用して暗号化することでIP-IP over IPsecインタフェースを構成し、2拠点間をトンネル接続している。
①本社のUTMと支社のUTMのペアではIPsecで暗号化するために同じ鍵を共有している。②この鍵はペアごとに異なる値が設定されている。
③IPsecの通信モードには、トランスポートモードとトンネルモードがあるが、A社のVPNではトランスポートモードを利用している。
A社のVPNを構成するIPパケット構造を図2に示す。

VPNを構成するために、本社と各支社のUTMには固定のグローバルIPアドレスを割り当てている。④IP-IP over IPsecインタフェースでは、IP Unnumbered設定が行われている。また、⑤ IP-IP over IPsec インタフェースでは、中継するTCPパケットの IP フラグメントを防止するための設定が行われている。
〔プロキシサーバを利用した制御〕
BさんがUTM について調べたところ、追加ライセンスを購入することでプロキシサーバ(以下、UTM プロキシサーバという)として利用できることが分かった。
Bさんは、ネットワークの負荷軽減のために、各支社のPCからC社SaaS宛ての通信は、各支社のUTMプロキシサーバをプロキシサーバとして指定することで直接インターネットに向けることを考えた。また、各支社のPCからその他インターネット宛ての通信は、通信相手を特定できないことから、各種ログを取得するために、これまでもどおり本社のプロキシサーバをプロキシサーバとして指定することを考えた。
各支社のPCから、C社SaaS宛てとその他インターネット宛ての通信の流れを図3に示す。

Bさんは、各支社のPCが利用するプロキシサーバを制御するためにプロキシ自動設定(以下、PACという)ファイルとWebプロキシ自動検出(以下、WPADという)の導入を検討することにした。
〔PACファイル導入検討〕
BさんはPACファイルの作成方法について調査した。PACファイルはJavaScriptで記述する。PACファイルに記述するFindProxyForURL関数の第1引数であるurlにはアクセス先のURLが、第2引数であるhostにはアクセス先のURLから取得したホスト名が渡される。これらの引数に渡された値を様々な関数を用いて条件分岐し、利用するプロキシサーバを決定する。FindProxyForURL関数の戻り値が“DIRECT”ならば、プロキシサーバを利用せず直接通信を行う。戻り値が“PROXY host:port”ならば、指定されたプロキシサーバ(host)のポート番号(port)を利用する。
テスト用に大阪支社のUTMを想定したPACファイルを作成した。Bさんが作成した大阪支社のUTMのPACファイルを図4に示す。

Bさんは、テスト用のPCとテスト用のUTMプロキシサーバを用意し、作成したPACファイルを利用することで、テスト用のPCからC社SaaS宛ての通信が、期待どおりに本社のプロキシサーバを利用せずに、テスト用のUTMプロキシサーバを利用することを確認した。⑥Bさんは各支社のPACファイルを作成した。
〔WPAD導入検討〕
WPADは、イやウの機能を利用して、PACファイルの場所を配布するプロトコルである。PCやWebブラウザのWebプロキシ自動検出が有効になっていると、イサーバやウサーバと通信を行い、アプリケーションレイヤープロトコルの一つであるエを利用してエサーバからPACファイルのダウンロードを試みる。
WPADの利用には、PCやWebブラウザのWebプロキシ自動検出を有効にするだけでよく、簡便である一方、悪意のあるイサーバやウサーバがあると⑦PCやWebブラウザが脆弱にさらされる可能性も指摘されている。Bさんは、WPADは利用しないことにし、PCやWebブラウザのWebプロキシ自動検出を無効にすることにした。PCやWebブラウザにはPACファイルのオを直接設定する。
Bさんが検討した対応策が承認され、情報システム部はプロジェクトを開始した。
設問1:〔現在のA社のVPN構成〕について答えよ。
(1)本文中の ア に入れる適切な字句を答えよ。
模範解答
ア:ハブアンドスポーク
解説
解答の論理構成
- 【問題文】には「本社をハブ、各支社をスポークとするア型のVPNを構成している。」とあります。
- 「ハブ」と「スポーク」という語は、自転車の車輪に例えれば中心軸(ハブ)とそこから放射状に伸びる棒(スポーク)の関係を示し、ネットワークでは中央拠点を経由して各拠点を接続するトポロジを指します。
- このトポロジを表す正式な用語は「ハブアンドスポーク(Hub and Spoke)型」です。
- したがって ア に入る適切な字句は「ハブアンドスポーク」と判断できます。
誤りやすいポイント
- 「スター型」と混同する
スター型は中央装置に全端末が直接接続する LAN トポロジを指すため、WAN の VPN 構成では「ハブアンドスポーク」を用いるのが正確です。 - 「フルメッシュ型」との取り違え
スポーク間に直接 VPN を張る場合はフルメッシュですが、本文では「本社をハブ」と明示されているため不適切です。 - 英語表記を直訳して「ハブおよびスポーク」と答えてしまう
試験では一般的に使われるカタカナ表記「ハブアンドスポーク」が求められます。
FAQ
Q: ハブアンドスポーク型の利点は何ですか?
A: 拠点追加時に新拠点とハブだけを結べばよく、拠点数が多くても構成が単純で運用が楽になる点が利点です。
A: 拠点追加時に新拠点とハブだけを結べばよく、拠点数が多くても構成が単純で運用が楽になる点が利点です。
Q: この構成の欠点はありますか?
A: すべての通信がハブ(本社)を経由するため、ハブの帯域や処理能力がボトルネックになりがちです。
A: すべての通信がハブ(本社)を経由するため、ハブの帯域や処理能力がボトルネックになりがちです。
Q: スポーク間通信が頻繁な場合はどうすればよいですか?
A: スポーク間に直接 VPN を張る「部分メッシュ」や「フルメッシュ」を検討し、トラフィックの迂回を解消します。
A: スポーク間に直接 VPN を張る「部分メッシュ」や「フルメッシュ」を検討し、トラフィックの迂回を解消します。
関連キーワード: ハブアンドスポーク, VPN, IPsec, トポロジ, WAN
設問1:〔現在のA社のVPN構成〕について答えよ。
(2)本文中の下線①について、本社のUTMと支社のUTMのペアで共有する鍵を何と呼ぶか答えよ。
模範解答
事前共有鍵
解説
解答の論理構成
- 【問題文】には、下線①として
「①本社のUTMと支社のUTMのペアではIPsecで暗号化するために同じ鍵を共有」
とあります。 - IPsec で装置同士が“同じ鍵”をあらかじめ保持しておき、その鍵を使って IKE Phase 1 などの認証を行う方式は、公開鍵基盤(PKI)を使わずに済む簡易手法として広く採用されています。
- この“あらかじめ共有しておく秘密鍵”を IPsec/IKE の用語では「事前共有鍵」(Pre-Shared Key, PSK)と呼びます。
- よって設問の答えは「事前共有鍵」となります。
誤りやすいポイント
- 共有する鍵=「セッション鍵」と誤解する
→ セッション鍵は通信開始後に生成・交換される一時鍵であり、あらかじめ設定しておく鍵ではありません。 - 公開鍵暗号の「公開鍵」と混同する
→ 事前共有鍵は“秘密鍵”であり、外部に公開するものではありません。 - SA(Security Association)と回答してしまう
→ SA は通信ごとのパラメータ集合であり、“鍵”そのものの名称ではありません。 - PFS(Perfect Forward Secrecy)を使う場合は事前共有鍵を使わないと誤認
→ PFS を有効にしていても、Phase 1 の認証に事前共有鍵を選択することは可能です。
FAQ
Q: 事前共有鍵方式のメリットとデメリットは何ですか?
A: メリットは設定が簡単で追加インフラが要らないこと、デメリットは鍵の使い回しや人的管理負荷が増えることです。多数拠点では鍵管理が煩雑になりがちなので注意が必要です。
A: メリットは設定が簡単で追加インフラが要らないこと、デメリットは鍵の使い回しや人的管理負荷が増えることです。多数拠点では鍵管理が煩雑になりがちなので注意が必要です。
Q: 事前共有鍵とデジタル証明書は併用できますか?
A: IKE の認証方式としてどちらか一方を選択します。証明書認証に切り替える場合は機器に証明書と秘密鍵をインポートし、事前共有鍵の設定を外します。
A: IKE の認証方式としてどちらか一方を選択します。証明書認証に切り替える場合は機器に証明書と秘密鍵をインポートし、事前共有鍵の設定を外します。
Q: 事前共有鍵はネットワーク機器間で同じ値を設定する必要がありますか?
A: はい。同じペア間では“同じ値”が必須です。異なるペア間では【問題文】の「②この鍵はペアごとに異なる値が設定」にあるように、それぞれ別々の値を設定するのが推奨です。
A: はい。同じペア間では“同じ値”が必須です。異なるペア間では【問題文】の「②この鍵はペアごとに異なる値が設定」にあるように、それぞれ別々の値を設定するのが推奨です。
関連キーワード: IPsec, IKE, 事前共有鍵, VPN, 認証方式
設問1:〔現在のA社のVPN構成〕について答えよ。
(3)本文中の下線②について、鍵は全て同じではなく、ペアごとに異なる値を設定することで得られる効果を、鍵の管理に着目して25字以内で答えよ。
模範解答
鍵が漏えいした際の影響範囲を小さくできる。
解説
解答の論理構成
- 問題文では、VPNを構成する各拠点間で暗号化に用いる鍵について
「②この鍵はペアごとに異なる値が設定されている。」
と明記されています。 - IPsecでは、同じ鍵を多数の通信ペアで共有すると、万一その鍵が漏えいした際に“全てのトンネル”が解読されるリスクが生じます。
- ペアごとに異なる鍵を割り当てれば、漏えいしても影響を受けるのは“当該ペアの通信”だけに局限されます。
- したがって、設問が求める「鍵の管理に着目した効果」は
「鍵が漏えいした際の影響範囲を小さくできる」
という説明になります。
誤りやすいポイント
- 「ペアごとに異なる鍵」を「定期的に更新する鍵」と混同し、更新頻度のメリットを答えてしまう。
- 影響範囲の縮小を“漏えい確率が下がる”と誤解してしまう。確率ではなく“被害範囲”の話です。
- 「可用性向上」「通信速度向上」といった無関係な利点を挙げてしまう。今回問われているのは“鍵管理”視点のみです。
FAQ
Q: なぜペアごとに鍵を変えると影響範囲が限定されるのですか?
A: 漏えいした鍵で復号できるのは、その鍵で暗号化された通信だけだからです。他ペアは別鍵で暗号化されており解読できません。
A: 漏えいした鍵で復号できるのは、その鍵で暗号化された通信だけだからです。他ペアは別鍵で暗号化されており解読できません。
Q: IPsecの自動鍵交換(IKE)を使えば同じ効果が得られますか?
A: IKEを使っていても、トンネルごとに異なるセッション鍵を生成する設定が必要です。同一鍵を広く共有していては効果は得られません。
A: IKEを使っていても、トンネルごとに異なるセッション鍵を生成する設定が必要です。同一鍵を広く共有していては効果は得られません。
Q: ペアごとに鍵を分けると管理が煩雑になりませんか?
A: 多少手間は増えますが、鍵管理システムや自動鍵交換を利用すれば運用負荷を抑えつつセキュリティを高められます。
A: 多少手間は増えますが、鍵管理システムや自動鍵交換を利用すれば運用負荷を抑えつつセキュリティを高められます。
関連キーワード: IPsec, 鍵管理, VPNトンネル, リスク低減
設問1:〔現在のA社のVPN構成〕について答えよ。
(4)本文中の下線③について、A社のVPNで利用しているトランスポートモードとした場合は元のIPパケット(元のIPヘッダと元のIPペイロード)とESPトレーラの範囲を暗号化するのに対し、A社のVPNをトンネルモードとした場合はどの範囲を暗号化するか。図2中の字句で全て答えよ。
模範解答
IPヘッダー、元のIPパケット、ESPトレーラ
解説
解答の論理構成
- 問題文は下線③として
“トランスポートモードとした場合は元のIPパケット(元のIPヘッダと元のIPペイロード)とESPトレーラの範囲を暗号化”
と明示しています。 - IPsec ESPでは
・トランスポートモード … 上記のとおり“元のIPパケット+ESPトレーラ”を暗号化し、外側の“IPヘッダー”は暗号化しません。
・トンネルモード … “新たに付加する外側 IP ヘッダー以外の部分”を丸ごと暗号化します。 - 図2のレイヤ表記は
“IPヘッダー / ESPヘッダー / 元のIPパケット / ESPトレーラ / ESP認証データ”
です。 - 従ってトンネルモードでは、暗号化対象は
“IPヘッダー、元のIPパケット、ESPトレーラ”
となります。ESPヘッダーとESP認証データは暗号化対象外です。
誤りやすいポイント
- 「IPヘッダー」を除外してしまう
トンネルモードでは外側の“IPヘッダー”以外を暗号化すると誤解しやすいですが、図2で示される“IPヘッダー”は IP-IP でカプセル化した内側ヘッダーを指しています。 - 「ESPヘッダー」まで暗号化対象に含めてしまう
ESPヘッダーは復号処理の入口になるため暗号化しません。 - 「ESP認証データ」を暗号化対象に含める
認証用データは暗号化せずに付加されます。
FAQ
Q: トンネルモードで“IPヘッダー”を暗号化すると経路制御はできますか?
A: 経路制御に使われるのはさらに外側に付加される新しい“外側 IPヘッダー”です。図2の“IPヘッダー”は暗号化対象でも、ルータが参照するヘッダーは別に存在します。
A: 経路制御に使われるのはさらに外側に付加される新しい“外側 IPヘッダー”です。図2の“IPヘッダー”は暗号化対象でも、ルータが参照するヘッダーは別に存在します。
Q: ESPヘッダーを暗号化しないのはなぜですか?
A: ESPヘッダーにはSPIやシーケンス番号があり、受信側がセッションを識別して復号を開始するために平文である必要があります。
A: ESPヘッダーにはSPIやシーケンス番号があり、受信側がセッションを識別して復号を開始するために平文である必要があります。
Q: トランスポートモードとトンネルモードは同時に使えますか?
A: 一つのSA(Secure Association)につきどちらか一方を選択しますが、同じ機器でトランスポート用とトンネル用の複数SAを張り分けることは可能です。
A: 一つのSA(Secure Association)につきどちらか一方を選択しますが、同じ機器でトランスポート用とトンネル用の複数SAを張り分けることは可能です。
関連キーワード: IPsec, ESP, トンネルモード, カプセル化, VPN
設問1:〔現在のA社のVPN構成〕について答えよ。
(5)本文中の下線④について、IP Unnumbered設定とはどのような設定か。“IPアドレスの割当て” の字句を用いて30字以内で答えよ。
模範解答
インタフェースにIPアドレスの割当てを行わない設定
解説
解答の論理構成
- 問題文では、IP‐IP over IPsecインタフェースについて「④IP‐IP over IPsecインタフェースでは、IP Unnumbered設定が行われている」と記載されています。
- “IP Unnumbered” は、ルータやUTMなどの論理インタフェースに対し、個別のIPアドレスを付与せずに運用する技術です。
- つまり、IP Unnumbered設定とは「インタフェースにIPアドレスの割当てを行わない」ことを示します。
- よって解答は「インタフェースにIPアドレスの割当てを行わない設定」となります。
誤りやすいポイント
- 「IPアドレスを省略しても自動で割り当てられる」と誤解し、DHCPなどと混同する。
- 「番号を共有する」と解釈し、他インタフェースのIPアドレスを流用する仕組みと答えてしまう。
- “IP Unnumbered” を「IPsec側でのみ有効」と限定的に考え、インタフェース一般の設定であることを見落とす。
FAQ
Q: IP Unnumbered設定を使う主な利点は何ですか?
A: ルーティング用のアドレス数を節約でき、特にポイントツーポイントトンネルで不要なIPアドレス消費を防げます。
A: ルーティング用のアドレス数を節約でき、特にポイントツーポイントトンネルで不要なIPアドレス消費を防げます。
Q: IP Unnumberedを設定したインタフェースはPingできますか?
A: インタフェース自身にIPアドレスがないため直接Pingはできませんが、代わりにループバックなど別インタフェースのアドレスを利用して疎通確認を行います。
A: インタフェース自身にIPアドレスがないため直接Pingはできませんが、代わりにループバックなど別インタフェースのアドレスを利用して疎通確認を行います。
Q: IP Unnumberedとリンクローカルアドレスの違いは?
A: リンクローカルアドレスは自動設定される限定範囲のアドレスですが、IP UnnumberedはそもそもIPアドレスを付与しない点が異なります。
A: リンクローカルアドレスは自動設定される限定範囲のアドレスですが、IP UnnumberedはそもそもIPアドレスを付与しない点が異なります。
関連キーワード: IPsec, トンネルモード, ルーティング, ポイントツーポイント, VPN
設問1:〔現在のA社のVPN構成〕について答えよ。
(6)本文中の下線⑤について、中継するTCPパケットのIPフラグメントを防止するための設定を行わず、UTMでIPフラグメント処理が発生する場合、UTMにどのような影響があるか。10字以内で答えよ。
模範解答
転送負荷の増大
解説
解答の論理構成
- 問題文では「⑤ IP-IP over IPsec インタフェースでは、中継する TCP パケットの IP フラグメントを防止するための設定」が行われている、と述べています。
- これはフレームサイズ(MTU)を調整し、ルータ(UTM)がフラグメントされた複数のパケットを処理しなくても済むようにする設定です。
- 防止設定を外す(=フラグメントが発生する)と、UTMは
・フラグメントごとのルックアップ
・再組立て(再アセンブル)や整合性確認
・暗号化/復号処理の複数回実行
を行う必要があります。 - これら追加処理はCPU・メモリ資源を占有しスループットを低下させるため、UTM自体の処理量が増えます。
- よって、設定を行わないと「転送負荷の増大」という影響になります。
誤りやすいポイント
- 「パケットが破棄され通信不可になる」と考えがちですが、多くのUTMはフラグメントを正しくリレーできるため主因は性能劣化です。
- 「セキュリティが低下する」と答えるケースがありますが、本設問は性能面での影響を問うています。
- IPsecトンネルモード/トランスポートモードの混同により、原因を MTU ではなく暗号化方式と誤認することがあります。
FAQ
Q: そもそもIPフラグメントはなぜ負荷を与えるのですか?
A: ルータやUTMは各フラグメントの識別子・オフセットを確認し、順序管理や再組立てを行わなければなりません。特にIPsecではフラグメントごとに暗号化/復号が必要となり、処理量が増大します。
A: ルータやUTMは各フラグメントの識別子・オフセットを確認し、順序管理や再組立てを行わなければなりません。特にIPsecではフラグメントごとに暗号化/復号が必要となり、処理量が増大します。
Q: MTUを小さくする以外にフラグメント防止策はありますか?
A: DFビット(Don’t Fragment)を立てる、Path MTU Discovery を利用する、TCP MSSを調整するなどが一般的です。
A: DFビット(Don’t Fragment)を立てる、Path MTU Discovery を利用する、TCP MSSを調整するなどが一般的です。
Q: フラグメントはセキュリティ的に問題がありますか?
A: 断片化を悪用した攻撃(オーバーラップフラグメントなど)が存在しますが、本設問は性能面に焦点を当てています。
A: 断片化を悪用した攻撃(オーバーラップフラグメントなど)が存在しますが、本設問は性能面に焦点を当てています。
関連キーワード: IPフラグメント, MTU, IPsec, ルータ処理負荷, VPN
設問2:〔PACファイル導入検討〕について答えよ。
(1)図4について、DMZにあるWebサーバにアクセスする際、プロキシサーバを利用する場合はプロキシサーバ名を答えよ。プロキシサーバを利用しない場合は “利用しない” と答えよ。
模範解答
利用しない
解説
解答の論理構成
-
DMZ の Web サーバは社内サーバであり、FQDN は問題文に示された
“a‐sha.jp : A社の社内利用ドメイン名” に属します。
したがって引数 host には “○○.a-sha.jp” 形式が渡されます。 -
図4 b の条件部には
dnsDomainIs(host, ".a-sha.jp")
が含まれており、
“host が A 社の社内利用ドメイン名に属する場合、FindProxyForURL 関数の戻り値として "DIRECT" を返す。”
と原文で明記されています。 -
b が成り立つと、関数はそこで終了し後続の c・d は評価されません。戻り値は “DIRECT” です。
-
“DIRECT” は【問題文】の説明どおり
“プロキシサーバを利用せず直接通信を行う。”
ことを示します。
よって DMZ 内 Web サーバにアクセスする際はプロキシを介さないため、設問の解答は
“利用しない” となります。
“利用しない” となります。
誤りやすいポイント
- “社内サーバでも DMZ にあるから外部ネットワーク扱い” と誤認し、d の “proxy.a-sha.jp:8080” を選んでしまう。
- .a-sha.jp の前にドットが付いている形だけをチェックし、サブドメイン “www.a-sha.jp” は対象外だと早合点してしまう。dnsDomainIs は末尾一致で判定するためすべて対象です。
- “DIRECT=ローカルブレイクアウトのため外部に直接出る” と読んで、本社‐支社経路は必ずプロキシ経由と決め付けてしまう(今回は社内向けなので逆)。
FAQ
Q: “DIRECT” と書いてあっても IPsec VPN トンネルは通りますか?
A: PAC ファイルが決めるのは HTTP/HTTPS のプロキシ経路だけです。L3 ルーティングや VPN は別の層の処理なので、必要なら既存の IPsec VPN を通過します。
A: PAC ファイルが決めるのは HTTP/HTTPS のプロキシ経路だけです。L3 ルーティングや VPN は別の層の処理なので、必要なら既存の IPsec VPN を通過します。
Q: dnsResolve() が失敗した場合はどうなりますか?
A: ip が空文字や null でも b の dnsDomainIs(host, ".a-sha.jp") が真なら “DIRECT” になります。DNS 失敗だけで外部プロキシが選ばれることはありません。
A: ip が空文字や null でも b の dnsDomainIs(host, ".a-sha.jp") が真なら “DIRECT” になります。DNS 失敗だけで外部プロキシが選ばれることはありません。
Q: DMZ の Web サーバに固定 IP(プライベート)でアクセスするケースは?
A: isInNet(ip, "192.168.0.0", "255.255.0.0") などプライベートアドレス範囲が同じ b 内に列挙されており、やはり “DIRECT” が返ります。
A: isInNet(ip, "192.168.0.0", "255.255.0.0") などプライベートアドレス範囲が同じ b 内に列挙されており、やはり “DIRECT” が返ります。
関連キーワード: PACファイル, DIRECT指定, dnsDomainIs, イントラネット, ローカルブレイクアウト
設問2:〔PACファイル導入検討〕について答えよ。
(2)図4について、インターネット上にある https://www.example.com/foo/index.html にアクセスする際、プロキシサーバを利用する場合はプロキシサーバ名を答えよ。プロキシサーバを利用しない場合は "利用しない" と答えよ。
模範解答
proxy.a-sha.jp
解説
解答の論理構成
- URL から渡されるホスト名は www.example.com です。
- PAC ファイルの最初の分岐 b は、
“host が localhost、又は … host が A 社の社内利用ドメイン名に属する場合”
と記載されており、社内ドメイン ".a-sha.jp" を判定します。
しかし www.example.com は該当しないため “DIRECT” にはなりません。 - 次に c で、
“host が C 社 SaaS 利用ドメイン名に属する場合、又は host が C 社 SaaS 利用ドメイン名のシェルグロブ表現に一致する場合”
を判定します。条件は ".image.cdn.example" 又は "*.c-saas.example" ですが、やはり www.example.com には一致しません。 - したがって d の
“b、c どちらにも該当しない場合、FindProxyForURL 関数の戻り値として "PROXY proxy.a-sha.jp:8080" を返す。”
が実行されます。 - ポート番号は設問で問われていないため、プロキシサーバ名のみを答えればよく、正解は
proxy.a-sha.jp となります。
誤りやすいポイント
- example.com を ".image.cdn.example" と読み違え、c 条件に合致すると勘違いする。
- “DIRECT” 判定は IP アドレスがプライベートかどうかだけで決まると思い込み、社内ドメイン判定を見落とす。
- 返値 "PROXY proxy.a-sha.jp:8080" の ポート番号を解答に含めてしまう ミス。
- FindProxyForURL 関数は 上から順に評価 される点を忘れ、d まで到達しないと誤解する。
FAQ
Q: dnsDomainIs と shExpMatch の違いは何ですか?
A: dnsDomainIs は「ドットで区切られたドメイン末尾が完全一致するか」を判定し、shExpMatch はワイルドカードを含むシェルグロブ表現で文字列全体を評価します。
A: dnsDomainIs は「ドットで区切られたドメイン末尾が完全一致するか」を判定し、shExpMatch はワイルドカードを含むシェルグロブ表現で文字列全体を評価します。
Q: IP アドレスがプライベートでもドメインが社外の場合はどうなりますか?
A: b 条件では isInNet(ip, …) が先に評価されるため、プライベートアドレスなら "DIRECT" が返ります。ドメイン名の所属は関係しません。
A: b 条件では isInNet(ip, …) が先に評価されるため、プライベートアドレスなら "DIRECT" が返ります。ドメイン名の所属は関係しません。
Q: ポート番号を含めずにサーバ名だけ答える理由は?
A: 設問が「プロキシサーバ名を答えよ」と明示しており、戻り値の "PROXY proxy.a-sha.jp:8080" からホスト名部分だけを抜き出すためです。
A: 設問が「プロキシサーバ名を答えよ」と明示しており、戻り値の "PROXY proxy.a-sha.jp:8080" からホスト名部分だけを抜き出すためです。
関連キーワード: PACファイル, プロキシ自動設定, JavaScript関数, ドメイン判定, DNS解決
設問2:〔PACファイル導入検討〕について答えよ。
(3)図4について、isInNet(ip, “172.16.0.0”、“255.240.0.0”) のアドレス空間は、どこからどこまでか。最初のIPアドレスと最後のIPアドレスを答えよ。
模範解答
最初:172.16.0.0
最後:172.31.255.255
解説
解答の論理構成
- 【問題文】では、PACファイル中で
isInNet(ip, "172.16.0.0", "255.240.0.0")
という条件式を用いています。これは「変数 ip が "172.16.0.0" をネットワークアドレスとし、サブネットマスク "255.240.0.0" で示される範囲内に属するか」を判定する関数です。 - "255.240.0.0" を 2 進表記すると 11111111.11110000.00000000.00000000 であり、1 が立っているビット数は 12 ビットです。すなわち /12 プレフィックス、CIDR では 172.16.0.0/12 を示します。
- /12 では上位 12 ビットがネットワーク部となるため、下位 20 ビット(32−12)がホスト部です。
- ネットワークアドレス "172.16.0.0" で固定される上位 12 ビットは
172(10101100).16(00010000) → 10101100 0001 - 下位 20 ビットをすべて 0 にすると最小値、すべて 1 にすると最大値が得られます。
・最小値:172.16.0.0
・最大値:上位 12 ビットは固定、下位 20 ビットを 1 にすると十進で 172.31.255.255 - よって、対象のアドレス空間は
最初:172.16.0.0
最後:172.31.255.255
となります。
誤りやすいポイント
- サブネットマスク "255.240.0.0" を /20 と誤読し、計算を間違えるケース
- クラス B 私設ネットワーク(172.16.0.0~172.31.255.255)の範囲を暗記しておらず、ビット演算があいまいになるケース
- ネットワークアドレスとブロードキャストアドレスを含める・含めないの区別をつけられないまま範囲を答えてしまうケース
FAQ
Q: 「172.16.0.0/12」が RFC1918 で定義されたプライベートアドレスと同じ範囲なのですか?
A: はい。RFC1918 では 172.16.0.0 から 172.31.255.255 までの /12 がプライベートアドレス空間として予約されています。
A: はい。RFC1918 では 172.16.0.0 から 172.31.255.255 までの /12 がプライベートアドレス空間として予約されています。
Q: isInNet() の第 2 引数と第 3 引数はネットワークアドレスとサブネットマスクの順番ですか?
A: そのとおりです。第 2 引数がネットワークアドレス、第 3 引数がサブネットマスクです。順番を逆に書くと正しい判定ができません。
A: そのとおりです。第 2 引数がネットワークアドレス、第 3 引数がサブネットマスクです。順番を逆に書くと正しい判定ができません。
Q: 下位 20 ビットをすべて 1 にした結果がなぜ 172.31.255.255 になるのですか?
A: 172.16.0.0 から 172.31.255.255 までで増加するのは 16 ~ 31 の部分(第 2 オクテット下位 4 ビット)と第 3・第 4 オクテット(16 ビット)です。すべて 1 にすると 15 が加算されて 31、下位 16 ビットがすべて 1 で 255.255 になります。
A: 172.16.0.0 から 172.31.255.255 までで増加するのは 16 ~ 31 の部分(第 2 オクテット下位 4 ビット)と第 3・第 4 オクテット(16 ビット)です。すべて 1 にすると 15 が加算されて 31、下位 16 ビットがすべて 1 で 255.255 になります。
関連キーワード: サブネットマスク, CIDR, プライベートIPアドレス, ビット演算, ネットワークアドレス
設問2:〔PACファイル導入検討〕について答えよ。
(4)図4について、変数 ip がプライベートIPアドレスの場合、戻り値を “DIRECT” にすることで得られる効果を、“負荷軽減” の字句を用いて20字以内で答えよ。
模範解答
本社のプロキシサーバの負荷軽減
解説
解答の論理構成
- 図4のbの説明に「host が localhost、又は a で宣した ip がプライベート IP アドレスやループバックアドレス、又は host が A 社の社内利用ドメイン名に属する場合、FindProxyForURL 関数の戻り値として "DIRECT" を返す。」とあります。
- 問題文には「FindProxyForURL関数の戻り値が“DIRECT”ならば、プロキシサーバを利用せず直接通信を行う。」と明記されています。
- つまりプライベート IP アドレス宛ての通信は、本社のプロキシサーバを経由せず直接アクセスされます。
- プロキシを経由しない通信が増えれば「本社のプロキシサーバ」に掛かるトラフィック処理が減少します。
- したがって、「負荷軽減」の効果は「本社のプロキシサーバの負荷軽減」となります。
誤りやすいポイント
- “DIRECT” を返す条件を「社内ドメインだけ」と誤解し、プライベート IP 範囲の判定を見落とす。
- 「負荷軽減」の対象を各支社のUTMプロキシサーバと取り違える。
- “DIRECT” を「インターネットへ直接出る」とだけ理解し、社内向け通信でも適用される点を忘れる。
FAQ
Q: “DIRECT” を返すと社内通信は暗号化されなくなりませんか?
A: 社内ネットワーク内の通常通信ですので、プロキシによるSSLインスペクションが不要という判断です。VPNやHTTPSが必要な場合はアプリケーション側で行います。
A: 社内ネットワーク内の通常通信ですので、プロキシによるSSLインスペクションが不要という判断です。VPNやHTTPSが必要な場合はアプリケーション側で行います。
Q: プライベート IP 範囲を個別に列挙するのは冗長では?
A: PAC ファイルでは isInNet() による範囲指定が一般的で、3つの RFC1918 アドレスブロックをすべて列挙するのが定石です。
A: PAC ファイルでは isInNet() による範囲指定が一般的で、3つの RFC1918 アドレスブロックをすべて列挙するのが定石です。
Q: 本社のプロキシサーバのログ取得は問題ないのですか?
A: 社内向け通信は内部管理ネットワークで完結するため、外部アクセスの監査対象外とし、本社プロキシのログ負荷を抑える方針です。
A: 社内向け通信は内部管理ネットワークで完結するため、外部アクセスの監査対象外とし、本社プロキシのログ負荷を抑える方針です。
関連キーワード: PACファイル, プライベートIP, DIRECT接続, プロキシ負荷, isInNet
設問2:〔PACファイル導入検討〕について答えよ。
(5)本文中の下線⑥について、PACファイルは支社ごとに用意する必要がある理由を25字以内で答えよ。
模範解答
UTMプロキシサーバのFQDNが異なるから
解説
解答の論理構成
- PACファイルは、FindProxyForURL 関数の戻り値として利用するプロキシサーバを文字列で指定します。問題文には
“return "PROXY proxy.osaka.a-sha.jp:8080";”
とあり、大阪支社では proxy.osaka.a-sha.jp を明示していることが分かります。 - 一方、本社経由に切り替える場合は
“return "PROXY proxy.a-sha.jp:8080";”
と、FQDN が異なります。 - したがって支社が変われば、proxy.<支社名>.a-sha.jp の部分が拠点ごとに固有となり、単一の PAC ファイルでは正しく動作しません。
- このため下線⑥ “Bさんは各支社のPACファイルを作成した” という対応が必要になります。
以上より、「UTMプロキシサーバのFQDNが異なるから」となります。
誤りやすいポイント
- 「IPアドレスが違うから」とだけ書くと、設問は文字列で指定する FQDN の違いを問うているため減点されやすいです。
- PAC の条件分岐(.image.cdn.example など)を支社別に変更すると誤解しやすいですが、実際に支社ごとで変わるのは戻り値の FQDN 部分だけです。
- WPAD を使わない=1 本で済むと早合点し、PAC も 1 ファイルで良いと判断してしまうケースがあります。
FAQ
Q: 拠点ごとにポート番号が同じでも PAC ファイルを分ける必要がありますか?
A: はい。ポートが同じでも FQDN が拠点専用なので、支社ごとに別の文字列を返す PAC が必要です。
A: はい。ポートが同じでも FQDN が拠点専用なので、支社ごとに別の文字列を返す PAC が必要です。
Q: “DIRECT” を返せば支社共通で使えませんか?
A: C社SaaS 以外の通信は本社プロキシ経由にする方針なので、支社ごとに “DIRECT” を返すだけでは要件を満たしません。
A: C社SaaS 以外の通信は本社プロキシ経由にする方針なので、支社ごとに “DIRECT” を返すだけでは要件を満たしません。
Q: WPAD を併用すれば 1 つの PAC にまとめられますか?
A: WPAD を採用しないと決めたため、各 PC に直接 PAC の場所を設定する運用です。従って支社ごとに個別の PAC ファイルを用意するのが最も確実です。
A: WPAD を採用しないと決めたため、各 PC に直接 PAC の場所を設定する運用です。従って支社ごとに個別の PAC ファイルを用意するのが最も確実です。
関連キーワード: PACファイル, FQDN, プロキシ自動設定, HTTPS通信, IPsec VPN
設問3:〔WPAD導入検討〕について答えよ。
(1)本文中の イ ~ オ に入れる適切な字句を答えよ(イ、ウは順不同)。
模範解答
イ:DHCP
ウ:DNS
エ:HTTP
オ:URL
解説
解答の論理構成
-
WPAD が利用する仕組み
引用:
「WPADは、イやウの機能を利用して、PACファイルの場所を配布するプロトコルである。」
DHCP の “Option 252” と DNS の “wpad.<ドメイン名>” レコードは、ともにクライアントへ PAC ファイルの所在を知らせる代表的な方法です。したがって イ=「DHCP」、ウ=「DNS」と決定します。 -
PAC ファイルの取得プロトコル
引用:
「アプリケーションレイヤープロトコルの一つであるエを利用してエサーバからPACファイルのダウンロードを試みる。」
WPAD クライアントは上記 DHCP/DNS で得た URL に対し HTTP GET を行い wpad.dat を取得します。ここで利用するのは「HTTP」なので エ=「HTTP」となります。 -
WPAD を使わない場合の設定項目
引用:
「PCやWebブラウザにはPACファイルのオを直接設定する。」
クライアントが PAC を明示利用する際には “http://proxy.example.com/proxy.pac” のように URL を入力します。ゆえに オ=「URL」です。 -
結論
イ:DHCP
ウ:DNS
エ:HTTP
オ:URL
誤りやすいポイント
- 「HTTPS でダウンロードするはず」と思い込み、エ を “HTTPS” と誤答する。WPAD 仕様は基本的に HTTP。
- DHCP ではなく「NTP」「TFTP」などと混同する。Option 252 を思い出せば DHCP が正解。
- DNS と DDNS、mDNS などを混同し、ウ を誤る。
- オ を “パス” や “ファイルパス” と書いてしまう。ブラウザに入力するのは URL。
FAQ
Q: DHCP と DNS のどちらか片方だけでも WPAD は機能しますか?
A: はい。クライアントはまず DHCP を問い合わせ、応答がなければ DNS で wpad 名を検索するという順序で動作する実装が一般的です。
A: はい。クライアントはまず DHCP を問い合わせ、応答がなければ DNS で wpad 名を検索するという順序で動作する実装が一般的です。
Q: WPAD がセキュリティリスクとされる理由は?
A: 引用中の「悪意のあるイサーバやウサーバがあると⑦PCやWebブラウザが脆弱にさらされる可能性」とあるように、攻撃者が偽の DHCP/DNS 情報を与えると、ブラウザは悪意の PAC を自動取得し、通信の迂回・盗聴が可能になるためです。
A: 引用中の「悪意のあるイサーバやウサーバがあると⑦PCやWebブラウザが脆弱にさらされる可能性」とあるように、攻撃者が偽の DHCP/DNS 情報を与えると、ブラウザは悪意の PAC を自動取得し、通信の迂回・盗聴が可能になるためです。
Q: PAC ファイルを直接設定するメリットは?
A: WPAD 経由の自動検出を使わないため、前述の偽サーバによる攻撃リスクを低減できます。設定配布は手動または管理ツールで行う必要がありますが、安全性を優先する環境で採用されます。
A: WPAD 経由の自動検出を使わないため、前述の偽サーバによる攻撃リスクを低減できます。設定配布は手動または管理ツールで行う必要がありますが、安全性を優先する環境で採用されます。
関連キーワード: WPAD, PACファイル, DHCP, DNS, HTTP
設問3:〔WPAD導入検討〕について答えよ。
(2)本文中の下線⑦について、どのような脅威があるか。25字以内で答えよ。
模範解答
不正なプロキシサーバに中継される。
解説
解答の論理構成
- 本文では「WPADは、イやウの機能を利用して、PACファイルの場所を配布するプロトコルである。」と説明しています。つまり、WPADを用いると端末はネットワーク上のサーバから“自動で”PACファイルを取得します。
- さらに「悪意のあるイサーバやウサーバがあると⑦PCやWebブラウザが脆弱にさらされる可能性も指摘されている。」と明記されており、脅威の発生源が“悪意のあるサーバ”である点が示されています。
- WPADで取得するPACファイルには「return "PROXY …"」のような記述でプロキシ先を任意に指定できるため、攻撃者が偽PACファイルを配布すると通信経路を乗っ取られます。
- したがって下線⑦の脅威は「ユーザ通信が攻撃者の指定する“不正なプロキシサーバ”に転送されること」です。
- 上記より模範解答「不正なプロキシサーバに中継される。」となります。
誤りやすいポイント
- WPAD=自動設定と覚えるだけで、取得したPACが“信頼できない可能性”を失念しやすいです。
- 脅威を「DNSポイズニング」や「DHCPスプーフィング」と表現してしまうと、根本の被害(不正なプロキシ経由)を示せず減点対象になります。
- PACファイル自体はテキストなので「マルウェア感染」と誤解するケースがありますが、ここで問われているのは通信ハイジャックです。
FAQ
Q: PACファイルが偽装されると具体的にどんな被害が出ますか?
A: 攻撃者が用意したプロキシを経由させられ、機密情報の盗聴・改ざん・なりすましが可能になります。
A: 攻撃者が用意したプロキシを経由させられ、機密情報の盗聴・改ざん・なりすましが可能になります。
Q: WPADを安全に使う方法はありますか?
A: DNS/DHCPのアクセス制御、HTTPSでのPAC配布、意図しない名前解決を防ぐゾーン設定など多層対策が必要です。
A: DNS/DHCPのアクセス制御、HTTPSでのPAC配布、意図しない名前解決を防ぐゾーン設定など多層対策が必要です。
Q: PACファイルを直接ブラウザに設定する案の利点は?
A: 取得経路を固定できるため、WPAD由来の“偽PACの押し付け”リスクを排除できます。
A: 取得経路を固定できるため、WPAD由来の“偽PACの押し付け”リスクを排除できます。
関連キーワード: WPAD, PACファイル, プロキシ, DNSスプーフィング, 通信盗聴


