IP

IPアドレスによる通信

TCP/IPネットワークに接続されているコンピュータにはネットワーク内でユニークなIPアドレスが割り振られています。通信を行うときはIPアドレスを使って相手を指定します。
※IPアドレスは32ビットの情報で構成されます。

サブネットマスク

サブネットマスク

サブネットマスクは192.168.1.3 255.255.255.0や192.168.1.3/24のようにIPアドレスとペアで表記されます。IPアドレスは前半がネットワーク部、後半がホスト部というように意味を持って分けられます。サブネットマスクはネットワーク部とホスト部がどこで分けられているかを示すものです。

サブネットマスクを2進数表記した時の1と0の境目が、ネットワーク部とホスト部の区切りになります。
ope04_fig02[1]

ネットワーク部とホスト部

IPアドレスはネットワーク部の情報をもとに目的のネットワークまで到達し、そのネットワーク内でホスト部のアドレスを持つコンピュータを探すという手順になっています。

ネットワーク部はどこのネットワークに所属しているかを表す情報です。通信をしようとしたときに自分のIPアドレスと相手のIPアドレスを見て、ネットワーク部の数字が同じならば、相手は同じネットワークに所属していることがわかります。異なる数字であれば相手は異なるネットワークに所属しています。
※同じネットワークのホストを接続するときには、ハブやスイッチを使います。異なるネットワークを接続するときにはネットワークの間にルータを設置し、ルータを経由して通信が行われます。

ネットワークアドレスとブロードキャストアドレス

ネットワークアドレス

ネットワークアドレスはネットワーク全体を表すIPアドレスです。ネットワークアドレスはそのネットワーク内で一番小さいIPアドレス、つまりホスト部がすべて0になっているアドレスです。
ip13[1]

ブロードキャストアドレス

ブロードキャストアドレスはネットワーク内のすべてのホスト宛に通信するためのIPアドレスです。宛先をブロードキャストアドレスにするとネットワーク内のすべてのホストがそれを受け取ります。ブロードキャストアドレスはそのネットワーク内で一番大きなIPアドレス、つまりホスト部がすべて1になっているアドレスです。

クラス

クラス

IPアドレスは5つのクラスに分類されます。クラスごとにIPアドレスの範囲とサブネットマスクが決められています。
002-20081210-01-07[1]
※実際に使用できるのはクラスA~CのIPアドレスです。クラスDはマルチキャストアドレスとして利用され、クラスEは研究用にリザーブされているためホストに設定しているIPアドレスとしては使うことはできません。

VLSMとFLSM

あるネットワークをサブネット化するときに、すべてのサブネットで同じサブネットを使用する環境をFLSM(Fixed Length Subnet Mask:固定長サブネットマスク)といいます。FLSMはホストの台数に関係なく同じサブネットマスクのネットワークを使うのでIPアドレスを効率的に使うことができません。
VLSM(Variable Length Subnet Mask:可変長サブネットマスク)は、異なるサブネットマスクを持つネットワークが混在している環境です。ホストの台数に合わせて適切な大きさのサブネットマスクを使用しているので、IPアドレスが効率的に利用できます。

アドレスタイプ

IPアドレスは3つのアドレスタイプがあります。

    ユニキャストアドレス
  • ブロードキャストアドレス
  • マルチキャストアドレス

ユニキャストアドレス

単一のホストに向けたアドレスです。ユニキャストアドレス宛に送信されたパケットはそのIPアドレスを持つ特定のホストが受け取ります。

ブロードキャストアドレス

ネットワーク内のすべてのホストに向けたアドレスです。ブロードキャストアドレス宛に送信されたパケットはネットワーク内のすべてのホストが受け取ります。

ブロードキャストアドレスには、ホスト部が全部1のアドレスとIPアドレスが全て1の2種類があります。全社をディテックテッド・ブロードキャストアドレス、後者をリミテッド・ブロードキャストアドレスといいます。
リミテッド・ブロードキャストアドレスは同一ネットワーク内のすべてのホストに届きますが、ルータを超えることはありません。
ディテクテッド・ブロードキャストアドレスはルータを超えた他のネットワークを指定することで、ルータを超えたネットワークにブロードキャストを運ぶことも可能です。

