なぜサブネットマスクが必要なのですか?


37

IPv4アドレスはすでにネットワークとホストの情報を提供しているのに、なぜサブネットマスクが必要なのですか?

最初のオクテットはすでにネットワーククラスを指定しています(1-127:A、128-191:B、192-223:Cなど)。A、B、またはCは、ネットワークのオクテット数(それぞれ255.0.0.0、255.255.0.0、255.255.255.0)を意味し、ネットワークの各クラスで許可されるホストの数を自動的に示します。

IPは、サブネットマスクが持つすべての情報などを提供します。そもそもサブネットマスクが必要なのはなぜですか?サブネットに含まれる情報が完全にIP内の情報のサブセットではない場合、他に何が含まれているか、またはサブネットがさらに何をしているのか、独立して指定する必要がありますか?


21
クラスA、B、Cは1980年代で、長い間死んでいます。アドレスの枯渇が始まると、多くの割り当てられたクラスAおよびBスペースが所有者に完全に浪費されていることがわかりました。
Fiasco Labs

2
@FiascoLabsそれは彼の質問に答えません。ルーターはまだこれらのサブネットマスクを使用していましたか?クラスフルの場合は(はい、それ以上のサブネット化がない場合はおそらくそうではありません)、サブネットマスクはアドレスから計算できます。しかし、a)必要なビット数が既にわかっている場合、論理ANDを使用してサブネットマスクを使用する必要がありますが、それはなぜですか?CPU操作がバイトのxビットをテストできない可能性があるため、他のものをゼロに戻す必要があり、EQU演算子が適用されます。
barlop

8
私が使用したルーターは、クラスA、B、またはCの最初のオクテットが何かを意味するとは想定していません。ネットとブロードキャストが配置されたアドレスをルーターに知らせるために、常にネットマスクまたはCIDRを設定する必要がありました。もちろん、クラスアドレスの割り当てには、255.0.0.0、255.255.0.0、255.255.255.0という非常に簡単なネットマスクがあるため、サブネットマスクを使用する必要があります。
フィアスコLabsの

VLSM-可変長のサベートマスク。ネットワークまたはブロードキャストドメインを好きなだけ大きくまたは小さく作成できます。
マークS.

3
授業の時代でさえ、大規模なネットワークを他のさまざまな小規模なネットワークにサブネット化することができました。大規模な大学のワークステーションはクラスAネットワークのアドレスを保持しますが、クラスA全体のサブネットのサブネットのサブネットを使用できます。したがって、当然のことながらルーターは想定していません。
-Alexios

回答:


38

アドレスはネットワークサイズに関する情報を提供しないため、IPv4アドレスにはサブネットマスクが必要です。クラスサイズはネットワークサイズではありません。実際のネットワークでは、すべてのIPv4ネットワークがクラスサイズよりも小さいサブネットに分割されます。

たとえば、クラスCネットワーク200.200.200.0/255.255.255.0を2つの小さなネットワークに分割することができます(別々の場所にある可能性があります)。実際には、ほとんどの企業は、パブリックインターネット上にある必要があるサーバーに十分なIPv4アドレスしか取得しません。個人的には、32、16、および8アドレスネットワーク(それぞれ255.255.255.224、255.255.255.240、および255.255.255.248のマスク)のセットアップを見てきました。

クラスサイズのブロックのみにIPネットワークを配置すると、許可できるネットワークの数が制限されるため、制限が厳しすぎます。127クラスAネットワークはスペースの半分を占有します。言うまでもなく、240億ノードのネットワークを持つことは完全に管理不能です。代わりに、1993年にクラスレスドメイン間ルーティング(CIDR)が導入され、ネットワークを分割できるようになりました。

また、サブネットマスクの目的を明確にすることは、ローカルネットワーク上にあるホストとネットワーク外にあるホストを判別することです。ホストは同じネットワーク上のホストと直接通信できますが、外部ネットワーク上のホストと通信するにはルーターと通信する必要があります。


CIDRを使用する場合、ネットワークアドレス指定に使用される特定のビット数にプレフィックスを付加し、残りをホストアドレスに付加します。たとえば、200.200.200.0 / 27は、ホストアドレスが63以下でなければならないことを自動的に意味します。繰り返しますが、IPはまだこの情報を教えてくれるので、私の質問を続けます
...-KMC

それはすべてが言われ終わったときのアドレスとネットマスクであり、それは基礎となるハードウェアがネットブロックの計算に使用するものですよね?
フィアスコLabsの

IPにはサブネットマスクに必要なすべての情報がまだ含まれているため、私の質問は存続します。サブネットマスクが存在する理由はまだありません。
KMC

1
@KMC:私は本当にあなたのコメントを受け取りません。CIDRプレフィックスはサブネットマスクとソフトウェアに匹敵するため、好みの問題としてプレフィックスまたはマスクのいずれかをよく使用します。
レゴラス

20
@KMC:/27 あるだけ異なる表記で書かれた、サブネットマスク。
ハインジ

20

