インターネットへの接続と通信の流れ -情報処理シンプルまとめ

インターネットとLANのブログに関するアイキャッチ画像 ネットワーク

 基本情報技術者試験など情報処理技術者試験を受験する方にとっては必須の,インターネットへの接続と通信の流れについてシンプルにまとめています。まず,コンピューターネットワークの種類について説明し,その後,端末をインターネットに接続する方法と通信の流れについて,具体例を載せて全体像を把握できるように説明しています。コンピューターネットワークの種類については,LAN,WAN,インターネットと,インターネットの構成などを説明しています。端末をインターネットに接続する具体例については,インターネットへの接続と設定(ISPとの契約,IPアドレスの設定(グローバルIPアドレス,プライベートIPアドレス,デフォルトゲートウェイ)),ルーターで管理する情報(フィルタリングテーブル,NATテーブル,ARPテーブル,MACアドレステーブル),スイッチで管理する情報(MACアドレステーブル),端末(PC)などで管理する情報(ARPテーブル),無線LAN端末で管理する情報(BSSIDやESSIDの設定,ARPテーブル)などの説明をしたあと,①内部ネットワークに1台の端末を設置してインターネット上のWebサーバーに対して通信する場合の流れ,②内部ネットワークに有線・無線の複数の端末を設置してインターネット上のWebサーバーに対して通信する場合の流れ,③内部ネットワークの端末同士で通信する場合の流れ,④DMZにWebサーバーを設置して内部ネットワークの端末や外部から通信する場合の流れについて説明しています。ややこしいと思いますが,この分野は,全体像が掴みにくいのではないかと思いますので,ここで把握してから個々の内容に進むのがよいと思います。じっくり頑張りましょう。

  1. コンピューターネットワークの種類
    1. インターネットの構成
    2. インターネットに接続しないネットワーク
  2. インターネットへの接続
    1. 内部ネットワークに1台の端末を設置した場合の設定と通信の流れ
      1. インターネットへの接続と設定
        1. ISPとの契約
        2. 端末の設置と接続
        3. IPアドレスの設定
          1. グローバルIPアドレスの設定
          2. プライベートIPアドレスの設定
          3. デフォルトゲートウェイの設定
      2. 通信に必要な情報
        1. ルーターで管理する情報
          1. フィルタリングテーブル(IPアドレスに基づく情報の管理)
          2. NATテーブル(IPアドレスに基づく情報の管理)
          3. ARPテーブル(MACアドレスに基づく情報の管理)
          4. MACアドレステーブル(MACアドレスに基づく情報の管理)
        2. PCで管理する情報
          1. ARPテーブル(MACアドレスに基づく情報の管理)
      3. 内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ
    2. 内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ
      1. インターネットへの接続と設定
      2. 通信に必要な情報
        1. ルーターで管理する情報
          1. フィルタリングテーブル(IPアドレスに基づく情報の管理)
          2. NATテーブル(IPアドレスに基づく情報の管理)
          3. ARPテーブル,MACアドレステーブル(MACアドレスに基づく情報の管理)
        2. スイッチで管理する情報
          1. MACアドレステーブル(MACアドレスに基づく情報の管理)
        3. PC1,PC2で管理する情報
        4. ノートPCで管理する情報
          1. ルーター(無線LANアクセスポイント)の情報
          2. ARPテーブル(MACアドレスに基づく情報の管理)
      3. 内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ
      4. 内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れ
      5. 内部ネットワークの(無線LAN)端末からインターネット上のWebサーバーへの通信の流れ
    3. DMZにWebサーバーを設置した場合の設定と内部や外部からの通信の流れ
      1. インターネットへの接続と設定
      2. 通信に必要な情報
        1. ルーターで管理する情報
          1. フィルタリングテーブル(IPアドレスに基づく情報の管理)
          2. NATテーブル(IPアドレスに基づく情報の管理)
          3. ARPテーブル,MACアドレステーブル(MACアドレスに基づく情報の管理)
        2. スイッチで管理する情報
        3. Webサーバー,PC1,PC2で管理する情報
      3. 内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ
      4. 内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れ
      5. 内部ネットワークの端末からDMZのWebサーバーへの通信(HTTP,SSH)の流れ
      6. 外部の端末からDMZのWebサーバーへの通信(インターネット経由)の流れ
  3. まとめ