マルチキャストアドレス

特定のグループに属するホストに向けたアドレスです。あるマルチキャストアドレス宛に送信されたパケットはそのマルチキャストグループに属するすべてのホストが受け取ります。

グローバルIPアドレスとプライベートIPアドレス

IPアドレスにはグローバルIPアドレスとプライベートIPアドレスがあります。

グローバルIPアドレスはインターネットに直接接続しているホストに割り当てるためのIPアドレスです。プライベートIPアドレスは組織内部のネットワークのようにインターネットに直接接続しないホストに割り当てるために用意されているIPアドレスです。

プライベートIPアドレスの範囲は次のように決められています。
a5f96b31563080b39eba3dc3abf0139c[1]

IPヘッダフォーマット

相手にデータを送信するとき、データに対して宛先IPアドレスなどの制御情報が付加されます。制御情報を入れるフィールドをヘッダといいます。IPヘッダには宛先IPアドレスのほかにも様々な情報が含まれています。フォーマットは次のようになっています。
IPheader[1]

レイヤ2スイッチの機能

レイヤ2スイッチには以下の3つの機能があります。

  • アドレス学習
  • 転送/フィルタリング
  • ループ回避

アドレス学習

アドレス学習とはスイッチがフレームを受信した際に、ポート番号と送信元MACアドレスの対応をMACアドレステーブルに記録することです。

転送/フィルタリング

転送/フィルタリングとは、スイッチがフレームを受信した際に、宛先MACアドレスとMACアドレスを照合して該当するポートにだけフレームを転送することです。

ただし該当するポートが受信ポートだった場合にはフレームは破棄されます。また該当するポートがない(MACアドレステーブルに未登録)場合は、全ポートに転送されます。(フラッディング)

LANスイッチタイプ

スイッチは転送/フィルタリング処理を行うため、フレームの一部またはすべてをバッファに格納し、出力するポートを判断します。フレームのどこまでを読み込んで処理するかによって3つのスイッチタイプから選択することができます。

ストアアンドフォワード

フレーム全体を読み込んでバッファリングし(メモリに丸々ためこむ)、FCSによるエラーチェックを行ってから宛先ポートに出力します。
※特徴
・信頼性が高い
・レイテンシも発生する
・現在主流で利用される

カットスルー

カットスルーはフレームヘッダの先頭6バイト、つまりMACアドレスだけを見てバッファリングせずにすぐに宛先ポートに出力します。
※特徴
・レイテンシが小さい
・信頼性が低い
・通信速度が異なるポートでは使えない

フラグメントフリー

フラグメントフリーはカットスルーの拡張版です。フレームヘッダの先頭64バイトをチェックして転送処理を行います。64バイトをチェックすることでエラーの中で最も多いコリジョンフラグメントを取り除くことができます。

レイヤとネットワーク機器

レイヤとネットワーク機器

リピータ、ハブ

リピータとハブはレイヤ1で動作する機器です。ケーブル内を流れる信号はケーブルを流れる間に減衰したりノイズが入ったりします。これを増幅・整形するのがリピータやハブの機能です。

※ハブではあるポートから入力された信号は他のすべてのポートに出力されます。この動作をフラッディングといいます。

ブリッヂ、スイッチ

ブリッヂとスイッチは、レイヤ2で動作する機器です。フレームヘッダの中の宛先MACアドレス情報を見て、宛先の機器が存在するポートにだけフレームを転送します。
ブリッヂがソフトウェエで処理を行うのに対して、スイッチはハードウェアを使用するため高速に処理ができます。

ルータ、レイヤ3スイッチ

ルータをレイヤ3スイッチはレイヤ3で動作する機器です。信号をパケットとして認識し、パケットヘッダの情報を見て処理を行います。
※宛先のIPアドレス情報を見て出力するポートを決定します。

コリジョンドメインとブロードキャストドメイン

コリジョンドメイン

コリジョンドメインとはコリジョンが発生する可能性がある範囲のことです。ハブで接続されたネットワークでは複数のホストがメディアを共有しており、同時にデータを送信するとコリジョンが発生します。したがってハブで接続された範囲全体が1つのコリジョンドメインとなります。