最初のオクテットはすでにネットワーククラスを指定しています(1-127:A、128-191:B、192-223:Cなど)。A、B、またはCは、ネットワークのオクテット数(それぞれ255.0.0.0、255.255.0.0、255.255.255.0)を意味し、ネットワークの各クラスで許可されるホストの数を自動的に示します。

正しいですが、誰かがそのネットワークをサブネット化する場合は、サブネットマスクを使用して自分のサブネットの大きさを知る必要があります。はい、クラスフルアドレス指定により、クラスはネットワークのサイズを通知し、ホストはあなたと同じネットワーク内にありますが、そのネットワークがサブネットマスクなしでサブネット化されている場合、別のノードがあなたと同じサブネット内にあるかどうかをどのように知るでしょうか?

イーサネットネットワークを使用しているとします。サブネット化を使用したクラスフルアドレス指定を使用します。あなたのIPアドレスが1.2.3.4あり、あなたが到達したい1.3.1.1。ARPを使用してそのアドレスに到達しますか?まあ、それはかどうかに依存1.2.3.4して1.3.1.1同じですサブネット。同じネットワークにいても、異なるサブネットにある場合は、ルーターを使用する必要があります。それらが同じサブネットにある場合は、ARPを使用する必要があります。

したがって、サブネット化が使用されている場合、クラスフルネットワークであってもサブネットマスクが必要です。

実際、サブネット化とCIDRを混同していると思います。CIDRがなければ、サブネット化されていても、管理リージョン間にサブネットマスクは必要ありません。しかし、あなたはまだネットワーク内でそれを必要としています!


6

サブネットマスクは、ネットワークアドレスと組み合わせて、IPアドレスに対してビット単位の操作を行うために使用されます。私の記憶がうまく機能している場合は、IPアドレスを取得し、それと特定のネットワークのサブネットマスクに対して少し賢明なANDを実行します。結果がネットワークアドレスと等しい場合、IPアドレスはその特定のネットワーク上にあります。ネットワークアドレスとサブネットマスクのルーティングテーブルを持つルーターは、単純なバイナリ計算(コンピューターにとって処理速度が速いとはいえないにしても、非常に高速です)を使用して、パケットをパントするインターフェイスを見つけることができます。


3

「最初のオクテットはすでにネットワーククラスを指定しています(1-127:A、128-191:B、192-223:Cなど)。」

現在、これを尊重する一般的なプロトコルはあまりありません(@Fiasco Labsのコメントを参照してください-RIPのみが考えられます)。だから、あなたの質問のこの声明:

IPは、サブネットマスクが持つすべての情報などを提供します。

現在インターネットで使用されているプロトコルの大部分には当てはまりません。

相互に接続され、相互に通信するだけでルーターを一切使用しないマシンが複数ある場合、サブネットマスクは実際には必要ありません(ただし、最新のTCP / IPスタックでは1つを指定する必要があります)。

ルーターは(サブ)ネットワークのエッジを定義します。ルーターを経由する必要があるものはすべて別のネットワーク上にあります。逆もまた同様です。別のネットワークに移動する必要があるものはすべてルーターを経由する必要があります。

サブネットマスクは、すべてのマシンが、トラフィックが現在のネットワーク向けであるか、宛先に到達するためにルーターに送信する必要があるかどうかを判断する方法です。コンピューターのTCP / IPスタックは、サブネットマスク内にある場合、宛先に直接トラフィックを送信します。そうでない場合、ルーティングテーブルを参照し、通常の状況では、他のトラフィックをデフォルトゲートウェイに送信します。


3

最初のオクテットはすでにネットワーククラスを指定しています(1-127:A、128-191:B、192-223:Cなど)。A、B、またはCは、ネットワークのオクテット数(それぞれ255.0.0.0、255.255.0.0、255.255.255.0)を意味し、ネットワークの各クラスで許可されるホストの数を自動的に示します。

これは歴史的に真実でしたが。これは長年にわたって真実ではありませんでした。数年前、24.0.0.0 / 8はさまざまなISPにバラバラに配布されました。(これは主にケーブルプロバイダー向けだと思います。)

ネットワークの割り当てに当てはまる場合でも、ルーティングを簡素化するには内部ネットワークにネットマスクが必要でした。10.0.0.0/8のようなネットワークの効率的なルーティングには、より小さなネットワークへの再分割が必要です。これは、/ 16および/ 8サブディビジョンを使用した単純なスキームかもしれませんが、クラスレスサブディビジョンである可能性が高くなります。サブネットを大きくすると、アドレススペースをより効率的に使用できます(/ 24の99%以上がデバイスで使用でき、/ 30の50%しか使用できません)。

ローカルネットワークはデバイスから直接ルーティングされますが、他のアドレスはルーターを通過します。複数のインターフェイスを持つホストは、異なるサイズのネットワークに接続できます。

マルチホームホストのないサブネットの場合、/ 24には必要以上のアドレスが含まれます。私が使用したほとんどのルーターには24、48、または96個のポートがあり、/ 27、/ 26、または/ 25サブネットでサポートできます。これにより、DCHPおよび/またはマルチホーミング用の追加アドレスが許可されます。組織は、ルーティング用に/ 24または/ 23のサブネットを割り当てることを標準化できます。

