こんにちは、こじろうです。
この記事では、N/Wスペシャリスト平成27年午後Ⅰ問1に挑戦していきたいと思います。
別記事のネットワークエンジニアのススメでも紹介しましたが、文系SEからするとシステムエンジニアよりもネットワークエンジニアになった方が良いキャリアを気づかる可能性があります。
僕自身も、プログラマ➡システムエンジニア➡ITコンサルタントとキャリアチェンジしてきましたが、所々、ネットワークエンジニアとして活動し、成果を出すことに成功してきました。
文系SEのみなさまにも是非、ネットワークの知識を蓄えて頂きたく、IPAが主催しているネットワークエンジニアの資格試験について、僕なりの解答方法と、IPAが公表している模範解答を紹介していきたいと思います。
【この記事でわかること】
- N/Wスペシャリストの問題を解く上で持つべき考え方
- 平成27年午後Ⅰ問1における各設問の考え方
- 1 設問を解き始める前の前提
- 2 問題文を読みながら僕が考えていった内容
- 3 SSOサーバにおいて全ての通信の中継を行う[空欄ア]方式がある。
- 4 サービス要求はSSOサーバへ[空欄イ]される…
- 5 HTTP応答パケットの[空欄ウ]ヘッダーフィールドに…
- 6 下線部(Ⅰ)CookieのDomain属性を限定した…
- 7 下線部(Ⅱ)Cookieが平文でネットワークに流れないよう、表1中のサーバから返される全てのページをSSL/TLS対応ページに変更した…
- 8 認証リクエストの宛先がこのVIPアドレスとなるように[空欄エ]サーバに設定を行った…
- 9 下線部(Ⅲ)Cookieなどのレイヤ7の情報に振り分け先サーバを選定するような方式に対応できない…
- 10 VIPアドレスを付与した[空欄オ]インターフェース…
- 11 下線部(Ⅳ)IPアドレス重複エラーが検知…
- 12 下線部(Ⅴ)SSOサーバにARP関連の設定を加えて対処した
- 13 設問2:PCはどの時点でアクセスチケットを得るか…
- 14 ネットワークの勉強をして良かったなーと思うこと
設問を解き始める前の前提
詳細は以下の記事を読んで頂きたいのですが、過去問に挑戦する前に頭に入れておいて欲しいことが2つあります。参考:【文系SE】ネットワークスペシャリストー解答時のフレームワークー
- 問題文を読みつつ設問を推測する。(設問を読んでから考えていては間に合わない)
- 問題文を読んでいく中で「これ、聞かれるだろうな」と推測する。
それでは、いってみましょう!!😃
問題文を読みながら僕が考えていった内容
SSOサーバにおいて全ての通信の中継を行う[空欄ア]方式がある。
中継機能を司るサーバを一般的にプロキシサーバと呼びますが、外部からのアクセスを処理するプロキシサーバを特にリバースプロキシサーバと言います。(プロキシサーバは、元々は内部からインターネットへのアクセス時に経由され、プライベートIPアドレスをグローバルIPアドレスに変換したり、外部へのアクセスルートを一元化したり…いった目的で考案されたものなので、パケットの流れが逆になる外部からのアクセスを処理するプロキシサーバは’`リバース’プロキシと呼ばれます。)
問題文では、エージェント方式を採用との記載がありますが、こちらとの違いは、エージェント方式の方がSSOサーバへの負荷は下げられるが、管理が煩雑になる、といったところでしょうか。
模範解答は’リバースプロキシ’でした。
サービス要求はSSOサーバへ[空欄イ]される…
処理を他のサーバや機器に実施させることを、ネットワークの世界ではよくリダイレクトと言います。
本問では、PCからアプリケーションサーバが要求を受け付けますが、SSOサーバに処理を依頼しています。
勘違いしがちですが、通信の流れは、PC⇒アプリケーションサーバ⇒PC⇒SSOになります。
模範解答は’リダイレクト’でした。
HTTP応答パケットの[空欄ウ]ヘッダーフィールドに…
HTTPプロトコルのヘッダ、並びにCookieについての知識がいないと解答は厳しいでしょう。
参考:ネットワークスペシャリストーHTTP
模範解答は’Set-Cookie’でした。
下線部(Ⅰ)CookieのDomain属性を限定した…
設問2(1)ですが、SSO通信をする際、関係の無いサーバへのログイン許可等をしないよう、対象のサーバに対する要求かどうかHTTPパケット内のDomain属性で判別します。
問題文内の図を見ると、アプリケーションサーバのドメインはURLの中盤から後半と読み取れますね。
設問3⑴ですが、模範解答は’a-sha.example.com’でした。
下線部(Ⅱ)Cookieが平文でネットワークに流れないよう、表1中のサーバから返される全てのページをSSL/TLS対応ページに変更した…
設問3⑵ですが、’予期しない~’とは何を想定しているのかから考えていきます。
前提として、たとえSSL/TLSを設定しても、クライアント側が’http:~’と、平文でのアクセスを要求すると、サーバは平文でのやり取りを実施してしまいます。
つまり、この設問では、クライアントが、’SSL/TLS設定をサーバ側で実施はしているが、httpでアクセスしてきた時(平文での通信が発生してしまう)ことを想定しており、これが予期しない通信となります。
この場合、サーバ側でできることは2つで…
- httpの通信を全て拒否する
- httpヘッダに’Secure’属性を付与する
このうち、上記の通信の拒否は、設問文に記載されている要件である’Cookieを発行する時に実施すべき方策’に合致しません。
模範解答は’CookieにSecure属性をつける’でした。
認証リクエストの宛先がこのVIPアドレスとなるように[空欄エ]サーバに設定を行った…
アドレスの名前解決ときたらDNSです。本文内の図でも、右下に”内部DNSサーバ”とありますね。
模範解答は’内部DNS’でした。
下線部(Ⅲ)Cookieなどのレイヤ7の情報に振り分け先サーバを選定するような方式に対応できない…
設問4⑴ですが、SSOはレイヤ7で、一方負荷分散はTCPプロトコルを利用している、ここが解答のポイント・要件・制約になります。
負荷分散の基準を、TCPコネクション(PCからSYNパケットを送信するところから開始される)毎に実施しているため、一度SSOサーバとTCPコネクションを張ってしまったら、当該PCはコネクションが切れるまで同じSSOサーバと通信を行うことになります。レイヤ4(TCP)レベルで負荷分散するというルールになっている以上、HTTPパケット内のCookieフィールドに別のSSOサーバと通信するような記載をしても、無視されてしまうわけです。
模範解答は’SYNパケットにはレイヤ7の情報が格納されていないから’でした。
VIPアドレスを付与した[空欄オ]インターフェース…
自NICに設定されていないIPアドレスが宛先になっているパケットではなるが、それを受信したい場合に利用するのがループバックインターフェースです。
ループバックインターフェースに、すでに他の機器に設定されているIPアドレスを設定しても重複されているとは見なされないため、こういった設定が可能となります。
模範解答は’ループバック’でした。
下線部(Ⅳ)IPアドレス重複エラーが検知…
設問4⑵ですが、IPアドレス重複エラー検知と言えば、GARP以外ありません。
模範解答は’GARP’でした。
下線部(Ⅴ)SSOサーバにARP関連の設定を加えて対処した
設問4⑶ですが、まずはARPテーブルを更新しないと、なぜエラーが発生するのか、理由を確認します。
その理由とは、SSOサーバがVIPアドレス(これはLBにも設定されている)に対するARP要求(GARPとは限らない)に応答してしまう点にあります。
VIPのIPアドレスが付与されている機器(LB)と、SSOサーバの双方がARPリクエストに応答してしまう…
これを防ぐには、SSOサーバがARP要求に応答しないように、ARP関連の設定を加えてあげればよいのです。
模範解答は’VIPアドレスに対するARPリクエストに応答しないように設定する’でした。
設問2:PCはどの時点でアクセスチケットを得るか…
図2において、PCからUserIDとPasswordを送出した後且つ、SSOサーバがアクセスチケットを確認する前のタイミングになりますので、⑤になります。
模範解答は’⑤’でした。
ネットワークの勉強をして良かったなーと思うこと
ITコンサルタントとしての現場において、プロジェクト内でトラブルシューティングやシステムインフラ設計において最も頼られる存在になり、安定した案件・プロジェクトアサインが実現できるようになりました。
参考:コンサルファームでアベイラブルになったら
文系SEであっても、こういった知識があると一目置かれた存在になれますし、キャリアアップの一助になります。
実際、僕はプログラマ➡SE(ネットワークエンジニア)➡ITコンサルタントとキャリアップしてきましたが、ITコンサルタントとして活動している今も本記事の様な技術的な部分を大事にしているため、’他のコンサルタントとは差別化された人材になれているな’と感じています。
本記事は技術的な内容でしたが、キャリアに関する情報をお探しの方はこちらも是非、ご覧ください。
参考:【文系 SE】ネットワークエンジニアのすすめ
それでは、Tchau◎
こじろう