スイッチはほすとから送信されたデータをメモリのバッファに保存して順番に処理を行うことができます。そのためスイッチとホストが1対1接続になっています。

ブロードキャストドメイン

ブロードキャストドメインとはブロードキャスト(一斉通知)が到達する範囲のことです。ブロードキャストドメインはルータによって分割される(ルータを超えない)範囲になります。

イーサネット

イーサネット

イーサネットはネットワークインターフェース層(OSI参照モデルの物理層とデータリンク層)のプロトコルで隣接しているコンピュータ間での通信方式を定めています。イーサネットは主にLANで使用されるプロトコルです。

intwk008

イーサネットではデータリンク層をLLC(論理リンク制御)とMAC(メディアアクセス制御)の2つの階層に分けています。

CSMA/CD

イーサネットではメディアアクセス制御方式にCSMA/CD(Carrier Sense Multiple Access / Collision Detection)が使われています。
※メディア・・・ケーブルのこと

メディアアクセス制御方式とは複数のコンピュータが競合せずにメディアを利用してデータを送受信するための方法です。
CSMA/CDは名称がその動作を表しています。

Multiple Access(多重アクセス)

イーサネットは論理的にはバス型(参照)のトポロジ(ネットワークの接続形態)となっています。バス型はメディアを複数のコンピュータで共有して使用します。この環境をMultiple Accessといいます。Multiple Access環境では誰かがデータを送信してケーブル上に信号が流れている間は、ほかのコンピュータはデータを送信することができません。

Carrier Sense(搬送波感知)

データを送信したいコンピュータはケーブル上に信号が流れているかどうかをチェックします。この動作をCarrier Senseといいます。信号が流れている間はその信号がなくなるまで待ちます。流れていない場合はデータ送信を開始します。

Collision Detection(衝突検知)

複数のコンピュータが同時にCarrier Senseを行ってデータ送信をすると信号のコリジョン(衝突)が発生します。コリジョンを検知することをCollision Detectionといいます。
コリジョンを検知すると送信側のコンピュータはデータ送信を中断し、コリジョンの発生を伝えるためのJAM信号を送信します。JAM信号を受け取ったコンピュータは受信動作を中止し、データを破棄します。
その後、送信側のコンピュータはデータを再送します。ランダムな時間を待ってからデータを再送することで再度コリジョンが発生することを防ぎます。(再送は15回まで行われます)

MACアドレス

イーサネットではMACアドレスによって通信相手を特定します。MACアドレスは物理アドレスやハードウェアアドレスと呼ばれることもあります。

MACアドレスは世界中で重複しないアドレスが割り当てられ製造時にNICに書き込まれます。MACアドレスは48ビット情報で構成され、前半24ビットはIEEEがベンダに割り当てるOUIで、後半24ビットはシリアル番号です。シリアル番号はベンダ内で重複しない数字が割り当てられています。

フレームフォーマット

イーサネットで通信を行うときに必要な制御情報はヘッダとトレーラに格納されます。イーサネットのフレームフォーマットは次のようになっています。
ethernet20[1]

宛先MACアドレス

宛先のMACアドレスが入ります

送信元MACアドレス

送信元のMACアドレスが入ります

タイプ

上位層つまりネットワーク層でどのプロトコルを使用しているかを識別する番号が入ります。ネットワーク層でIPを使用している場合は16進数で0800という値が入ります

データ

データの大きさによって46-1500倍とのサイズになります。イーサネットのデータの最大サイズ(MTU)は1500バイトです。

FCS

エラーチェックを行うための値が入ります。フレームを受信したコンピュータはFCSを使ってエラーチェックを行います。

プロトコルとOSI参照モデル

プロトコル

コンピュータ間では通信の方法についてあらかじめルールが決められており、ルールに従って通信が行われています。通人に実変われるルールをプロトコルと呼びます。

OSI参照モデル

プロトコル開発のガイドラインとなるのがISOによって制定されたOSI参照モデルです。OSI参照モデルは通信機能を7階層に分割して定義しています。

networking13[1]