コンピューターネットワークの種類

 コンピューターネットワークとは,コンピューター同士が情報のやり取りをするための情報連絡網のことをいいます。ネットワークの規模で分類すると,次のようになります。

LANLocal Area Network。同じ敷地内にあるコンピューターや周辺機器を接続したネットワーク。電気通信事業者(キャリアとも呼ばれる)の回線は利用しないので通信費用は発生しない。家庭の無線LAN(パソコンやプリンター,ゲーム機などを接続)のような小規模なものから,企業のLAN(サーバーやクライアント,その他の機器などを接続)のような大規模なものまで,さまざまな構成がある
WANWide Area Network。離れたLAN同士を接続した電気通信事業者が提供するネットワーク
インターネット世界中のLANやWANを接続したネットワーク。アメリカで学術研究を目的として利用されていたネットワークが,商業目的にも利用されるようになり世界中に広がった

※ WANを提供する電気通信事業者はインターネット接続サービスを行っていることが多い⇒ISP(インターネットサービスプロバイダ―)

※ インターネット自体を管理する企業や団体は存在しない。インターネットに接続している組織がルールを守りながら,それぞれのネットワークを管理することで形成されている

インターネットの構成

 インターネットは,ISP(インターネットサービスプロバイダ―)が相互に接続し合う形で構成されています。

ISPInternet Service Provider。インターネット接続サービスを提供する事業者
IXInternet eXchange point。ISPの接続ポイント。回線を集中させて相互接続している。大手のISPやIDCが運用しており,ISPはAS(Autonomous System)という番号で管理されている

※ IDC(Internet Data Center)…インターネットに接続する機器や設備を設置し運用する施設

インターネットに接続しないネットワーク

 インターネットに接続しないネットワークには,次のようなものがあります。特定のユーザーだけが接続するため,情報漏えいやウイルス感染が起きにくくセキュリティを高めることができます。

イントラネットインターネットの技術を使用して構築したLAN
エクストラネット(取引を行う企業や組織の間で構築された)イントラネットを接続するネットワーク

インターネットへの接続

パソコンなどの端末をインターネットに接続する方法や,通信の流れについて載せておきます。少し難しいと思いますが,ここで全体像を把握して個々の内容に進むのがよいと思います(理解が深まると思います)。

内部ネットワークに1台の端末を設置した場合の設定と通信の流れ

 内部ネットワークに1台の端末を設置し,インターネットに接続する場合の設定や通信の流れについて見ていきます。

内部ネットワークに1台の端末を設置した場合に関する説明画像

インターネットへの接続と設定

ISPとの契約

 まず,ISPと契約します。実際には,電気通信事業者(インターネットへの回線を提供する事業者)とISP(電気通信事業者と利用者の間でインターネットへの接続を仲介する事業者)の両方と契約しなければなりませんが,最近は,この2つの契約がセットになっているものが多いです。

 契約後しばらくすると,事業者が回線工事をします。光回線を利用する場合は,図のように,近くの電柱から自宅などに光ファイバーケーブルを引き込み,ホームゲートウェイ(図ではルーターとしており,これ以降ルーターとします)に接続します。

※ ホームゲートウェイ…回線終端装置(光信号をディジタル信号に変換する装置)やブロードバンドルーター(インターネットと自宅などを接続する装置)などが一体になった装置

端末の設置と接続

 インターネットに接続する端末(図の場合はPC)を設置し,LANケーブル(ツイストペアケーブル)でルーターと接続します。

