ネットワーク原則 (5): IP プロトコル

目次

IPアドレスを知る

サブネットマスク

効果

IPアドレスを動的に割り当てる

NATメカニズム

MACアドレスを知る

MAC アドレスの仕組み

ネットワーク機器および関連技術

ハブ: すべてのポートを転送します

スイッチ:MACアドレス変換テーブル+フォワーディング

ホストとルーター: ARP キャッシュ テーブル + ARP アドレッシング

ルーター: ルーティング + NAPT

データリンク層プロトコル

イーサネット

イーサネットについて知る

MTUを知る

ARPプロトコル


IPアドレスを知る

コンセプト:

IP アドレス (インターネット プロトコル アドレス) は、インターネットプロトコル アドレスを指し、インターネット プロトコル アドレスとも訳されます。

効果:

IP アドレスは、IP プロトコルによって提供される統一的なアドレス形式であり、物理アドレスの違いを防ぐために、インターネット上の各ネットワークおよび各ホストに論理的なアドレスを割り当てます

フォーマット:

IP アドレスは 32 ビットの 2 進数であり、通常は 4 つの「8 ビット 2 進数」(つまり 4 バイト) に分割されます。たとえば、01100100.00000100.00000101.00000110 は通常、「ドット付き 10 進数」、つまり 、で表されます

abcd 形式 (a、b、c、d はすべて 0 ~ 255 の 10 進整数)。例: 100.4.5.6。

 IP には IPV4 と IPV6 の 2 つのバージョンがあり、IPV4 は 4 バイトで表され、IPV6 は 6 バイトではなく、地球上のすべての砂粒を完全にカバーできる 2^128 の 16 バイトで表されます。

時代の発展に伴い、現在の IPV4 では十分ではなく、結局のところ 4 バイトでは小さすぎるのですが、なぜ当初の設計時にもう少し数バイトを与えなかったのでしょうか? これは主に時代の制約によるもので、当時は一バイト一バイトが非常に貴重であったこと、第二に、当時は機器を使用する人が少なすぎて、42億9,000万あれば十分だったということです。

そして、IPV6 はこの問題を完全に解決します。2 ^128 がいつ使い果たされるかわかりません。

構成:

IPアドレスは、ネットワーク番号とホスト番号の2つの部分に分かれています。

  1. ネットワーク番号: ネットワーク セグメントを識別し、相互に接続されている 2 つのネットワーク セグメントが異なる ID を持つことを確認します。
  2. ホスト番号: ホストを識別します。同じネットワーク セグメント内では、ホストは同じネットワーク番号を持ちますが、異なるホスト番号を持つ必要があります。

ネットワーク番号とホスト番号を適切に設定すると、相互接続されたネットワーク内で各ホストの IP アドレスが一意であることが保証されます。

では、ネットワーク番号とホスト番号をどのように分けるのでしょうか?

分類:

以前は、ネットワーク番号とホスト番号を分割するスキームが提案され、次の図に示すように、すべての IP アドレスが 5 つのカテゴリに分割されました。