レイヤ5-7(上位層)はコンピュータ内部で処理される機能を定めています。レイヤ1-4(階層)は、コンピュータ間の通信に関する機能を定めています。

レイヤ7:アプリケーション層

アプリケーション層はネットワークを利用するアプリケーションのうち、アプリケーションの機能とユーザーとのインターフェースについて定めています。各機能を実現するプロトコルとして下記などがあります。
<プロトコル>
FTP、Telnet、HTTP、SMTP、DNSなど

レイヤ6:プレゼンテーション層

プレゼンテーション層は、圧縮方式や文字コードなど、データの表現方式を定めています。データをネットワークで通信できる形式に変換したり、逆にネットワーク経由で受信したデータをアプリケーションが認識できる形式に復元したりします。
<プロトコル>
JPEG、MPEG、JIS、EUC、Shift-JISなど

レイヤ5:セッション層

セッション層はアプリケーション間での通信方式を定めています。アプリケーション間でのセッションの確立・制御・終了を管理します。
<プロトコル>
NetBIOS、SQL、SSLなど

レイヤ4:トランスポート層

トランスポート層は、コンピュータ間での通信方式を定めています。コンピュータ間でのコネクションの確立・制御・終了を管理し、エラー回復、フロー制御などで信頼性を確保します。データの分割と再組み立てや上位層のアプリケーションを識別する機能も提供します。
<プロトコル>
TCP、UDPなど

レイヤ3:ネットワーク層

ネットワーク層は、隣接していないコンピュータ間での通信方式を定めています。
<プロトコル>
IP、IPXなど

レイヤ2:データリンク層

データリンク層は、隣接しているコンピュータ間での通信方式を定めています。物理アドレスを使って相手を特定し、データフレームを転送します。
<プロトコル>
イーサネット、PPPなど

レイヤ1:物理層

物理層は、ケーブルの材質やコネクタ形状、および電気信号の変換方式など、物理的な使用を定めています。データは単なるビット列(0と1の組み合わせ)として扱われ、データの内容については一切関知されません。
<プロトコル>
EIA/TIA-232、V.35など

TCP/IPの階層モデル

インターネットでは、4階層モデルを使って通信機能を定義しています。これをTCP/IPの階層モデルといいます。

tcpip1[1]

カプセル化とPDU

カプセル化

ネットワーク経由でデータを送信するにはデータに加えて、あて先アドレスや送信元アドレスなどデータを送るための制御情報が必要です。

制御情報はデータの前に付加されます。これをヘッダといいます。データリンク層ではデータの後ろにも付加されます。後ろにつく場合はトレーラといいます。データに対してヘッダやトレーラを付加することをカプセル化といいます。

tcpip3[1]

送信側では、それぞれの階層でデータをカプセル化して階層へ渡します。
トランスポート層では、ポート番号などの情報が入ったヘッダ(TCPヘッダ)を追加しインターネット層に渡します。
インターネット層ではIPアドレスなどの情報が入ったヘッダ(IPヘッダ)を追加してネットワークインターフェース層へ渡します。
ネットワークインターフェース層ではMACアドレスなどの情報が入ったヘッダ(Ethernetヘッダ)を追加して相手にデータを送信します。

受信側では各階層で内容をチェックし、逆カプセル化を行って上位層に渡します。

PDU

それぞれの階層で扱うデータの単位をPDU(Protocol Data Unit)といいます。PDUの名称は各階層で異なっています。ヘッダに対してデータ部を「ペイロード」といいます。PDUはヘッダ+ペイロードのことをさします。

階層 PDUの名称
トランスポート層 セグメント
ネットワーク層 パケット
データリンク層 ビット
物理層 フレーム

これがプレミアムサービス (インターコンチネンタルホテル クラブラウンジ)

【シンガポール・ジャカルタ出張レポート その2】

バクテーをモリモリ食べてホテルに戻ったところで2階のクラブラウンジへ。

インターコンチネンタルホテル シンガポールではクラブラウンジアクセスの付いた部屋に宿泊者向け(プレミアムなお客様向け)に利用可能なラウンジが用意されています。

カードキーをかざして入室すると中国文化とマレー文化の交わるシンガポールらしい趣きにあふれた瀟洒で落ち着いた空間が広がっています。

