IP アドレスの標準とサービス
クラウドへの移行を検討する際には、Azure の開発者、ソリューション アーキテクト、または管理者としての役割において、ネットワークのしくみの基礎を理解しておくことが重要です。 ネットワークの構成を理解するための次の手順では、ネットワークの相互運用性について詳しく見ていきます。 この知識は、組織のネットワークにも、Web のような広範なネットワークにも適用されます。 すべてのネットワークは同じ原則に基づいて構築されます。
このユニットでは、ネットワーク通信の主な側面と、伝送制御プロトコル/インターネット プロトコル (TCP/IP) を使用してネットワークを構築する理由について調べます。 インターネット プロトコルのアドレス標準の違いを説明します。 最後に、サブネット化、ドメイン ネーム システム (DNS)、ポート、プライベート IP アドレスの使用と役割を確認します。
アドレス解決プロトコルとは
アドレス解決プロトコル (ARP) は、インターネット プロトコル スイート内の通信プロトコルです。 指定された IP アドレスのメディア アクセス制御 (MAC) アドレスを解決するために使用される、要求 - 応答プロトコルです。 ARP では、インターネット プロトコル バージョン 4 (IPv4)、DECnet、PUP など、多くのデータ リンク層のテクノロジがサポートされています。 インターネット プロトコル バージョン 6 (IPv6) アドレスが解決されるときには、ARP ではなく、近隣探索プロトコル (NDP) が使用されます。 ARP がないと、IP アドレスを物理デバイス アドレスに解決する手段はありません。
また、指定された MAC アドレスに基づいて IP アドレスを取得する、逆アドレス解決プロトコル (RARP) もあります。
TCP/IP とは
伝送制御プロトコル/インターネット プロトコルは、ネットワーク対応デバイスを IP ベース ネットワーク経由で相互接続する方法をサポートおよび定義する、さまざまな通信プロトコルのコレクションです。 その中核となるのは、次の 2 つの主なプロトコルです:TCP と IP。 TCP/IP は、イントラネットやエクストラネットなどのプライベートネットワークとパブリックネットワークを含むインターネットを可能にします。
TCP/IP により、エンドツーエンドの通信プロセスを定義することによって、ネットワーク対応デバイス間でデータを共有する方法が定義されます。 メッセージによりデータのパケット (データグラムともいう) にどのように分割されるかが管理されます。 また、TCP/IP により、パケットのアドレス指定、送信、ルーティング、受信の方法が決まります。 TCP/IP では、ネットワーク全体で最も効率的なルートを特定することができます。
TCP/IP モデルはステートレスとして設計されています。 この設計は、ネットワーク スタックでは、各要求は前の要求に関連付けられていないため、各要求が新しいものとして扱われることを意味します。 しかし、TCP/IP モデルの一部はステートレスではありません。 トランスポート層は、メッセージ内のすべてのパケットが受信されるまで接続が維持されるため、ステートフル モードで動作します。
TCP/IP はオープン標準です。 TCP/IP は組織によって管理されますが、所有されるものではないため、すべてのオペレーティング システム、ネットワーク、ハードウェアで使用することができます。
TCP/IP モデル層
TCP/IP モデルは、4 つの異なる層で構成されています。 層ごとに異なる種類のプロトコルが使用されています。 TCP/IP モデルが、前述のインターネット プロトコル スイートとどのように似ているかに注目してください。
- アプリケーション層: アプリケーション層は、使用される通信プロトコルを決定します。 この層には、ハイパーテキスト転送プロトコル (HTTP)、DNS、ファイル転送プロトコル (FTP)、インターネット メッセージ アクセス プロトコル (IMAP)、ライトウェイト ディレクトリ アクセス プロトコル (LDAP)、Post Office Protocol (POP)、簡易メール転送プロトコル (SMTP)、簡易ネットワーク管理プロトコル (SNMP)、Secure Shell (SSH)、Telnet、TLS/SSL が含まれます。
- トランスポート層:この層では、使用されるアプリケーション プロトコルに適したポートを使用して、アプリケーション データが管理可能な順序付けされたチャンクに分割されます。 この層に関連付けられているプロトコルは、TCP とユーザー データグラム プロトコル (UDP) です。
- インターネット層: ネットワーク層とも呼ばれます。この層は、データ パケットをその宛先に確実に到達させます。 この層に関連付けられているプロトコルは、IP、IPv4、IPv6、インターネット制御メッセージ プロトコル (ICMP)、およびインターネット プロトコル セキュリティ (IPsec) です。
- ネットワーク アクセス層:この層には、ネットワーク経由でデータを送信する方法を定義する役割があります。 この層に関連付けられているプロトコルは、ARP、MAC、イーサネット、デジタル加入者線 (DSL)、および統合デジタル サービス通信網 (ISDN) です。
インターネット プロトコル標準とは
前に説明したように、インターネット プロトコルでは、パケットが送受信される順序は考慮されません。 また、パケットの配信は保証されません。 インターネット プロトコルでは、宛先にメッセージをルーティングおよび転送するために使用される、論理アドレス指定システムのみが提供されます。
現在、ネットワーク内で動作するインターネット プロトコル バージョンは 2 つあります。IPv4 と IPv6。
IPv4
インターネット プロトコル バージョン 4 は 1983 年にリリースされたものであり、現在使用されているすべてのパケット交換ベース ネットワークの標準です。 IPv4 では、32 ビットのアドレス空間が使用されます。これにより、4,294,967,296 (43 億) の一意の論理 IP アドレスの上限が指定されます。 これらの使用可能な多くの IP アドレスは、プライベート ネットワーク、ローカル ホスト、インターネット リレー、ドキュメント、サブネットなど、特定の目的のために予約されています。
IPv4 アドレスの構造
IPv4 アドレスの構造は、0 から 255 の範囲の 4 つの 10 進数となっており、それぞれドットで区切られています。 この構造は、ドット 10 進形式とも呼ばれます。 IP アドレスの例として、192.168.0.1 などがあります。
IPv4 アドレスの各部分
IP アドレスには、ネットワークとホストという 2 つの部分があります。 例として、アドレス 192.168.0.1
を使用してみましょう。
IP アドレスのネットワーク部分は、10 進数の最初のセットです。 この例では、192.168.0
です。 この数字はネットワークに固有のものであり、ネットワークのクラスが指定されます。 使用できるネットワーク クラスが数多くあります。これについては、次のセクションで説明します。
IP アドレスのホスト部分は、10 進数の次のセットです。 この例では、1
です。 この数字はデバイスを表し、アドレスの競合を避けるために、ネットワーク内で一意である必要があります。 ネットワーク セグメント上の各デバイスは、一意のアドレスを持つ必要があります。
IPv4 アドレスのクラス
インターネット プロトコルのローカル アドレス空間は、それぞれがアルファベット文字で表された、5 つの論理クラスまたは IP アドレスの範囲に分割されます。
クラス | 開始アドレス | 終了アドレス | ネットワークの数 | ネットワークごとの IP アドレス | 使用可能な IP アドレスの合計 | サブネット マスク |
---|---|---|---|---|---|---|
A | 0.0.0.0 | 127.255.255.255 | 128 | 16,777,216 | 2,147,483,648 | 255.0.0.0 |
B | 128.0.0.0 | 191.255.255.255 | 16,384 | 65,536 | 1,073,741,824 | 255.255.0.0 |
C | 192.0.0.0 | 223.255.255.255 | 2,097,152 | 256 | 536,870,912 | 255.255.255.0 |
D | 224.0.0.0 | 239.255.255.255 | - | - | 268,435,456 | - |
E | 240.0.0.0 | 255.255.255.255 | - | - | 268,435,456 | - |
クラス A、B、C の場合、開始および終了 IP アドレスは予約されており、使用できません。 クラス D は、マルチキャスト トラフィック専用に予約されています。 クラス E は予約されており、インターネットなどの公衆ネットワークでは使用できません。
前の表では、最後の列がサブネット マスクとしてマークされています。 サブネット マスクは IP アドレスと同じ形式を使用しますが、その目的は IP 範囲内の有効な IP アドレスを識別することです。
たとえば、192.168.0.1
で始まる IP アドレスの範囲があり、255.255.255.0
のサブネットがあるとします。 サブネット マスクは次の方法で適用します。 マスクで 255 として指定された各アドレス セグメントの値については、対応するアドレス セグメントが静的になります。 IP アドレスを選択する場合は、192.168.0
に一致するアドレスを選ぶ必要があります。 セグメントの値が 0
の場合は、0 から 255 の間の任意の値を使用できます。 255.255.255.0
のサブネット マスクにより、選択値として有効な、192.168.0.0
から 192.168.0.255
の IP アドレス範囲が指定されます。
サブネットとは何ですか?
サブネットにより、クラス A、B、または C ネットワーク内の 1 つ以上の論理ネットワークが定義されます。 サブネットがない場合、クラス A、B、または C の各ネットワークでは 1 つのネットワークのみ持つことができます。
IP アドレスは、ネットワーク アドレスまたはルーティング プレフィックスとも呼ばれ、データのパケットを送信するデバイスまたはコンピューターのアドレスを表します。 サブネット (ホスト アドレス) は、使用されるネットワークまたはサブネットワークを表します。 サブネットは、ドット 10 進形式を使用した 32 ビットの数値です。 たとえば、255.255.255.0 が標準のサブネット マスクとなります。
IPv4 ネットワークで、データのパケットが正しいネットワークとネットワーク デバイスにルーティングされるようにするには、ルーティング プレフィックスが必要です。 ルーティング プレフィックスは、サブネット マスクを取得し、IP アドレスにビットごとの AND
を適用することによって作成されます。
サブネットとルーティング プレフィックスを定義する、より一般的な方法は、クラスレス ドメイン間ルーティング (CIDR) 表記を使用することです。 CIDR は、サブネットに割り当てるビット数として IP アドレスに適用されます。 CIDR 表記を使用して、IP アドレスの最後に "/" を追加してから、ビット数を加えます。 たとえば、198.51.100.0/24 は、ドット 10 進形式のサブネット マスク 255.255.255.0 を使用する場合と同じです。 198.51.100.0 から 198.51.100.255 のアドレス範囲が提供されます。
サブネットにより、1 つのネットワーク内に複数のサブネットワークが存在することが可能になります。 ルート指定のパフォーマンスを向上させるために使用できます。 サブネットは、ルーティング ツリーを作成するために階層的に配置できます。
特別用途のアドレス
各クラスでは、使用できる IP アドレスの範囲に制限があります。 次の表は、その一般的なものを示しています。
アドレス範囲 | スコープ | 説明 |
---|---|---|
10.0.0.0 – 10.255.255.255 | プライベート ネットワーク | プライベート ネットワーク内のローカル通信に使用 |
127.0.0.0 – 127.255.255.255 | ホスト | ループバック アドレスに使用 |
172.16.0.0 – 172.31.255.255 | プライベート ネットワーク | プライベート ネットワーク内のローカル通信に使用 |
192.88.99.0 – 192.88.99.255 | インターネット | 予約済み |
192.168.0.0 – 192.168.255.255 | プライベート ネットワーク | プライベート ネットワーク内のローカル通信に使用 |
255.255.255.255 | サブネット | "制限付きブロードキャスト" の宛先アドレス用に予約 |
IPv4 アドレス空間の枯渇
IPv4 の導入後すぐに、使用可能な IP アドレスのプールが予想よりも速く消費されていることが明らかになりました。 たとえば、過去 2 年に何台のモバイル デバイスが新発売されたか考えてみましょう。
IP アドレス不足の脅威を軽減するため、いくつかの解決策が導入されました。 これらのアイデアには、ネットワーク アドレス変換 (NAT)、クラスフル ネットワーク、CIDR などがありました。 1990 年代に IPv6 が作成され、IP アドレス空間の数が 128 ビットに増えました。 IPv6 は 2006 年に商業導入されました。
プライベート IP アドレス指定
クラス A、B、C には、プライベート ネットワーク用に確保された IP アドレスの範囲があります。 これらの IP 範囲には、インターネット経由ではアクセスできません。 このようなアドレスが含まれるパケットが送信されると、すべてのパブリック ルーターで無視されます。
名前 | CIDR ブロック | アドレス範囲 | アドレスの数 | クラスフルの説明 |
---|---|---|---|---|
24 ビット ブロック | 10.0.0.0/8 | 10.0.0.0 – 10.255.255.255 | 16,777,216 | 単一クラス A |
20 ビット ブロック | 172.16.0.0/12 | 172.16.0.0 – 172.31.255.255 | 1,048,576 | 16 クラス B ブロックの連続する範囲 |
16 ビット ブロック | 192.168.0.0/16 | 192.168.0.0 – 192.168.255.255 | 65,536 | 256 クラス C ブロックの連続する範囲 |
プライベート ネットワーク上のネットワーク デバイスは、パブリック ネットワーク上のデバイスと通信できません。 通信は、ルート指定ゲートウェイでネットワーク アドレス変換を介することでのみ可能です。
地理的地域が異なる 2 つのプライベート ネットワークを接続する唯一の方法は、仮想プライベート ネットワーク (VPN) を使用することです。 VPN は、各プライベート ネットワーク パケットをカプセル化します。 VPN では、パケットをさらに暗号化してから、パブリック ネットワーク経由でそれをあるプライベート ネットワークから別のプライベート ネットワークに送信することができます。
IPv6
インターネット プロトコル バージョン 6 は、IP 標準の最新バージョンです。 インターネット技術標準化委員会 (IETF) は、IPv4 論理アドレス枯渇の問題に対処するために IPv6 を設計および開発しました。 最終的には IPv4 標準を置き換えることを想定していました。 2017 年 7 月に公認のインターネット標準として採用されました。
IPv6 では、128 ビットのアドレス空間を使用することで、2128 個のアドレスが可能になります。 この量は、IPv4 の約 7.9 x 1028 倍です。
IPv4 と IPv6 は相互運用できるように設計されなかったため、新しい IPv6 標準への移行が遅れました。
また、IPv6 にはいくつかの利点があります。
- 簡略化されたネットワーク構成:IPv6 では、アドレスの自動構成がプロトコルに組み込まれています。 たとえば、ルーターによってネットワーク プレフィックスがブロードキャストされると、ネットワーク デバイスでは、その MAC アドレスを追加して一意の IPv6 アドレスを自己割り当てできます。
- セキュリティ:IPsec が IPv6 に組み込まれています。
- 新しいサービスのサポート:IPv6 では、NAT が不要になり、ピアツーピア ネットワークを簡単に作成できるようになりました。
- マルチキャストおよびエニーキャスト機能:マルチキャストを使用すると、メッセージを 1 対多の方法でブロードキャストできます。 エニーキャストを使用すると、1 つの宛先で、2 つ以上のエンドポイント宛先への複数のルート指定パスを割り当てることができます。
IPv6 アドレスの構造
IPv6 の構造は IPv4 とは異なります。 4 桁の 10 進数の代わりに、ヘクステットと呼ばれる 4 桁の 16 進数のグループが 8 つ使用されます。 各ヘクステットは、コロンで区切られます。 完全な IPv6 アドレスは次のようになります。2001:0db8:0000:0000:0000:8a2e:0370:7334
新しい標準では、次の規則を使用することでアドレスを簡略化できます。
- どのグループでも、先頭の 1 つ以上の 0 が削除されるため、
0042
は42
になります。 - 0 が連続するセクションは、2 つのコロン (
::
) で置き換えられます。これは、アドレス内で 1 回のみ使用できます。
この IPv6 の例の短縮バージョンは 2001:db8::8a2e:370:7334
です。 0000
のすべてのインスタンスが削除されていることに注意してください。
DNS
DNS は、人が判読できるドメイン名または URL を、サイトまたはサービスをホストしているサーバーの IP アドレスに変換する分散型参照サービスです。 世界中に分散されている DNS の性質が、インターネットの重要な構成要素を成しています。 DNS は、1985 年の開始以降ずっと使われています。
DNS サーバーは、2 つの目的で機能します。 1 つ目は、ドメイン名に対して最近検索したキャッシュを維持することです。これにより、パフォーマンスが向上し、ネットワーク トラフィックが減少します。 2 つ目は、その下にあるすべてのドメインに対して、SOA (Start of Authority) として機能することです。 DNS サーバーが、キャッシュに保持されていないドメイン名を解決しようとしている場合は、最上位のドットから始まります。 SOA として機能する DNS サーバーが見つかるまで、サブドメインを下っていきます。 検出されると、ドメインの IP アドレスがローカル キャッシュに格納されます。
DNS では、ドメインに関連する特定のレコードも保持されます。 これらのレコードには、SOA、IP アドレス指定 (A と AAAA)、SMTP Email (MX)、ネーム サーバー (NS)、ドメイン名エイリアス (CNAME) レコードが含まれます。
Azure の機能
ここで説明する概念の多くは技術的なものですが、Azure では、ネットワークの構成に役立つツールを使用して、これらのいくつかの側面を構築し、拡張しています。
Azure DNS
Azure DNS は、Azure インフラストラクチャを使用して登録済みのドメイン名をホストするためのサービスです。 Azure DNS を使って DNS レコードを管理することができます。 通常の Azure サインイン資格情報を使用すると、A、AAAA、CNAME、SOA、NS、MX などのレコードを管理できます。
Azure DNS によって提供される主な利点の 1 つは、A、AAAA、CNAME レコードのいずれかを使用できるエイリアス レコードです。 エイリアスを使用することで、Azure リソースにトラフィックをルーティングすることができます。
Azure DNS は、ドメインの登録と購入を行うドメイン レジストラーに代わるものではありません。
Azure Virtual Network
Azure Virtual Network を使用すると、クラウド内にプライベート ネットワークを構築できます。 Azure 仮想ネットワークを使用すると、他の仮想ネットワークやオンプレミス ネットワークと通信できるネットワークを構築できます。 これらはネットワークをクラウドに拡張するための効率的な方法です。
Azure 仮想ネットワークを使って、使用されるアドレス指定を制御できます。 ほとんどの仮想ネットワークは、プライベート ネットワークと見なされます。 通常のネットワークと同様に、サブネット化を使用して、それらのサブネットに IP アドレスの範囲をセグメント化し、割り当てることができます。