IPv4アドレスはすでにネットワークとホストの情報を提供しているので、なぜサブネットマスクがまだ必要なのですか?

多くのデバイスは、/ 24のデフォルトネットマスクを使用します。これは、多くの場合、ルーターに割り当てられたローカルサブネット(localnet)のサイズと一致します。これは、クラスA、B、およびCに等しく適用できます。サブネットサイズがデフォルトサブネットと一致しない限り、ネットマスクが必要です。

CIDR形式を使用してアドレスが指定されている場合、ネットマスクとネットワークはアドレスから計算できます。そうでない場合、ネットワークはアドレスとネットマスクから計算できます。アドレスとネットワークからネットマスクを確実に計算することはできません。

サブネットのゲートウェイ(ルーター)アドレスを提供すると、サブネット外のアドレスへのルーティングを許可するようにデフォルトルートを構成できます。


2

@Adrianの答えを除いて、これらのどれも実際に言及しているのかわかりませんが、ソリューションを理解するために簡単なものの代わりにマスクを使用する理由と、彼はマスキングが速いという事実に触れただけです。 192.168.1.200-192.168.1.220のアドレスに興味があるのか​​、またはこれに* .my.address.comのような名前を使用して、番号を割り当てる代わりに各コンピューターに名前を付けるだけではどうですか?

実際、ルーティングから数値をある程度完全に削除できるようになりました。ほとんどのPCは送信されるトラフィックの種類を処理できますが、大規模なデバイスにはまだ問題があります。

このようなフィルタリングは常に行われており、LOTが発生しています。マスキングはハードウェアで実行できるため、興味のないパケット(以前はワイヤを通過していたパケットの99%でしたが、今ではスイッチハブではないパケットに時間を浪費する必要がなくなります)あなたのマシンに宛てられ、再び関連性が低くなります)。

ハードウェア上で非常に簡単なソリューションの場合、非常に柔軟です。同じハードウェアは、クラスAネットワーク全体(10.xxx)または同じ実装の1つまたは2つのIPアドレスのみをルーティングできます。

これは、他の回答の代わりになるものではなく、ほんの少しの情報です。


「これに* .my.address.comのような名前を使用するだけでなく、各コンピューターに名前を付けるのはなぜですか」-つまり、DNSのようなものですか。
-Piskvor

@Piskvorまさに!DNSはIPアドレスに解決されるため、DNSを直接使用できますが、使用される処理能力は上がります。* .meh.comは別のものになります* .alt.meh.com以外のアドレスに行くようにするには...でも、サブディバイドのドメインを可能性
ビル・K

はい、動作します-それが動作するとき(追加の複雑さ); さらに、DNSサーバーの場所を知る必要があります。鶏と卵の問題。
-Piskvor

@Piskvor私はただ、パフォーマンスを除いてうまく機能する可能性がある他の可能性があると言っています-場合によってはまだ重要です-そして、それはすべてを書き直す必要があるという事実。(別のアドレッシングスキームに切り替えた場合、DNSサーバーの問題は本当に異なると思いますか?)
Bill K

いいえ、問題は確かに続きます。(そして、単純なネットワークスタックへのプッシュはなくなりません-まったく逆に、「モノのインターネット」で強くなります:単純なことは、必要な電力が少なくなり、バッテリー寿命が長くなることを意味します)
-Piskvor

1

他の回答ではすでに多くのことが説明されていますが、主なものではありません。

IPアドレスが受信者の完全なアドレスを既に提供できる場合、サブネットマスクが存在する理由を知りたいと思います。大規模な組織では、部門ごとに別のネットワークが必要になる場合があるため、たとえば、会計士は別のサブネットに属し、マーケティング部門の内部IPアドレスにアクセスできません。したがって、たとえば、IP 192.168.10.3の従業員は、192.168.15.76のプリンターにアクセスできません。これは、異なるサブネットにあるためです。


1

これまでのところ、(CIDRとは対照的に)サブネットがまだ使用されている理由についてはまだ答えがありません。サブネットマスクには2つの問題があります。

  1. 無効な連続しないマスクを指定できます。
  2. (CIDRにも適用されます)重複が発生する可能性があります-ISPは異なるサブネットの一部として同じIPアドレスを提供できます。例えば

    顧客A:22.132.124.121サブネットマスク255.255.255.0
    顧客B:22.132.114.55サブネットマスク255.255.0.0

すぐに表示されるわけではありません。

https://blog.certskills.com/ccent/vlsmo_01_01/


0

通常、サブネットマスクは、以下のサブネットワークのインジケータとして機能します。 通常、ネットワークには複数のサブネットが含まれ、サブネットマスクはルーターが使用する方法であり、特定の宛先(サブネットマスクを使用する任意のサブネット)にトラフィックを配信します。 このリンクにはサブネットマスクの概要が含まれます


1
リンクの重要な情報をここに追加し、リンクをソースとして追加してください。
avirk 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.