0718ClubIC-4

笑顔のスタッフさんにに誘導いただきラウンジ中央のソファーに腰かけ、社長は紅茶を自分はコーヒーをオーダー。
紅茶とコーヒーが運ばれてきたところで、上述のクラブラウンジの仕組みを中村社長から解説いただだきます。
アフタヌーンティーではケーキなどが食べられ、イブニングカクテルではビールやワイン、カクテルなどのドリンクだけでなくオードブルもあるのでここで夕飯も済んでしまうとのこと。

6

さらには並んでいるフルーツやクッキーの視察に行っている間にケーキセットまで準備していただけるというサービスの充実ぶりに、僕もバクテー腹ながら「ケーキも全部食べるぞ」とスイーツ男子ばりの笑顔を見せつけます。

5

文句なしのサービスで「このホテルに宿泊する際は、クラブラウンジが利用できる部屋に宿泊することをお薦めする」わけですが、これがプレミアムサービスの本質と身をもって感じます。

我々であればKUSANAGIフルマネージドサービスが宿泊プランであり、SI(サイト構築、機能開発)がクラブラウンジにあたります。

我々のサービスに「価値あり」と認めてくれている顧客に対し、さらに価値の高いプレミアムサービスを提供することで満足度をあがり継続してご利用をいただける、また前述のように「推薦」いただけます。

これは顧客とサービス提供側がぶつかり合うような関係ではなく、関係者がみなハッピーになる循環です。

そしてむしろ顧客はケーキを残してしまったことに申し訳ない気持ちにすらなるものです。ごめんなさい。

インターコンチネンタルホテル シンガポール
https://goo.gl/maps/QMaBDnfFCWn

病みつき!中毒注意!バクテー(黄亜細肉骨茶餐室 ラングーン店)

バクテーはシンガポール3大ローカルフードにも挙げられる人気料理で、豚のスペアリブなど骨付きの肉を煮込んだ料理です。

黄亜細肉骨茶餐室 ラングーン店はそのバクテーをはじめローカルフードが食べられる、現地の方にも人気のレストランです。
このエリアには他にもバクテーが食べられるレストランはありますが、中村社長の「世界一のバクテーが食べられる」との評価に期待が高まります。

1

おなかもペコリとなったところで、さっそくお目当てのバクテーとサイドメニューの煮卵も注文。

2

まずはスープ。

スパイシー!!

そして骨付き肉から出た濃厚なうまみがガツンと追いかけてきます。
日本人なら「このスープにライスを入れたい」という衝動に駆られること間違いなく、メインのお肉に行く前にスープとライスのラリーが止まりません。

お肉は骨付きスペアリブの存在感そのままに食べごたえ十分。
スパイスだけでなくハーブの香りも食欲をそそり、言わば中毒性のあるうまさ。
予想していた八角などの漢方っぽい気になる匂いもなく、台湾料理にケチをつけた大島のパパさんも間違いなくうまいというでしょう。
そなえつけの甜麺醤的な醤油のソースにつけてもまた違ったおいしさがあります。
サイドメニューの煮卵もやさしいお茶の香りがスパイシーなスープとマッチします。

3

普段のお仕事では見られない集中力と不自然な笑顔で一気に食べた後はお肉の一片からスープからキレイさっぱりとなくなりました。

4

シンガポールの食事に間違いなく行くべき!のお店です。

黄亜細肉骨茶餐室 ラングーン店
https://goo.gl/maps/Dr2W4XPRw3N2