IPアドレスの設定
グローバルIPアドレスの設定

 ISPと契約すると,ルーターをインターネットに接続した際にIPアドレス(通信相手を識別する番号で住所のようなもの)が割り振られます。このIPアドレスは,グローバルIPアドレスといい,インターネットに接続されている機器を識別するために使用されています。ですから,重複のない世界でただ一つのアドレスになります。

 今回は,図のように,ルーターのインターネット側(#0側の「203.0.113.23」)に割り当てられています。実際には,インターネットに接続するたびに番号が変わる(動的IPアドレス)のですが,変わらない(固定IPアドレス)ことにします。

※ グローバルIPアドレスは,重複が許されないため,世界的に管理されている

※ ルーターには,WAN側(インターネット側)とLAN側(内部ネットワーク側)にポート(port;端子)がある

プライベートIPアドレスの設定

 内部ネットワークの端末については,プライベートIPアドレスを割り振ります。プライベートIPアドレスは,(ルーターの)内側のネットワークに接続されている機器を識別するために使用します。最近のルーターには,プライベートIPアドレスを自動的に割り振る機能(DHCPサーバー機能)があり,動的に設定されます。

 ですが,今回は,図のように,ルーターの内側(#1側の「192.168.1.254」)とPC(「192.168.1.1」)に手動で設定します(プライベートIPアドレスは手動で設定することもできます)。

デフォルトゲートウェイの設定

 デフォルトゲートウェイとは,内部ネットワークと外部ネットワークをつなぐ装置のことで,図の場合,ルーターが,その役割を担当します。端末(PCなど)が外部ネットワークに接続する際の通信の経由先として設定します。ほとんどの場合,プライベートIPアドレス同様,DHCPサーバー機能により自動的に設定されます。

 ですが,今回は,図のように,PCにルーターの#1側のIPアドレス(「192.168.1.254」)を手動で設定します。

通信に必要な情報

 次は,通信の流れについて見ていきたいのですが,そのためには,それぞれの機器で管理する情報についての知識が必要ですので,先にまとめておきます。

ルーターで管理する情報
フィルタリングテーブル(IPアドレスに基づく情報の管理)

 フィルタリングテーブルとは,ルーターに届いたデータ(パケット)を通過させるかさせないかを決める条件を集めたものをいいます。たとえば,図のPCからインターネットへの通信のみを許可する設定は次のようになります。

送信元IPアドレスあて先IPアドレス動作
192.168.1.1any許可
anyany禁止

※ インターネットからPCへの戻りの通信を許可する設定については,通信時に動的に追加される(動的フィルタリング)。戻りの通信を許可する設定を手動で設定(静的フィルタリング)することもできる

※ 「any」は,すべてのIPアドレスが対象という意味である。よって,フィルタリングテーブルの2行目の設定は,すべてのデータ(パケット)の通過を禁止するという意味になる

※ フィルタリングの設定は,上の行が優先される

 また,内部ネットワークの複数の端末をインターネットに接続する場合,1台ごとに設定することもできますが,台数が増えると作業量が増えますし設定ミスの可能性も増えます。このような場合,次のように,内部ネットワーク(のすべての端末)からインターネットへの通信のみを許可するように設定します。

送信元IPアドレスあて先IPアドレス動作
192.168.1.0 / 24any許可
anyany禁止

 このように,内部ネットワークのネットワークアドレス(「192.168.1.0 / 24」)を設定することにより,内部ネットワーク(のすべての端末)からインターネットへの通信を許可することができます。

IPアドレスの表記

 IPアドレスは「192.168.1.1」などと表記しますが,実際は32ビット(2進数32桁)のビット列です。この32ビットを8ビットずつに区切り,それぞれを10進数に変換しピリオドでつないでいます。

ネットワークアドレスとホストアドレス

 IPアドレスは,ネットワークアドレス部とホストアドレス部から構成されています。ネットワークアドレスはネットワーク自体を示すアドレスで,ホストアドレスはネットワーク内の個々のホスト(ルーターやサーバー,PCなど)に割り当てられるアドレスです。下図のPC1の場合,IPアドレスの上位24ビット(IPアドレスの後ろの「/ 24(プレフィックス)の部分」)がネットワークアドレス部で下位8ビット(=32ビット-24ビット)がホストアドレス部になります。

ネットワークアドレスとホストアドレスに関する説明画像

 また,ネットワークアドレスとホストアドレスは,サブネットマスクを使用して次のように求めます。

※ サブネットマスク…ネットワークアドレス部を1,ホストアドレス部を0とした32ビットのビット列

サブネットマスクを使用してネットワークアドレスやホストアドレスを求める例に関する説明画像
NATテーブル(IPアドレスに基づく情報の管理)

 NAT(Network Address Translation)は,内部ネットワークの端末からインターネットに接続する際に,プライベートIPアドレスをグローバルIPアドレスに1対1で変換する技術をいいます。ほとんどのルーターに,このNAT機能が備わっています。たとえば,図の内部ネットワークからインターネットへ接続する場合の設定は次のようになります(送信元IPアドレスを変換します(SNAT))。

変換前変換後
192.168.1.0 / 24203.0.113.23

※ SNAT(Source NAT)…送信元IPアドレスを変換する方式。あて先IPアドレスを変換する方式はDNAT(Destination NAT)という。

 実際に,図のPCからインターネットに接続する際には,次のように設定されます。

変換前変換後
192.168.1.1203.0.113.23

 このように,実際に接続する際には,送信元IPアドレスを,PCのプライベートIPアドレスから,ルーターのインターネット側(#0側)のグローバルIPアドレスに変換しますので,他のネットワークの端末と通信できるようになります。

 フィルタリングテーブルとNATテーブルの設定をまとめると,次のようになります。

フィルタリングとNATの設定のまとめに関する説明画像
ARPテーブル(MACアドレスに基づく情報の管理)

 ARPとは,IPアドレスからMACアドレスを求めるためのプロトコル(通信規約)です。

 ARPテーブルとは,IPアドレスと,ARPにより割り出したMACアドレスの対応を集めたもので,自動で設定されます(手動で設定することはありません)。

※ MACアドレスについては,次項を参照

IPアドレスMACアドレス
192.168.1.100-00-5E-00-53-10

 ルーターに接続されているPCのIPアドレスは「192.168.1.1」であり,このIPアドレスからARPによりPCのMACアドレス(「00-00-5E-00-53-10」)を求め自動で設定されます。

MACアドレステーブル(MACアドレスに基づく情報の管理)

 MACアドレスは,ネットワーク機器やコンピューターのNIC(ネットワークインタフェースカード)に割り当てられている48ビットのビット列で,(ルーターの内側の)ネットワークにある機器を識別するために使用されています。

 MACアドレステーブルとは,ポート(port;端子)に,どのMACアドレスを持つ機器が接続されているかという情報を集めたもので,自動で設定されます(手動で設定することはありません)。

※MACアドレスは,固有(世界で1つ)の番号で,製造時に割り当てられる

portMACアドレス
#0省略
#100-00-5E-00-53-10

 ルーターの#1側にはPCが接続されているので,PCのMACアドレス(「00-00-5E-00-53-10」)が自動で設定されます。#0側には,インターネット側の隣接ノードのMACアドレスが設定されます(図の場合,インターネット側の隣接ノードは省略しています)。

※ ノード…節,集合点という意味。ネットワークは点(機器)と線(伝送路)で表すことができ,この点のことをノードという。具体的には,コンピューターやルーター,スイッチングハブなど,ネットワークに接続されている,すべての機器のことをいう

PCで管理する情報
ARPテーブル(MACアドレスに基づく情報の管理)

 (PCの)ARPテーブルも自動で設定されます。

IPアドレスMACアドレス
192.168.1.25400-00-5E-00-53-01

 PCに接続されているルーターの#1側のIPアドレスは「192.168.1.254」であり,このIPアドレスからARPによりルーターのMACアドレス(「00-00-5E-00-53-01」)を求め自動で設定されます。

内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ

 図に,設定内容を加えると,次のようになります。

内部ネットワークの端末からインターネット上のWebサーバーへの通信に関する説明画像

 それでは,内部ネットワークのPCからインターネット上のWebサーバーに対して通信する場合の流れについて見ていきます。

 まずはじめに,送信元のPCと,あて先のWebサーバーが同じネットワークに存在しているかを調べます。

PCとWebサーバーが同じネットワークに存在しているかに関する説明画像

 PCとWebサーバーは異なるネットワークに存在することが分かりましたので,Webサーバーに送信するパケットはデフォルトゲートウェイであるルーターを経由して送信することになります。

 次に,PCは,自身のARPテーブルを参照し,ルーターのMACアドレスが分かる場合,ルーターに次のような(Webサーバーに送信する)パケットを送信します。

※ ルーターはPCと同じネットワークに存在し,かつ,隣接しているため,MACアドレスを使用してパケットを送信することができる

PCからルーターへ送信するパケットに関する説明画像

 PCは,ルーターのMACアドレスが分からない場合,次のように,ARPにより求めます。

 PCは,ルーターに対して,次のようなARP要求パケットを送信します。

PCからルーターへのARP要求パケットに関する説明画像

 ルーターはARP要求パケットを受信し,次のようなARP応答パケットをPCに送信しMACアドレスを通知します(このとき,ルーターは自身のARPテーブルとMACアドレステーブルを更新します)。

ルーターからPCへのARP応答パケットに関する説明画像

 PCはARP応答パケットを受信し,自身のARPテーブルを更新します。

PCが自身のARPテーブルを更新する場合の説明画像

 ルーターは,PCから送信されたパケットを受信し,フィルタリングテーブルを参照して,中継するかしないかを判断します。

PCからルーターに送信するパケットの説明画像

 ルーターが,このパケットを中継する場合は,NATにより送信元IPアドレスを付け替えてNATテーブルに登録し,送信元IPアドレスを付け替えたパケットをインターネット上の隣接するノードに送信します。

※ あて先MACアドレスと,送信元MACアドレスも付け替えて送信する

PCからルーターへのパケットの送信元IPアドレスををSNATにより付け替える説明画像

 このような通信を繰り返すことにより,パケットをWebサーバーに届けることができます(戻りのパケットも同様)。

 Webサーバーはパケットを受信し,ポート番号80のWebサーバーアプリケーションにデータを渡してTCPコネクションを確立します。

内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ

 内部ネットワークに複数(有線・無線)の端末を設置し,インターネットに接続する場合の設定や通信の流れについて見ていきます。

内部ネットワークに複数(有線・無線)の端末を設置した場合に関する説明画像
内部ネットワークに複数(有線・無線)の端末を設置した場合に関する,ルーターやスイッチ,PCなどの設定に関する説明画像

インターネットへの接続と設定

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-インターネットへの接続と設定」を参照

通信に必要な情報

ルーターで管理する情報
フィルタリングテーブル(IPアドレスに基づく情報の管理)

 省略。図のとおりです。

※ フィルタリングテーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-フィルタリングテーブル」を参照

 内部ネットワークのPC1とPC2とノートPCからのみインターネットへの通信を許可する設定は,次のようになります。

送信元IPアドレスあて先IPアドレス動作
192.168.1.1any許可
192.168.1.2any許可
192.168.1.3any許可
anyany禁止
NATテーブル(IPアドレスに基づく情報の管理)

 NATの場合,プライベートIPアドレスとグローバルIPアドレスは1対1で対応するため,複数の端末を同時にインターネットに接続することはできません。そこで今回は,NAPT(Network Address Port Translation)により,内部ネットワークの複数の端末を同時にインターネットに接続できるようにします。

 NAPTでは,プライベートIPアドレスとポート番号を,1つのグローバルIPアドレスと端末ごとに異なるポート番号を使用して変換することにより同時接続を可能にします(送信元IPアドレスと送信元ポート番号を変換します)。

※ NATテーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-NATテーブル」を参照

※ NAPTはIPマスカレードともいう

変換前変換後
IPアドレスポート番号IPアドレスポート番号
192.168.1.0 / 24any203.0.113.23any

 PC1,PC2,ノートPCが同時にインターネットに接続した場合,(たとえば)次のように設定されます。

変換前変換後
IPアドレスポート番号IPアドレスポート番号
192.168.1.130018203.0.113.2350012
192.168.1.278002203.0.113.2350013
192.168.1.340026203.0.113.2350014

※ 変換前のポート番号は,OSが通信をするアプリケーションを識別するために(適当に)設定したものである。変換後のポート番号は,端末を識別するために(適当な)番号を割り当て設定したものである

ARPテーブル,MACアドレステーブル(MACアドレスに基づく情報の管理)

 省略。図のとおりです。

※ ARPテーブル,MACアドレステーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-ARPテーブル,MACアドレステーブル」を参照

スイッチで管理する情報

 スイッチ(スイッチングハブ)は,複数の機器をケーブルで接続し,受け取ったパケットから,あて先MACアドレスを読み取り,その端末を接続しているport(ポート;端子)にだけデータを転送します。

※ スイッチは,ネットワークを分割する機器ではない

MACアドレステーブル(MACアドレスに基づく情報の管理)

 図のように,スイッチの各port(ポート;端子)に接続されている機器(ルーター,PC1,PC2,ノートPC)のMACアドレスが自動で設定されます。

※ MACアドレステーブルの説明については省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-MACアドレステーブル」を参照

PC1,PC2で管理する情報

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-PCで管理する情報」を参照

ノートPCで管理する情報
ルーター(無線LANアクセスポイント)の情報

 ノートPCを無線LANに接続する場合は,図のように,ルーター(無線LANアクセスポイントの機能を内蔵)のBSSIDとESSIDを設定します。

※ BSSID(Basic Service Set ID)…1つの無線LANアクセスポイントの電波が届く範囲のネットワークであるBSSを識別するID。一般的には,無線LANアクセスポイントのMACアドレスと同じものとなる

※ ESSID(Extended Service Set ID)…複数のBSSで構成される無線LANのネットワークを識別するID

ARPテーブル(MACアドレスに基づく情報の管理)

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-PCで管理する情報」を参照

内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ

 内部ネットワークのPC1からインターネット上のWebサーバーに対して通信する場合の流れについて見ていきます。

 まずはじめに,送信元のPC1と,あて先のWebサーバーが同じネットワークに存在しているかを調べます。

PC1がWebサーバーと同じネットワークに存在するかの説明画像

 PC1とWebサーバーは異なるネットワークに存在することが分かりましたので,Webサーバーに送信するパケットはデフォルトゲートウェイであるルーターを経由して送信することになります。

 次に,PC1は,自身のARPテーブルを参照し,ルーターのMACアドレスが分かる場合,ルーターに次のような(Webサーバーに送信する)パケットを送信します。

※ ルーターはPC1と同じネットワークに存在し,かつ,隣接しているため,MACアドレスを使用してパケットを送信することができる

PC1からルーターに送信するパケットに関する説明画像

 PC1は,ルーターのMACアドレスが分からない場合,次のように,ARPにより求めます。

 PC1は,ルーターに対して,次のようなARP要求パケットを送信します。

PC1からルーターへのARP要求パケットに関する説明画像

 同じネットワークのすべてのノードに,このARP要求パケットが届きますが,PC2とノートPCは,あて先IPアドレスが自身のIPアドレスと違うため破棄します。

 ルーターはARP要求パケットを受信し,次のようなARP応答パケットをPC1に送信しMACアドレスを通知します(このとき,ルーターは自身のARPテーブルとMACアドレステーブルを更新します)。

ルーターからPC1へのARP応答パケットに関する説明画像

 PC1はARP応答パケットを受信し,自身のARPテーブルを更新します。

PC1のARPテーブルの更新に関する説明画像

 ルーターは,PC1から送信されたパケットを受信し,フィルタリングテーブルを参照して,中継するかしないかを判断します。

PC1からルーターへ送信されたパケットのフィルタリングに関する説明画像

 ルーターが,このパケットを中継する場合は,NAPTにより送信元IPアドレスと送信元ポート番号を付け替えてNATテーブルに登録し,送信元IPアドレスと送信元ポート番号を付け替えたパケットをインターネット上の隣接するノードに送信します。

※ あて先MACアドレスと,送信元MACアドレスも付け替えて送信する

PC1からルーターへのパケットの送信元IPアドレスををSNATにより付け替える説明画像

 このような通信を繰り返すことにより,パケットをWebサーバーに届けることができます(戻りのパケットも同様)。

 Webサーバーは届いたパケットを受信し,ポート番号80のWebサーバーアプリケーションにデータを渡してTCPコネクションを確立します。

内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れ

 内部ネットワークのPC1から同じ内部ネットワークのPC2に対して通信する場合の流れについて見ていきます。

 まずはじめに,送信元のPC1と,あて先のPC2が同じネットワークに存在しているかを調べます。

PC1とPC2が同じネットワークに存在するかの説明画像

 PC1とPC2は同じネットワークに存在することが分かりましたので,直接送信することになります。

 次に,PC1は,自身のARPテーブルを参照し,PC2のMACアドレスが分かる場合,PC2に次のようなパケットを送信します。

※ PC2はPC1と同じネットワークに存在し,かつ,隣接しているため,MACアドレスを使用してパケットを送信することができる

PC1からPC2へ送信するパケットに関する説明画像

 PC2は,届いたパケットを受信します。

※ このパケットは,スイッチによりPC2のみに届く。ルーターやノートPCには届かない

 PC1は,PC2のMACアドレスが分からない場合,次のようにして,ARPにより求めます。

 PC1は,PC2に対して,次のようなARP要求パケットを送信します。

PC1からPC2へのARP要求パケットに関する説明画像

 同じネットワークのすべてのノードに,このARP要求パケットが届きますが,ルーターとノートPCは,あて先IPアドレスが自身のIPアドレスと違うため破棄します。

 PC2はARP要求パケットを受信し,次のようなARP応答パケットをPC1に送信しMACアドレスを通知します(このとき,PC2は自身のARPテーブルを更新します)。

PC2からPC1へのARP応答パケットに関する説明画像

 PC1はARP応答パケットを受信し,自身のARPテーブルを更新します。

PC2のARPテーブルの更新に関する説明画像

内部ネットワークの(無線LAN)端末からインターネット上のWebサーバーへの通信の流れ

 内部ネットワークのノートPCからインターネット上のWebサーバーに対して通信する場合の流れについて見ていきます。

 まずはじめに,送信元のノートPCと,あて先のWebサーバーが同じネットワークに存在しているかを調べます。

ノートPCとWebサーバーが同じネットワークに存在するかに関する説明画像

 ノートPCとWebサーバーは異なるネットワークに存在することが分かりましたので,Webサーバーに送信するパケットはデフォルトゲートウェイであるルーターを経由して送信することになります。

 次に,ノートPCは,自身のARPテーブルを参照し,ルーターのMACアドレスが分かる場合,ルーターに次のような(Webサーバーに送信する)パケットを送信します。

※ ルーターはノートPCと同じネットワークに存在し,かつ,隣接しているため,MACアドレスを使用してパケットを送信することができる

ノートPCからルーターへ送信するパケットに関する説明画像

 ノートPCは,ルーターのMACアドレスが分からない場合,次のように,ARPにより求めます。

 ノートPCは,ルーターに対して,次のようなARP要求パケットを送信します。

ノートPCからルーターへのARP要求パケットに関する説明画像

 同じネットワークのすべてのノードに,このARP要求パケットが届きますが,PC1とPC2は,あて先IPアドレスが自身のIPアドレスと違うため破棄します。

 ルーターはARP要求パケットを受信し,次のようなARP応答パケットをノートPCに送信しMACアドレスを通知します(このとき,ルーターは自身のARPテーブルとMACアドレステーブルを更新します)。

ルーターからノートPCへのARP応答パケットに関する説明画像

 ノートPCはARP応答パケットを受信し,自身のARPテーブルを更新します。

ノートPCのARPテーブルの更新に関する説明画像

 ルーターは,ノートPCから送信されたパケットを受信し,フィルタリングテーブルを参照して,中継するかしないかを判断します。

ノートPCからルーターへ送信されたパケットのフィルタリングに関する説明画像

 ルーターが,このパケットを中継する場合は,NAPTにより送信元IPアドレスと送信元ポート番号を付け替えてNATテーブルに登録し,送信元IPアドレスと送信元ポート番号を付け替えたパケットをインターネット上の隣接するノードに送信します。

※ あて先MACアドレスと,送信元MACアドレスも付け替えて送信する

ノートPCからルーターへのパケットの送信元IPアドレスををSNATにより付け替える説明画像

 このような通信を繰り返すことにより,パケットをWebサーバーに届けることができます(戻りのパケットも同様)。

 Webサーバーは届いたパケットを受信し,ポート番号80のWebサーバーアプリケーションにデータを渡してTCPコネクションを確立します。

DMZにWebサーバーを設置した場合の設定と内部や外部からの通信の流れ

 DMZにWebサーバーを設置し,インターネットに接続する場合の設定や通信の流れについて見ていきます。

DMZにWebサーバーを設置した場合の設定に関する説明画像
DMZにWebサーバーを設置した場合に関する,ルーターやWebサーバーやスイッチなどの設定に関する説明画像

インターネットへの接続と設定

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-インターネットへの接続と設定」を参照

通信に必要な情報

ルーターで管理する情報
フィルタリングテーブル(IPアドレスに基づく情報の管理)

 図のように,少し複雑なので,整理しておきます。

  • インターネットからは,DMZのWebサーバーへのHTTP通信のみを許可する
  • 内部ネットワークからは,PC1からDMZのWebサーバーへのSSH通信と,すべての端末からDMZのWebサーバーへのHTTP通信と,すべての端末からインターネットへの通信のみを許可する
  • それ以外の通信は,すべて禁止する

※ フィルタリングテーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-フィルタリングテーブル」を参照

NATテーブル(IPアドレスに基づく情報の管理)

 図のように,内部ネットワークからインターネットに接続する場合の設定(送信元IPアドレスを変換(SNAT))と,インターネットからDMZのWebサーバーに接続する場合の設定(あて先IPアドレスを変換(DNAT))をします。

※ SNAT(Source NAT)…送信元IPアドレスを変換する方式

※ DNAT(Destination NAT)…あて先IPアドレスを変換する方式

※ NATテーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-NATテーブル」を参照

NAPTの説明は省略。「内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ-NATテーブル(IPアドレスに基づく情報の管理)」を参照

ARPテーブル,MACアドレステーブル(MACアドレスに基づく情報の管理)

 省略。図のとおりです。

※ ARPテーブル,MACアドレステーブルの説明は省略。「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-ルーターで管理する情報-ARPテーブル,MACアドレステーブル」を参照

スイッチで管理する情報

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ-スイッチで管理する情報」を参照

Webサーバー,PC1,PC2で管理する情報

 省略。図のとおりです。

※ 詳細は,「内部ネットワークに1台の端末を設置した場合の設定と通信の流れ-PCで管理する情報」を参照

内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ

 省略。

※ 内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れについては,「内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ-内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ」を参照

内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れ

 省略。

※内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れについては,「内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ-内部ネットワークの端末から同じ内部ネットワークの端末への通信の流れ」を参照

内部ネットワークの端末からDMZのWebサーバーへの通信(HTTP,SSH)の流れ

 内部ネットワークのPC1からDMZのWebサーバーに対して通信する場合の流れについて見ていきます。

 まずはじめに,送信元のPC1と,あて先のDMZのWebサーバーが同じネットワークに存在しているかを調べます。

 PC1とDMZのWebサーバーは異なるネットワークに存在することが分かりましたので,DMZのWebサーバーに送信するパケットはデフォルトゲートウェイであるルーターを経由して送信することになります。

 次に,PC1は,自身のARPテーブルを参照し,ルーターのMACアドレスが分かる場合,ルーターに次のような(DMZのWebサーバーに送信する)パケットを送信します。

※ ルーターはPC1と同じネットワークに存在し,かつ,隣接しているため,MACアドレスを使用してパケットを送信することができる

※ ルーターのMACアドレスが分からない場合については,「内部ネットワークに複数(有線・無線)の端末を設置した場合の設定と通信の流れ-内部ネットワークの端末からインターネット上のWebサーバーへの通信の流れ-HINT」を参照

PC1からDMZのWebサーバーに送信するパケットの説明画像

 ルーターは,PC1から送信されたパケットを受信し,フィルタリングテーブルを参照して,中継するかしないかを判断します。

PC1からルーターに送信されたパケットのフィルタリングに関する説明画像

※ PC2からDMZのWebサーバーへの通信の場合は,HTTP通信のみ許可される

 ルーターが,このパケットを中継する場合は,あて先MACアドレスと送信元MACアドレスを付け替えたパケットをDMZのWebサーバーに送信します。

PC1からDMZのWebサーバーに送信するパケットをルーターが中継する場合の説明画像

 DMZのWebサーバーは届いたパケットを受信し,ポート番号80のWebサーバーアプリケーションにデータを渡してTCPコネクションを確立します。

外部の端末からDMZのWebサーバーへの通信(インターネット経由)の流れ

 外部のPC(図では,自宅PC)からインターネットを経由してDMZのWebサーバーに対して通信する場合の流れについて見ていきます。

 たとえば,自宅PC(実際には自宅のルーター)から,次のようなパケットが会社などのルーターに届きます。

外部から届くパケットに関する説明画像

 ルーターは,NATテーブルを参照し,このパケットを通過させる場合は,NAPTによりあて先IPアドレスとあて先ポート番号を付け替えてNATテーブルに登録します。

外部からのパケットのあて先IPアドレスををDNATにより付け替える説明画像

 次に,ルーターは,フィルタリングテーブルを参照して,中継するかしないかを判断します。

 ルーターが,このパケットを中継する場合は,あて先MACアドレスと送信元MACアドレスを付け替えたパケットをDMZのWebサーバーに送信します。

外部からのパケットをルーターが中継する場合の説明画像

 DMZのWebサーバーは届いたパケットを受信し,ポート番号80のWebサーバーアプリケーションにデータを渡してTCPコネクションを確立します。

まとめ

 今回は,コンピューターネットワークの種類ついては,シンプルにまとめてみました。その後の具体例については,はじめての人にはややこしかったのではないかと思います。全体像が把握できると理解が深まると思いますので,挫けず,根気よく頑張りましょう。