ネットワークスペシャリストの令和7年度 春季試験 午後Ⅰ 問2の解説を行っていきます。
設問1 (1)
知識の問題です。
【a】および【b】の部分として、『校内からインターネットへのアクセスに対し、NAPTを使って内部の【a】IPアドレスをISPACEから割り当てられた【b】IPアドレスに変換している。』とあります。
NAPTですので、『a:プライベート』IPアドレスを『b:グローバル』IPアドレスに変換しているということがわかります。
【c】の部分として、『L2SWは、最大30Wを給電する【c】機能をもち、』とあります。
ポイントは最大30Wという点で、解答は『c:PoE+』となります。
PoEは最大15.4W、そしてさらに上の最大90Wまで給電可能なPoE++もあります。
設問1 (2)
下線①として、『そのときにDHCPリレーエージェントは、giaddrフィールドにDHCPDISCOVERメッセージを受信したインタフェースのIPアドレスを格納している。』とあります。
DHCPDISCOVERはブロードキャストなので、同じドメイン内にしか届きません。
そのため、PCとDHCPサーバが同じセグメント内にいるときにしかDHCPによってIPアドレスを付与できない状態となってしまい、セグメントごとにDHCPサーバが必要な状況となってしまいます。
セグメントごとにDHCPサーバが必要なのは不便であり、そこで用いられるのがDHCPリレーエージェントです。
ネットワーク機器がDHCPDISCOVERを受信した際に、指定したDHCPサーバにユニキャストで転送を行うことで、PCとDHCPサーバが異なるセグメントにいてもDHCPによるIPアドレスの払い出しが可能となります。
DHCPリレーエージェントがただ単にIPアドレス払い出したいPCがいるよとDHCPサーバに転送したところで、DHCPサーバはどのセグメントから払い出しを行うべきかがわかりません。
そこで、giaddr(Gateway IP Address)フィールドに受信したインタフェースのIPアドレスを入れることで、DHCPサーバはどのセグメントから払い出しをするかがわかるようになります。
ということで解答例は、『PCが属するセグメント』と考えることができます。
設問2 (1)
下線②として、『これらの結果から、VさんはPCからEサービスにアクセスしたときの、(1)インターネット接続帯域の不足、及び(2)NAPT処理能力の不足の二つの仮説を立てた。』とあります。
重要な部分として、『Eサービスに対し、毎朝の自習ドリルの時間帯にアクセスすると、タイムアウト画面が出てログイン画面が表示されないと、一部かつ不特定の生徒から申告がある。』とあります。
ポイントとしては、後半の一部かつ不特定の生徒から申告があるという影響範囲です。
NAPT時にはプライベートIPアドレスをグローバルIPアドレスに変換し、その際に送信元ポート番号の変換も行われます。
プライベートIPアドレス:送信元ポート番号 → グローバルIPアドレス:ルータが付与した送信元ポート番号
重要な部分として『ルータのNAT変換テーブルのエントリー数の上限は65536であり』とあるように、a.b.c.d(グローバルIPアドレス):1(ポート番号)、a.b.c.d:2…というように順にポート番号の割り当てが行われていきます。
今回は自習ドリルという同じ宛先であり、Webブラウザからアクセスするので443が宛先となるだろうと考えられます。
送信元のグローバルIPも固定で、変数は送信元ポート番号のみとなり、a.b.c.d:1~63356まで割り当て切ってしまった場合、その後通信が発生しても割り当てるポート番号がないので通信に失敗します。
ポート数が足りないということがNAPT処理能力の不足となります。
途中で通信が終了したなどであれば、a.b.c.d:1が再度割り当てられることはありますが、今回のように大量に通信が行われる状況だと空いているポート番号が生まれず通信に失敗することがあります。
影響範囲としては一部なので大多数の生徒は通信できている、つまりはポート番号が枯渇するまでは通信できている、そして、ポート番号の割り当ては先着順なので不特定という点でもNAPTの問題に当てはまっていると考えることができます。
ということで解答例は、『ログイン画面が表示されない事象が一部かつ不特定のPCだから』と考えることができます。
ちなみに一般的なルータでは1グローバルIPアドレスあたりのポート数は65535(2^16)で、ウェルノウンポート(0~1023)は用いられないことが多いので1023を引いた約64000が目安となります。
このポート数をどうやって設定で増やすかというと、TCPとUDPで別管理にする設定を用いれば×2倍になります。
さらに、それ以上増やしたい場合は基本的には設定というよりも、グローバルIPアドレスの数を増やしていくことが一般的かと思います。
設問2 (2)
【d】の部分として、『実行速度を改善するために、インターネット接続サービスのベストエフォート型から【d】型への契約変更』とあります。
また、『この時ルータのCPU負荷にはまだ余裕があることも確認した。頭打ちの原因をISPに問い合わせて調査したところ、現在の契約では構成や時間帯によって実行速度はその程度になるとのことだった。』とあります。
このことから、ルータの性能問題ではなく、回線の速度の問題であるとこのことからわかります。
主に法人向けインターネット回線としては、主に3種類の契約があります。
現在契約しているベストエフォート型は最大で1Gbps出ますが、始業時間など他の利用者も多く利用する時間帯によっては最大から程遠い200Mbps(例)しか出ないという状況が起こり得ます。
利用者の多い時間帯である夕方~夜にかけて遅くなるような一般的の家庭用の回線をイメージして頂ければと思います。
問題のように時間帯によって通信が遅くなることが嫌な場合に利用するのが帯域確保型です。
最低の速度を保証してくれるという契約です。
最大は1Gbps出るけど、どんな時間帯でも例えば300Mbps以上は確実に出るという最低の速度を保証してくれます。
さらに上の契約としては帯域確保型という契約があります。
1Gbpsという契約をしたら、どんな時間帯でも絶対に1Gbps出るという、最大も最低も保証してくれます。
ということで、回答は『d:帯域確保』となります。
公式解答例は帯域確保のみとなっていますが、今回の問題ですと最大の速度ではなく実効速度をもう少し高くしたいというニーズですので、『d:帯域保証 or 帯域確保』のどちらでも良いと考えられます。
ちなみにですが、ベストエフォート<帯域保証<帯域確保の順にお値段が高くなっていきます。 そして保証する速度によってもお値段は変わっていき、速度や保証をモリモリにすれば月額20万とかも超える場合もありますので、提供したいサービスレベルに応じた正しい選択が必要になってきます。
設問2 (3)
設問2 (1)で触れましたが、NAPTは以下のように変換が行われます。
プライベートIPアドレス:送信元ポート番号→グローバルIPアドレス:ルータが付与した送信元ポート番号
つまりルータ自身が割り当てている値は『(ⅲ)、(ⅳ)』となります。
設問2 (4)
下線部③として、『PC1台当たりのセッション数を最大200と見積もり、全てのPCが問題なく利用できるように、NAT変換テーブルのエントリー数を計算してルータに設定する』とあります。
現状は『NAT変換テーブルのエントリー数の上限は65536であり』とあります。
PC1台当たり200セッションですので、単純に割り算をしてあげればよく、65535÷200≒327となりますので、現状の設定で問題なく利用できるPC台数の上限は『327』となります。
重要な部分として、冒頭に『600台のPCを』とありますので、全てのPCつまりは600台のPCが問題なく同時利用する必要があります。
PC1台当たり200セッションですので、600×200=12000で、全てのPCが問題なく利用するためのNAT変換テーブルのエントリー数の最低は『120000』となります。
設問3 (1)
下線部④として、『HoL(Head of Line)ブロッキングの問題が表面化してきました。これは一般的に、直列処理の場合、全ての処理が完了するまでに時間が掛かるという問題』とあります。
図4のHTTP/1.1の部分および直列処理ということからイメージできるかと思いますが、1つの処理が行われてから次の処理に進みます。
ということで、『先行の処理が終わるまで後続の処理が待たされるから』と考えることができます。
さらに今回の環境で言えば、インターネット接続帯域不足であるため、通信が正常にできず遅延が発生する可能性があります。
先の通信に失敗した場合は再送が行われ通信を試みますが、この間次の処理は行われませんので、余計にこの問題が深刻化する可能性があると考えられます。
設問3 (2)
知識の問題です。
【e】および【f】の部分として、『PCからHTTP【e】とそれに対するサーバからのHTTP【f】』とあります。
PCから送信されるのはHTTP『e:リクエスト』で、サーバから送られるのはHTTP『f:レスポンス』です。
【g】の部分として、『ストリームにはそれぞれ【g】が付与され』とあります。
解答は『g:ストリームID』となります。
【h】の部分として、『HTTPセッションの多重化と【h】処理ができるようになっています。』とあります。
解答は『h:並行』処理となります。
HTTP/2.0では並行処理が行えるようになったため、先のリクエスト→レスポンスという処理を待たずにどんどん処理を行うことができます。
これはブラウザ上で表示されるまでの時間が早くなるなど、ユーザ側としてはメリットがあります。
一方でエンジニア側としてはHTTP/1.1では順番に行われていた処理が、グチャグチャな順番で行われます。
パケットキャプチャで見ると本当にグチャグチャな順番なので、トラブルシューティングのときに少し大変だったりします。。
設問3 (3)
下線⑤として、『EサービスのサーバがもしHTTP/3に対応していれば、表2の保持時間を調整することで、もっとNAT変換テーブルを有効活用できる』とあります。
重要な部分として、『HTTP/3では、TCPの代わりにUDPを利用し、』とあるようにUDPを用います。
そして、表2においてUDPの保持時間は300秒(5分)と長い時間となっています。
UDPはTCP(FIN)と異なり通信の終了を表すシーケンスがありません。
なので、UDPが無通信の状態や通信が行われなくなってから一定時間経ったらNAT変換テーブルから削除し、割り当てていたポート番号を再利用することができるようになります。
現状はこの時間が長いため、ポート数の枯渇が起きやすい状態であると考えることができます。
この時間を短くすることでNAPT変換テーブルをより有効活用することができます。
ということで解答例は『調整:UDPの保持時間を300秒より小さくする。』、『効果:未使用のUDPフローによるNAPT変換エントリーを早期に削除できる。』と考えることができます。
通信途中にエントリーが削除されてしまう可能性があるため、調整する時間は時間は短すぎてもいけません。
ちなみに、TCPはSYN→SYN+ACK→ACKの3ウェイハンドシェイクから始まり、FIN+ACK→FIN+ACK→ACKで終わるというお利口さんな通信だけではありません。
表2の最初のTCP(SYN)はSYNだけが送られ、到達性のない宛先やサーバが応答しない場合に発生し、この状態をハーフオープンと呼びます。
FIN+ACK送信後に応答がないハーフクローズという状態もあり、この無通信状態で一定時間経ったらテーブルから削除するという設定もあります。
一言
出題テーマは『DHCP・NAPT・HTTP』でした。
DHCPはDHCPリレーエージェントに関して出題がありました。
NAPTは基本的な概念からNAT変換テーブルまで少し踏み込んだ内容が出題されていました。
HTTPに関してもHTTP/1.1・2.0・3.0の違いといった少し踏み込んだ内容が出題されていました。
DHCPリレーエージェント・NAT・NAPTはネスペを受ける方としては理解しておいて欲しいですが、HTTPは少し知識が必要なため難しかったかもしれません。
HTTPはセキュリティ(情報処理安全確保支援士)でも出題される内容ですので、将来的に取得予定であればこれを機に覚えておいても損ではありません。
総じて、難易度としては普通だったと思います。
公式解答例と予想配点
予想配点はあくまで予想ですので参考程度でお願いします。
配点 |
||
| 設問1 (1) | a:プライベート b:グローバル c:PoE+ |
|
| 設問1 (2) | PCが属するセグメント | |
| 設問2 (1) | ログイン画面が表示されない事象が一部かつ不特定のPCだから | |
| 設問2 (2) | 帯域保証 | |
| 設問2 (3) | (ⅲ)、(ⅳ) | |
| 設問2 (4) | PC台数:327 エントリー数:120,000 |
|
| 設問3 (1) | 先行の処理が終わるまで後続の処理が待たされるから | |
| 設問3 (2) | e:リクエスト f:レスポンス g:ストリームID h:並列 |
|
| 設問3 (3) | 調整:UDPの保持時間を300秒より小さくする 効果:未使用のUDPフローによるNAPT変換エントリーを早期に削除できる。 |
引用元
問題および解答例に関しては、『独立行政法人 情報処理推進機構(IPA)』より引用しています。

YouTube解説動画
鋭意作成中につき少々お待ち下さい。
他の年度の解説



























