Webシステムの構成変更（ネットワーク）ー午後

応用情報技術者平成30年春期 午後問5

ファイル：2018h30h_ap_pm_qs.pdf

参照：
https://www.ap-siken.com/kakomon/30_haru/pm05.html

メモも簡単に記載します。
詳細の分析は、上記リンクをご参照くだいますようよろしくお願いします。


**１、本文中のa～cに入れる適切な字句を答えよ。**
aは、DNSの機能を使用した負荷分散と言えば「DNSラウンドロビン」です。具体的には、以下のように同じホスト名に対して複数のAレコードを設定することで、アクセスを複数のコンピュータに（単純に順繰りに）振り分けます。

　www IN A 200.x.y.1
　www IN A 200.x.y.2
　www IN A 200.x.y.3

DNSの機能では死活監視ができず、1つのWebサーバがダウンしてもアクセスを分配し続けてしまうため、可用性対策としては負荷分散装置に劣ります。


・ラウンドロビン
ラウンドロビン (英: Round-Robin) とは、様々な場面で用いられるが、大抵の場合において「何かの役割・出番をたくさんの物事・人員で交替しあう」というような意味で用いる。 例えば、ラウンドロビンパーティとは参加者各自の習慣で小さなパーティを一つずつ参加者がまわって歩くようなパーティのやり方をさす。



＜＜Webシステムの処理能力と可用性の向上策の検討＞＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/a8402d39-f930-1997-a609-957192507f3e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/fdea0953-92ba-9083-2775-2becef92a543.png)


bはIPアドレスです。
独自のネームサーバを使用する際にはレジストラ（ドメイン名取得業者）を通じて、ネームサーバのFQDNとIPアドレスの組みを登録しておく必要があります。これは一般的にホスト登録と呼ばれる作業です。これをせずにDNSレコードを設定してもエラーとなってしまい名前解決できません。

グローバルIPアドレス（私の答え）
→
IPアドレス（参考答え）


DNSサーバのレコードに、そのIPアドレスはグロバールアドレスですか？？私は分からないです。
下記記事によると、「固定のグローバルIPアドレス」らしいです。
https://knowledge.cpi.ad.jp/basic-knowledge/ipip/



cはスレーブです。
ゾーン情報とは、名前解決をするために必要な（DNSレコードで構成される）情報であり、マスタとスレーブ間で定期的に同期させておく必要があります。

・FQDN（Fully Qualified Domain Name：完全修飾ドメイン名）
IPアドレスはインターネット上のコンピュータを特定するための番号です。
FQDNは、IPアドレスと同じくネットワーク上のコンピュータを特定できる文字列です。
FQDNは人間のためのものです。コンピュータ同士が通信する時はIPアドレスが使われます。そのため、FQDNとIPアドレスを互いに変換できる仕組みが必要でした。この仕組みを「DNS（Domain Name System）」と言います。



**２、図3中のd～fに入れる適切なIPアドレス又はFQDNを解答群の中から選び，記号で答えよ。**
dは、スレーブDNSサーバである「ns-asha.exapmle1.ne.jp」です。
NSレコードは、そのドメインのゾーン情報を保持するネームサーバのホスト名を指示するレコードです。
上記１の「DNSラウンドロビン」機能により、NSは二つの理由は、マスタ/すレープDNSサーバがあるでしょう。

eは200.α.β.1　です。
Aレコードは、ドメイン名・ホスト名に対応するIPアドレスを指定するためのレコードです。
マスタDNSサーバの管轄ドメインは「example.co.jp」であり、ownerフィールドには"ns"が指定されているので、eには「ns.exapmle.co.jp」のIPアドレスが入ることになります。

fは200.α.β.4です。
Webサイトのホスト名は「w3.example.co.jp」から、ownerフィールドの"w3"はWebサイトへアクセスする際のホスト名だとわかります。変更後の構成では、Webサーバが2台配置され負荷分散装置の機能によって冗長化することになっています。すなわち、外部からのアクセスはいったん負荷分散装置に送られ、そこから適切なWebサーバにアクセスを振り分けるという流れで処理されます。

＜＜図３＞＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/4f3201b4-f716-feee-242e-54b4b336b627.png)

＜＜図２＞＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/2e15367d-ce09-3436-3f3d-4df1f5c839fa.png)


