web-dev-qa-db-ja.com

ルーターとDHCPサーバーで異なるサブネットマスク

今日何か面白いことに遭遇しましたが、なぜこれが起こったのかまだ頭を悩ませています。ネットマスクを/ 24から/ 20に変更して、dhcpサーバーから使用できるIPアドレスの数を増やしようとしていました。

これは 最初のシナリオ でした。ルーターのサブネットマスクを/ 20に変更して、dhcpサーバーのサブネットマスクと一致させました。ただし、静的IPを持つワークステーションのサブネットマスクは変更せず、/ 24のままでした。いくつかのワークステーションとワイヤレスデバイスをネットワークに接続しましたが、すべてが/ 20の正しい範囲で提供され、ネットワークにアクセスできます。

この最初のシナリオに対する私の質問は、すべてのデバイスが機能するために同じサブネットマスクを持つことになっているのではないかということです。静的IPアドレスと/ 24のネットマスクを持つワークステーションがまだ機能しているのはなぜですか?

それから私は 2番目のシナリオ を試しました。今回はルーターのサブネットマスクを/ 24のままにし、DHCPサーバーのサブネットマスクを/ 20に変更しただけです。結果?サブネットマスク/ 24の静的IPを持つデバイスは機能します。サブネットマスク/ 20の動的IPを提供するデバイスは、ネットワークにアクセスできません。 これに対する私の質問は:前のシナリオが両方のサブネットで機能するかどうかです。なぜこの状況ではそうではないのですか?

これが言及する価値があるかどうかはわかりませんが、DHCPサーバーはubuntudhcpサーバーを実行しています。

1
gp04lch

この回答は、ルーターのIPアドレスが192.169.1.100(または192.168.1.0〜255の任意のIPアドレス)であることを前提としています。

/ 24サブネットマスクを使用すると、IPアドレスの範囲は192.168.1.0〜192.168.1.255(ネットワークアドレスとブロードキャストアドレスを含む)になります。

/ 20サブネットマスクを使用すると、IPアドレスの範囲は192.168.0.0〜192.168.15.255(ネットワークアドレスとブロードキャストアドレスを含む)になります。

いずれかのサブネットマスクを持つホストの観点から、192.168.1.100は有効なローカルアドレスです。/20サブネットと/ 24サブネットの両方に存在します。ホストは、他のホストが使用しているサブネットマスクを認識していません。ホストは、自身のサブネットマスクのみを認識し、それを使用して、ローカルのIPアドレスとローカルでないIPアドレスを判別します。/24の範囲のIPアドレスを持つホストは、任意のホストのローカルサブネットに対して、さらに重要なことに、このシナリオではルーターに対してbelongのように見えますが、[〜#〜]しかし[〜#〜]/24サブネット内のホストは、IPアドレスも192.168.1.0〜192.168.1.255の範囲内にある他のホストとのみ通信できます。そのため、最初のシナリオは機能しますが、2番目のシナリオは機能しません。最初のシナリオでは、ルーターが/ 20サブネットマスクを使用しているため、すべてのホストがルーターと通信できます[〜#〜] but [〜#〜] IPアドレスは両方のサブネットに含まれますいずれかのサブネットマスクを持つホストの。 2番目のシナリオでは、ルーターは/ 24サブネット内にあるIPアドレスとのみ通信でき、192.168.1.255を超えるIPアドレスを持つホストとは通信できません。これらのIPアドレスは192.168.1.0/24の範囲外であるためです。 2番目のシナリオのルーターサブネットです。

2
joeqwerty

サブネットマスクは主に、ローカルネットワーク上で別のIPアドレスにアクセスできるかどうか、またはルーターを経由する必要があるかどうかを判断するために使用されます。古い/ 24サブネットマスクを使用しているワークステーションは、古い/ 24ネットワーク内にあった他のすべてにアクセスできます。これは、間違ったマスクでもこれらのアドレスに正しい答えが得られるためです。古い/ 24ネットワークにはなかった新しい/ 20ネットワークのIPアドレスと通信できなくなります。そのため、古いマスクは新しいネットワークでは機能しないと言えます。

2番目のシナリオでは、ルーターのマスクが/ 24のままであるため、古いネットワーク外のIPアドレスを持つデバイスにアクセスできなくなり、それらのデバイスはルーターにアクセスできなくなります。

5
Mike Scott