小保方さんのWebサイト(https://stap-hope-page.com/)が閲覧できるようになったので調べてみた

「STAP細胞はありまーす」の小保方さんがWebサイトを開設し、STAP作成手順を公開しているとのことが31日にニュースとなりました。
さらにそのサイトがWordPressならびにBizVektorで作成されているとのことで、にわかにWordPress業界もざわついております。

さっそくそのサイト(https://stap-hope-page.com/)にアクセスしてみましたが、何度アクセスしても閲覧できない状況。氏の代理人からの発俵によると「世界中67か国から、昨日、(アクセスが)殺到しまして、今止まっている状態。」とのこと。
どれだけ強力なパフォーマンスを発揮できるサーバーか気になりますので、ようやくアクセスできました4/2に調べてみました。

WordPressバージョン

https://stap-hope-page.com/readme.htmlを拝見するとver4.4.2をご利用です。

トップページ表示スピード

Firefoxのアドオン「Firebug」で見てみます。
数回アクセスした際の平均応答秒数は1200ms。装飾もほとどないサイトですが、WordPressのデフォルトテーマとくらべても500ms以上遅い状況です。現状でもまだアクセスが集中しているのでしょうか。

※ちなみにWebサーバーはnginxをご利用のようです。

キャッシュなしページの表示速度

WordPressの検索結果表示ページでの速度を見てみます。/?s=×××××××でアクセスした際の平均応答秒数は1630msという結果。フロントに検索ボックスを設置しなかったのは正解といえるでしょう。

1秒あたりのレスポンス数

Apache Benchにて1秒あたりのレスポンス数を確認します。

結果はRequests per second: 4.84 [#/sec] (mean)ということで、ニュースで取り上げられた31日は到底耐えうるパフォーマンスではなかったと思われます。

それではどこのサーバーを利用されているか見てみます。

IP

Firebugから185.62.236.220であることがわかります。

どこのサーバーか

185.62.236.220をブラウザに入れてみるとhttp://185.62.236.220/cgi-sys/defaultwebpage.cgiが表示されます。
まさかのレンタルサーバーをご利用のようです。
表示されたページからSiteground社(https://www.siteground.com/)というサーバー会社のようです。
サイトを見ると月額$6.95のWordPressサーバーホスティングサービスもあるようですが、これを利用していないことを祈るばかりです。

whois

whoisで調べてみます。

見慣れない結果が返ってきました。

ブルガリア支社の方が設定されたサーバーのようです。サーバー自体はシンガポールにあるようです。
英語で書いていらっしゃいますので、日本よりも欧米の方に見ていただきたいサイトという意図でしたらアジアでないエリアに置かれたほうが良いかと思います。(レンサバだと場所は選べないか)

以上から
・サーバー性能の改善
・地理的最適化
・キャッシュの利用
など改善を行うことでより多くの方に見て頂けることがわかります。
当方、超高速WordPress仮想マシンKUSANAGIを用いたフルマネージドサービスを提供しております。
小保方さん、そのスタッフのかたお気軽にご連絡ください。

grepでファイル内を検索する

以前、下記のようなのような記述で特定の文字列を含むファイルを検索できることをまとめましたが、対象ファイルのファイル形式などがわからないと使えないことが懸念でした。

おとなりの後輩により簡単な書式ということでご教示いただいたのがこれです。

●オプション
i:大文字、小文字関係なし
r:再帰的に検索
n:行数表示
l:ファイル名のみ表示

例)

※検索結果は以下のように表示されます。

VPCネットワークの作成

VPCの作成

  1. VPCネットワークの作成
  2. サブネットの作成
  3. ルートテーブルの作成
  4. インターネットゲートウェイの作成
  5. ネットワークACLの作成
  6. セキュリティグループの作成

VPCネットワークの作成

最初にVPCで使用するプライベートネットワークの範囲を設定します。

AWSマネジメントコンソールの操作

VPC → VPC → VPCの作成

VPCネットワークの設定項目

  • ネームタグ・・・設定を識別するための名前。例)AWS_BOOK
  • CIDRブロック・・・最小「/28」(16IPアドレス)から最大「/16」(65,536IP)のネットワークを設定。例)10.0.0.0/16
  • テナンシー・・・EC2インスタンスを起動するホストサーバーを指定(専有)するかの設定。例)Default

なお、VPCを新規で作成するとそのVPC内で使用できるルートテーブルとネットワークACL、セキュリティグループが自動的に作成されます。
EC2インスタンスにアクセスする際にパブリックDNSを使用するため、DNSホスト名を「はい」にしています。作成したVPCを右クリックして、DNS名の編集を選択し編集します。

サブネットの作成

2番めにサブネットを作成します。サブネットとは大きなネットワークを複数の小さなネットワークに分割して管理する際の、管理単位となるネットワークのことを指します。VPC内では役割に応じ他ネットワークを作成することができます。