**３、〔クラウド型WAFサービスの利用〕について，(1)～(3)に答えよ。**
（１）、本文中の下線①によって，Webサイトの利用者が変更しなくてもよくなるものを，15字以内で答えよ。

CNAMEは、あるホスト名に対して別名(エイリアス)を指定するレコードです。
図4のレコードを追加すると、「w3.example.co.jp」にアクセスしてきた利用者を、自動的にWAFサービスのFQDNである「waf-asha.example1.ne.jp」に転送できます。このようにWAFサービスを利用する場合でも、CNAMEの設定により、利用者はアクセスするWebサイトのURLを変更する必要がなくなります。

WebサイトのURL　（私の答え）
→
Webサイト利用時のURL　（参考答え）

多分、「N主任とM課長の会話」によると、Webサイト使用中のURL　かな。。。と推察します。
ただ、WebサイトのURLとWebサイト利用時のURL　は違いは？？？　ないでしょう。(´･_･`)


＜＜クラウド型WAFサービスの利用＞＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/4408183a-9b97-076d-13b7-5b0492bdeafb.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/54f61f46-9f0a-bacb-98b9-9edbcbfb70e7.png)

＜＜N主任とM課長の会話＞＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/c1fe2765-08b4-fc01-fa8a-39412ebf35b9.png)



（２）、本文中の下線②について，変更する行番号及び変更する必要のある資源レコードのフィールド名を，それぞれ答えよ。

DNSの設定上、CNAMEを設定したホスト名は、他のいかなるレコード（AレコードやNSレコードなど）とも重複して設定してはならないというルールがあります。例えば以下のような設定は違反となります。
　・www IN A 200.x.y.1
　・www IN CNAME hogehoge.com
※同じwwwのに、二つ異なる宛先に指定しますね。
　これは、「DNSラウンドロビン」だとすると、よいですが、CNAMEのときは、ルール違反となります。

マスタDNSサーバのゾーン情報に図4のCNAMEレコードが追加されると、同じ"w3"をownerフィールドとする行番号4のAレコードとの競合が生じます。これを解消するために、Webサイトのホスト名である"w3"を変更し、変更後のホスト名でAレコードのownerフィールドを書き換える必要があります。

例えば、ホスト名がw3からw4に変更し、WebサイトのURLは、
https://w3.example.co.jp
→
https://w4.example.co.jp
に変更しますね。

そうすると、CNAMEレコードの競合が解消できますね。
ただ、ユーザさんの利用中URLは、https://w3.example.co.jpのままでは大丈夫ですか？　とは、
大丈夫ですね。

流れは下記になります：
・ユーザより、w3のリクェストが来て、
・WAFサーバに行きます、
・WAFサーバのチェックがOKとすると、w4に行きます、　（※w4は、全然内部のものになる）
・結果をユーザに返す
とのこと。



＜参考：ホスト名、ドメイン、FQDN＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/f6fbc736-862c-83f7-38c1-37a19f672951.png)

＜URL＞
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/2a2287fa-a225-26fc-244c-c9b439f25f76.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/591618/d7ba6223-f9c0-5948-a9e6-4ef43c58f50b.png)



（３）、本文中の下線③について，アクセス制御の内容を，35字以内で述べよ。

WAFサービスを利用することでA社Webサイトへのアクセスは全てWAFサービスを経由することになります。
しかし、
・（"w3"から変更された）A社WebサイトのURLを指定したり、　（例：https://w4.example.co.jp）
・IPアドレス直打ちしたりすれば
外部から直接Webサイト（負荷分散装置及びWebサーバ）へのアクセスができてしまいます。
このためWAFサービスを経由しない接続を遮断するためのアクセス制御が必要となります。

正当なアクセスならば必ずWAFサービスを経由するので、宛先がWebサイトであるアクセスについては送信元がWAFサービスのFQDNになっているものだけを許可するルールをFWに追加することになります。


IPアドレスにより直接にアクセスするのをURLフィルタリングする　（私の答え）
→
WebサイトへのアクセスをWAFサービスだけから許可する（参考答え）


本当は、IPアドレスだけではなく、ホスト名変更後のWebサイトURLも対象ですね。ショック！！


参照：
IPアドレスとFQDNの関係
https://www.geolocation.co.jp/learn/dns/02.html


どこがドメイン名？どこがホスト名？
https://www.cman.jp/network/term/domain/

URLとは
https://www.cman.jp/network/term/url/