A、B、Cの3種類とスペシャルD、E。すべての 0 とすべての 1 は予約されています

  1. A: (1.0.0.0-126.0.0.0) (デフォルトのサブネットマスク: 255.0.0.0)        
    1. ネットワーク番号の範囲は 1 ~ 126 です。
    2. 大規模なネットワーク。
  2. B: (128.0.0.0-191.255.0.0) (デフォルトのサブネットマスク: 255.255.0.0
    1. このタイプの IP アドレスの最初の部分は「10」です。
    2. ネットワーク番号の範囲は 128 ~ 191 です。
    3. 中規模
  3. C: (192.0.0.0-223.255.255.0) (サブネットマスク: 255.255.255.0)
    1. このタイプの IP アドレスの最初の部分は「110」です。
    2. ネットワーク番号の範囲は 192 ~ 223 です。
    3. 小さなネットワーク。
  4. D: はマルチキャスト アドレスです。
    1. このタイプの IP アドレスの最初の部分は「1110」であるため、アドレスのネットワーク番号の範囲は 224 ~ 239 になります。
    2. マルチキャストユーザー向け
  5. E: 予約アドレスです。
    1. このタイプの IP アドレスの最初の部分は「1111」です。
    2. ネットワーク番号の値は240~255です

 このような分け方は教科書でしか出てこない(クラスABのホスト番号が長すぎる、このような大規模なLANは少ない)実際にはこのように表現されておらず、IPアドレスはサブネットマスクで表現されているおよび他の方法。

これまでのところ、IP アドレスが不足していますが、これを軽減する方法がいくつかあります。これについては後述します。

サブネットマスクを見てみましょう。

サブネットマスク

フォーマット

サブネット マスクの形式は IP アドレスと同じで、これも 32 ビットの 2 進数です。左側はネットワーク ビットで、2 進数「1」で表され、1 の数はネットワーク ビットの長さに等しく、右側はホスト ビットで、2 進数「0」で表され、 0 の数はホスト ビットの長さと同じです。
サブネット マスクは、2 進数で上位の 1 をすべて加算して表すこともできます。たとえば、上記のサブネット マスクは 24 と表すこともできます。

効果

その役割は、ネットワーク上のトラフィックを削減し、IP アドレスを節約し、管理を容易にし、物理ネットワーク自体の問題を解決することですサブネットマスクを使用してサブネットを分割すると、サブネット内での通信は可能になりますが、サブネットを越えた通信はできなくなりますので、サブネット間の通信にはルーターを使用し、スタティックルーティング情報を正しく設定する必要があります。サブネットを分割するには、サブネットワーク分割構造のルールに従う必要があります。

クラスレスドメイン間ルーティング(CIDR):

  CIDR は、クラスレス ドメイン間ルーティングと呼ばれます。ISP は、顧客にアドレスを割り当てるためにこの方法をよく使用します。ISP は、次のようなブロック サイズ (ブロック サイズ) を顧客に提供します: 192.168.10.32/28、この数字の行がサブネットを示しますマスクはいくらですか、/28 は 1 が何ビットかを表し、最大値は /32 です。しかし、次のことを知っておく必要があります: クラス A、クラス B、またはその他のクラス アドレスであっても、使用可能な最大アドレスは次のとおりです。 /30、つまり 2 ビットがホスト ビット用に予約されています。

CIDR値:

  • マスク 255.0.0.0:/8 (クラス A アドレスのデフォルトのマスク)
  • マスク 255.255.0.0:/16 (クラス B アドレスのデフォルトのマスク)
  • .mask 255.255.255.0:/24 (クラス C アドレスのデフォルトのマスク)

計算:

IP アドレスとサブネット マスクに対して「ビットごとの AND」演算を実行します (バイナリの同じビットと演算、両方とも 1 で結果は 1、そうでない場合は 0)。結果はネットワーク番号になります。
サブネットマスクのバイナリをビットごとに反転し、IPアドレスのビットと計算するとホスト番号が得られます。
例:

バイナリ バイナリ
IPアドレス 180.210.242.131 10110100.11010010.11110010.10000011
サブネットマスク 255.255.248.0 11111111.11111111.11111000.00000000
ネットワーク番号 180.210.240.0 10110100.11010010.11110000.00000000
ホスト番号 0.0.2.131 00000000.00000000.00000010.100000

ここで話した後でも、IP アドレスが足りない問題は解決されていません。IP アドレスが足りない問題を解決するにはどうすればよいでしょうか?

IPアドレスを動的に割り当てる

東半球では夜が西半球では昼となるため、相手の多くのデバイスがオフラインとなり、多くのIPアドレスが空きます。

これに基づいて、インターネットがオンラインの場合にのみアドレスが割り当てられ、インターネットがオンラインでない場合はアドレスが割り当てられないことが提案されます。これにより、多数のアドレスを保存できます。しかし、これでもまだ問題は解決しません。

NATメカニズム

問題を解決できないので、次善の策で妥協する

すべてのネットワークをエクストラネットとイントラネットの 2 つの部分に分割します。

  1. イントラネット IP: 192.168.*; 10.*; 172.16.* - 172.31.*
  2. 残りはエクストラネットに属します。

では、外部ネットワークとは何で、内部ネットワークとは何でしょうか?

外部ネットワークの IP は一意ですが、内部ネットワークの IP は繰り返すことができます (通常、ローカル エリア ネットワークは内部ネットワークに属します)。

内部ネットワークが外部ネットワークにアクセスする場合、ip が割り当てられますが、この ip はこのデバイス専用ではなく、lan 全体のすべてのデバイスが ip を共有します。

ここで良い質問が生じます。2 つのデバイスが同時に外部ネットワークにアクセスしたい場合はどうすればよいでしょうか?

例:

2 つのホストがあり、イントラネット IP は 192.168.0.1 と 192.168.0.2、宛先 IP は 1.2.3.4 であると仮定します。

この LAN から抜け出したい場合は、まずルーターを通過する必要があります (このルーターも NAT デバイスです)。2 つのホストがルーター上に記録を作成します (内部で何が起こったのかはわかりませんが、とにかく、ルーターが解決します)、このルーターには外部ネットワーク IP (4.3.2.1 と想定) があり、次のように変換されます: 4.3.2.1 の IP は 1.2.3.4 の IP にアクセスします。

2 つのホストによって送信されるデータは、異なるポート番号またはその他の番号である可能性があります。

上記で述べたのは内部ネットワークと外部ネットワーク間のアクセス、および内部ネットワーク間のアクセスのみですが、内部ネットワークの IP アドレスは依然として非常に役立ちます。

このような外部ネットワーク IP は、多数の内部ネットワーク デバイスを表すことができます。

私たちの現実の世界では現在、IP アドレスの使用率を向上させるために、IP アドレスを動的に割り当てる 2 つの方法と NAT メカニズムが使用されています。ただし、これでは問題が完全に解決されるわけではありません (アドレスが十分ではありません)。問題を解決する唯一の方法は IPv6 です。 。

MACアドレスを知る

MAC アドレス、つまりメディア アクセス コントロール アドレスは、ネットワーク デバイスのハードウェア物理アドレスを識別するために使用されます。

  1. ホストには 1 つ以上のネットワーク カードがあり、ルータには 2 つ以上のネットワーク カードがあり、各ネットワーク カードは一意の MAC アドレスを持ちます。
  2. ネットワーク通信、つまりネットワーク データ送信は、本質的には、ネットワーク カードとの間でデータを送受信するネットワーク ハードウェア デバイスです。
  3. ハードウェア レベルでは、ネットワーク デバイスのネットワーク物理アドレスは MAC アドレスに基づいてのみ識別できます。

これらは非常にユニークな形式の 12 文字の英数字です。例は、A1:2B:C3:4D:E5:6F です。これは最初からそうであり、可能なアドレスは 2 48 (または 281,474,976,710,656) あるため、すぐに他の方法は必要なくなります。

MAC アドレスは工場で永続的に割り当てられるため、バーンイン アドレスまたはハードウェア アドレスと呼ばれることがよくあります。一部のデバイスに直接貼られたステッカーでも MAC アドレスを見つけることができます。

MAC アドレスの仕組み

MAC アドレスは、ネットワーク上の物事が正しいデバイスにデータを送信できるようにすることで機能します。携帯電話またはコンピュータはインターネット経由でリクエストを送信します。ルーターはそのデータを受信すると、MAC アドレスを使用してデータの送信先を認識します。

ただし、いくつかのニュアンスがあります。MAC アドレスは、同じネットワーク上のデバイスを別のデバイスと識別するためにのみ使用されます。Bluetooth 経由で何かに接続している場合、MAC アドレスを取得できるのは、接続しているものだけです。同様に、自宅の Wi-Fi に接続している場合、自宅の Wi-Fi に接続されているデバイスのみがデバイスの MAC アドレスを確認できます。

一般に、いくつかの例外を除いて、インターネット上の Web サイトやその他のデバイスはあなたの MAC アドレスを認識できません。これらのエンティティはあなたの IP アドレスを取得します。MAC アドレスとは異なり、IP アドレスは永続的なものではなく、インターネットをサーフィンするときに割り当てられます。したがって、実際にデバイスの MAC アドレスを確認できるデバイスはほとんどありません。

上記は「MAC アドレスとは何ですか?」からのものです。知っておくべきことすべて (baidu.com)

さて、ここまでは内部スキルとメンタルメソッドを学びました。現時点では、これらはすべて Web サイトの基礎を築くためのものです。次に、外部スキル (フロントエンドとバックエンド)、つまりフロントを学習する必要があります。 -end は主に読み書きのためのものであり、本当の理解のためのものではありません。

ネットワーク機器および関連技術

ハブ: すべてのポートを転送します

ハブは物理層で動作するネットワーク デバイスであり、ハブに送信されたデータは単純にコピーされ、他のすべてのポートに転送されます。(ポートはハブの背後にある物理ポートを指します)

スイッチ:MACアドレス変換テーブル+フォワーディング

スイッチは信号の転送に使用されるデバイスです。ハブ ブロードキャスト方式とは異なり、スイッチに接続された 2 つのネットワーク ノードに専用の電気信号パスを提供できる MAC アドレス テーブルを維持します。主にダブル スイッチとトリプル スイッチがあり、レイヤー 2 スイッチはデータ リンクです。レイヤデバイスはデータパケット内のMACアドレス情報を識別し、MACアドレスに従って転送することができ、トリプルスイッチはルーティング機能を備え、ネットワーク層で動作します。ネットワーク内のスイッチは通常、デフォルトでデュアル スイッチです。

スイッチにもMAC-PORTの対応表があり、ブリッジのテーブルは1対多(1つのポート番号に複数のMACアドレスが対応)であるのに対し、スイッチのテーブルは1対1となっています。データ転送には関係が使用され、その動作原理を次の図に示します。

ホストとルーター: ARP キャッシュ テーブル + ARP アドレッシング

まず、ARP はデータ リンク層とネットワーク層の間のプロトコルであり、IP アドレスと MAC アドレス間のマッピング関係を確立します。
データ リンク層で、ネクストホップ デバイスの MAC アドレスを見つけるプロセスは、ARP アドレッシングと呼ばれます。

  1. ARP キャッシュ テーブルはホストとルーターの両方に保存されます。対応する MAC アドレスは IP アドレスを通じて見つけることができます。
  2. ネクストホップデバイスの IP アドレスに従って、対応する MAC アドレスが ARP キャッシュ テーブルで見つかり、宛先 MAC を設定してデータグラムを送信できます。
  3. 見つからない場合は、ARP ブロードキャスト データグラムを送信します。宛先 MAC はブロードキャスト アドレスであり、ネクストホップ デバイスの MAC アドレスを要求します。

ルーター: ルーティング + NAPT

ルーターには 2 つの主な機能があります。

  • ゲートウェイ:
    • ルーターはゲートウェイとしてパブリック ネットワークとローカル エリア ネットワークを分割でき、一部のルーターはローカル エリア ネットワークを複数のサブネット (異なるネットワーク セグメント) に分割することもできます。
    • パブリック ネットワーク ポートは WAN ポートであり、パブリック ネットワーク IP アドレスとパブリック ネットワーク MAC アドレスを持つ別個のネットワーク カードです。
      • 分割されたサブネットは LAN ポート、つまり LAN ポートによって分割され、各ポートにはネットワーク セグメントの IP アドレスと MAC アドレスを持つ個別のネットワーク カードがあります。
    • ゲートウェイとしてのルーター:
      • 1. LAN を複数のサブネットに分割すると、ARP アドレッシングを通じて LAN 内の任意のホストを直接見つけることができます。(ここでいうローカルエリアネットワークとは、ルータ配下の複数のサブネットで構成されるローカルエリアネットワークのことです)。
      • 2. パブリックネットワークとLANを分離する場合、LAN内のホストがパブリックネットワーク上のホストにデータグラムを送信する際、LAN上のホストのIPアドレスとポート番号をパブリックネットワークのIPとポートに変換する必要があります。 NAPT プロトコルに基づくルーターの番号 (ルーター内で実行されているルーターを指します) プログラム ポート)。
         
  • ルーティング
    • いわゆるルーティングとは、複雑なネットワーク構造の中で目的地までの経路を見つけることであり、
      ルータにおけるルーティング機能であるネットワーク通信(ネットワークデータ伝送)は、どの方向に行けば目的地に早く到達できるかを計画することに似ています。