AWSマネジメントコンソールの操作

VPC → サブネット → サブネットの作成

サブネットの設定項目

  • ネームタグ・・・設定を識別するための名前。例)AWS_BOOK_Subnet
  • VPC・・・サブネットを作成するVPCを指定。例)vpc-×××××(10.0.0.0/16)|AWS_BOOK
  • アベイラビリティゾーン・・・サブネットを作成するアベイラビリティゾーンを指定。指定しなければ任意のAZが選択される。例)ap-notheast-1a
  • CIDRブロック・・・サブネットに割り当てるネットワークの範囲を指定。例)10.0.0.0/24

VPC作成で説明した「DNSホストネーム」オプションを「はい」にして、サブネット設定の「自動パブリックIP割当の変更」を「はい」にするとEC2インスタンス起動時に自動的にパブリックIPを付与することができます。

ルートテーブルの作成

3番めはルートテーブルの作成です。ルートテーブルはサブネット単位で設定することができ、サブネット内で仮想するEC2インスタンスのネッワークルーティングテーブルを制御します。インターネットを介して通信する場合はインターネットゲートウェイをルーティングテーブルに指定します。

AWSマネジメントコンソールの操作

VPC → ルートテーブル → ルートテーブルの作成

ルートテーブルの設定項目

  • ネームタグ・・・設定を識別するための名前。例)AWS_BOOK_RouteTable
  • VPC・・・ルートテーブルを作成するVPCのIDを指定。例)vpc-×××××(10.0.0.0/16)|AWS_BOOK

サブネットとルートテーブルの関連付け

作成したサブネットはVPC内意の1つのルートテーブルに関連付ける必要があります。サブネットの新規作成時はルートテーブルを作成することができないため、VPC内のメインルートテーブルに自動的に関連付けされます。サブネットとルートテーブルの関連付けを変更する場合は下記のように行います。

AWSマネジメントコンソールの操作

VPC → ルートテーブル

(1)ルートテーブルの一覧から作成したルートテーブルを選択
(2)「サブネットの関連付け」タブをクリック
(3)「編集」ボタンをクリック
(4)サブネットの一覧が表示されるので関連付けるサブネットにチェックを入れる
(5)保存をクリック

インターネットゲートウェイの作成

4番目はインターネットゲートウェイの作成です。インターネットゲートウェイはVPCネットワーク内で稼働するEC2インスタンスがインターネットを通じて外部と通信する際に必要となります。作成したインターネットをゲートウェイをルートテーブルのターゲット(ルートテーブルのルーティングを設定する際に指定するルーティング先)として使用します。
インターネットゲートウェイをルートテーブルに設定することで、VPC内で稼働するEC2インスタンスがインターネット上に存在するサーバーと通信できます。

AWSマネジメントコンソールの操作

VPC → インターネットゲートウェイ → インターネットゲートウェイの作成

インターネットゲートウェイの設定項目

  • ネームタグ・・・設定を識別するための名前。例)AWS_BOOK_IGW

作成したインターネットゲートウェイが一覧に表示されます。

インターネットゲートウェイとVPCの関連付け

作成したインターネットゲートウェイはVPCと関連付けを行います。
表示される一覧から関連付けたいインターネットゲートウェイを選択し(チェックボックスにチェックを入れ)、VPCにアタッチをクリックすることでVPCに関連付けされます。状態欄が「attached」となっていれば成功です。

インターネットゲートウェイをルーティング先に指定する

これでルートテーブルにインターネットゲートウェイを指定することができるようになりました。作成したルートテーブルにインターネットゲートウェイへのルーティングを追加します。

AWSマネジメントコンソールの操作

VPC → ルートテーブル

(1)ルートテーブルの一覧から作成したルートテーブルを選択
(2)「ルート」タブをクリック
(3)「編集」ボタンをクリック
(4)「送信先」と「ターゲット」入力。例)送信先:0.0.0.0/0(全てのアドレスとマッチ)、ターゲット:今回作成したインターネットゲートウェイのID
(5)保存をクリック

※参考:Amazon Web Serviceパターン別構築・運用ガイド