web-dev-qa-db-ja.com

ルーターはどのようにIPアドレスを割り当てますか?

ルーターはどのようにしてIPアドレスを割り当てますか?これはランダムですか、それともセットメソッドですか?

同じデバイスに、接続された時間に関係なく、同じIPが割り当てられているようです。ルーターはMACアドレスを知っており、同じIPを割り当てていますか、それとも他に何かありますか?

14
agz

IPv4アドレスは通常、DHCPプロトコルを使用して割り当てられます。これがどのように行われるか特定のDHCPサーバーに依存ルーターで実行中...

  • DHCPを使用すると、アドレスは一定期間リースされるため、古いリースが期限切れになる前にデバイスが再起動してアドレスを要求すると、ルーターは通常同じ古いアドレスを(DHCPクライアントIDまたはMACアドレスに基づいて)提供します。

  • 一部のDHCPサーバーは、リースの有効期限が切れた後もしばらくの間、どのアドレスが発行されたかを記憶しているため、常に同じデバイスに同じアドレスを割り当てます。

  • デバイスが以前に見られなかった場合、それは実装に依存します。通常、新しいアドレスはランダムに選択されますが、時々順次に、時にはMACアドレスのある種のハッシュに基づいて、少なくともルーターtriesを使用して、古いアドレスを再度指定します。

たとえば、ISC DHCPサーバーのマニュアルページdhcpd.conf(5)を引用するにはdhcpd

 DHCPサーバーは、
ハッシュテーブルから使用可能なIPアドレスのリストを生成します。つまり、アドレスは特定の順序で並べ替えられていないため、
 DHCPサーバーがIPアドレスを割り当てる順序を予測することはできません。 ISC DHCPサーバーの以前のバージョン
のユーザーは、DHCPサーバーに慣れている
昇順でIPアドレスを割り当てる可能性がありますが、これは不可能です。 
 ISC DHCPサーバーのバージョン3でこの動作を構成する方法はありません。

IPv6の場合、同様のプロトコルDHCPv6があり、上記の回答が引き続き適用されます。

ただし、多くのネットワークはより単純な「ステートレス自動構成」プロトコルを使用しており、ルーターはprefix(別名ネットワークアドレス)のみをブロードキャストし、デバイスは独自のIPアドレスを割り当てます。割り当ては次の2つの方法で行われます。

  • 通常の「ステートレス自動構成」( RFC 4862 )では、IPアドレスの「ホスト」部分はデバイスのハードウェアアドレスに基づくです。 48ビットMACアドレスの場合、2番目のビットが反転され、ff:feが中間に挿入されます(64ビットにパディングするため)

    たとえば、接頭辞2001:470:1f0b:915::/64とMACアドレス48:5d:60:e8:65:8f結果はIPアドレス2001:470:1f0b:915:4a5d:60ff:fee8:658f

  • 「プライバシー拡張」( RFC 4941 )では、「ホスト」の部分はランダムに選択 –であり、新しいアドレスも10時間ごとに追加されます。

    「プライバシー拡張」がほとんど常に使用されることに注意してくださいに加えて通常の「ステートレス」MACベースのIPアドレス。

13
user1686

ルーターはIPアドレスを割り当てない:ルーターはインターフェイスでIPパケットを受信し、それをほとんど変更せずに別のインターフェイスに送信することを指摘することが重要だと思います(考えられる変更は= TTLおよびIPパケットのチェックサムの更新。パケット内のIPアドレス(NAT)の変更でさえ、ルーターのタスクを超えています)。

home routersと呼ばれるデバイスはルーターよりもはるかに多く、次の機能/サービスの一部も含まれています。

  • DHCPサーバー(これはIPアドレスを割り当てるサービスです)、
  • ADSLモデム(ISPへの接続をネゴシエートするため)、
  • ファイアウォール(着信接続と発信接続をフィルタリングするため)
  • 着信および発信NATデバイス(ホームネットワーク上のすべてのデバイスに対してISPによって割り当てられた単一のIPv4アドレスを共有するため))、
  • ルーター、
  • スイッチ、
  • WiFiアンテナ、
  • Webサーバー、
  • デバイスを構成するためのコンソール(web、sshまたはtelnet)、
  • その他...

(注:ファイアウォールは通常、インバウンドおよびアウトバウンドNATおよびルーティングを実行できますが、これらの4つの機能は専用デバイスを使用して実行できます。)

大規模なエンタープライズ展開では、DHCPサーバーは多くの場合、ルーターとは何の関係もない専用のLinuxまたはWindowsサーバー(通常はクラスター)でホストされます。

4
jfg956

一般に(IPV4の場合)、使用されるシステムは「DHCP」と呼ばれ、大まかに次のように機能します。

  • ルーターは「DHCPサーバー」を実行します。このサーバーには、使用可能なIPのテーブルがあります。
  • 各コンピューターはDHCP要求を行います。これは基本的に、ネットワーク上で "どのようなIPを取得できるか"と送信されるパケット(およびMACアドレス)です。
  • ルーターは受信したパケットを見て、ここにIPアドレス、ゲートウェイ、DNSサーバー[その他]と表示します
  • 次に、コンピューターはそれ自体を構成します。

MACアドレスは、DHCPサーバーテーブルで使用され、マシンが同じIPアドレスを使用できるようにします(使用可能な場合)。

4
davidgo