IP プロトコルはネットワーク層の主要なプロトコルであるため、ネットワーク層について説明した後、データリンク層を見てみましょう。

データリンク層プロトコル

データリンク層の 3 つの重要なプロトコル、イーサネット、MTU、ARP プロトコルを理解する必要があります。

イーサネット

イーサネットについて知る

イーサネットは特定のネットワークではなく、データリンク層と物理層の両方を含む技術標準です。

イーサネットのネットワーク ケーブルはツイスト ペアを使用する必要があり、伝送速度は 10M、100M、1000M などです。

イーサネットは現在最も広く使用されているローカル エリア ネットワーク テクノロジであり、イーサネットと並んでトークン リング、無線 LAN などが使用されています。

送信元アドレスと宛先アドレスは、ネットワーク カードのハードウェア アドレス (MAC アドレスとも呼ばれます) を指し、長さは 48 ビットで、ネットワーク カードが工場から出荷されるときに
固定されます
。フレーム プロトコル タイプ フィールドには、対応する 3 つの値があります。それぞれ IP、ARP、RARP に変換され、
フレームの最後には CRC チェック コードがあります。

MTUを知る

MTUはエクスプレス送信時のパッケージサイズの制限に相当します。この制限は、異なるデータ リンクに対応する物理層によって引き起こされる制限です。
イーサネットフレームのデータ長は最小46バイト、最大1500バイトと規定されており、ARPパケットの長さは46バイト未満で後ろにパディングビットを付加する必要があり、最大値1500をパケット長と呼び
ます
。イーサネットの最大伝送単位 (MTU)。ネットワーク タイプが異なると、MTU も異なります。
データ パケットがイーサネットからダイヤルアップ リンクにルーティングされ、データ パケットの長さがダイヤルアップ リンクの MTU より長い場合、
データ パケットをフラグメント化する必要がある (フラグメンテーション)、
データ リンクが異なる、道路層標準の MTU が異なる、データ リンクが異なる、道路層標準の MTU が異なる。

ARPプロトコル

ここでは ARP プロトコルを紹介しますが、ARP は純粋なデータリンク層プロトコルではなく、データリンク層とネットワーク層の間のプロトコルであることを強調する必要があります。

ARPプロトコルの役割

ARP プロトコルは、ホスト IP アドレスと MAC アドレス間のマッピング関係を確立します。

  1. ネットワーク通信中、送信元ホストのアプリケーション プログラムは宛先ホストの IP アドレスとポート番号を知っていますが、宛先ホストのハードウェア アドレスは知りません。
  2. データ パケットは最初にネットワーク カードによって受信され、次に上位層プロトコルによって処理されます。受信したデータ パケットのハードウェア アドレスがローカル マシンと一致しない場合、データ パケットは直接破棄されます。
  3. したがって、通信前に宛先ホストのハードウェアアドレスを取得する必要があります。

おすすめ

転載: blog.csdn.net/weixin_67807492/article/details/130581048