mixiで趣味の話をしよう

mixiコミュニティには270万を超える趣味コミュニティがあるよ
ログインもしくは登録をして同じ趣味の人と出会おう♪

APIPA

  • mixiチェック
  • このエントリーをはてなブックマークに追加
詳細 2014年9月15日 08:43更新

APIPA
APIPA(Automatic Private IP Addressing、エーピーアイピーエー)は、ネットワーク機器でリンクローカルIPアドレスを自動的に割り当てる機能。

通常、ネットワーク機器は手動でIPアドレスを設定するかもしくはDHCPサーバより自動的に割り振られたアドレスが設定される。しかしこれらを管理する人がいない、あるいは知識がない場合、自身のアドレスを設定する方式として考案された。小規模な閉じたネットワークを対象とする。





目次
[非表示] 1 リンクローカルアドレス
2 IPv4の場合: APIPA
3 IPv6の場合
4 脚注
5 出典
6 関連項目


リンクローカルアドレス [編集]

リンクローカルアドレス(英: link-local address)とは、ローカルネットワークの範囲内の通信または1対1のコネクションにおいてのみ使用することを意図されているIPアドレスである。ルーターはリンクローカルアドレスのついたパケットを転送しない。

リンクローカルアドレスは管理者が人手で割り当てるか、オペレーティングシステムの手続きによって割り当てる。ほとんどの場合、「ステートレスアドレス自動設定」を使って割り当てる。IPv4では[1]、外部に Dynamic Host Configuration Protocol (DHCP) などのアドレス割り当て機構が存在しない場合や、そういった割り当て機構が失敗した場合にのみリンクローカルアドレスを割り当てる。IPv6では[2]、リンクローカルアドレスは必須であり、各種プロトコル部品の内部の動作で必要とされる。

IPv4のリンクローカルアドレスはアドレスブロック 169.254.0.0/16 に定義されている。RFC 5735 の中にLink Local Address Blockとして、このアドレスに関する規定がある。IPv6では、プレフィックス fe80::/64 が割り当てられている。

IPv4の場合: APIPA [編集]

RFC 3927 において Internet Engineering Task Force は 169.254.1.0 から 169.254.254.255 までのアドレスブロックをIPv4でのリンクローカル用アドレスとして予約していた[note 1]。リンクローカルアドレスは他のアドレス割り当て手段が利用可能でない場合にホスト内部で「ステートレスアドレス自動設定」によってインタフェースに割り当てられる[1]。

RFC 3927 では例えば、リンクローカルアドレスとグローバルなルーター通過可能なアドレスを同一ホストに同時に設定するなど、異なるスコープ[3]での複数アドレスの同時使用に対して警告している。そのため、ホストはリンクローカルアドレスを割り当てる前にネットワーク上にDHCPサーバがないか問い合わせる。Windowsの実装ではAPIPAによる割り当ての前にDHCPでの接続を試みるため起動に時間を要する場合がある。

自動アドレス設定処理 (APIPA) では、予約された範囲からランダムに候補アドレスを選択し、Address Resolution Protocol (ARP) 要求をブロードキャストしネットワーク上の他の機器に同じアドレスが使われていないか確認する。ARPに応答があれば、候補IPアドレスが既に使われていることがわかる。その場合は再びランダムに候補IPアドレスを選択しておなじことを繰り返す。この処理はARPパケットに応答がない場合に終了し、候補IPアドレスが使用可能となる。

リンクローカルアドレスが割り当てられた後、グローバルなルーター通過可能なアドレスやプライベートなアドレスが利用可能になった際、新たなコネクションにはリンクローカルアドレスよりもそれらの新しいアドレスを使うことが推奨されているが、リンクローカルアドレスによる通信が突然不可能になるわけではない[4]。

マイクロソフトは、このアドレス自動設定技法を Automatic Private IP Addressing (APIPA) と呼んでいる[5]。一般にはAutoIPと呼ばれることも多い。

IPv6の場合 [編集]

IPv6では、アドレスブロック fe80::/10 がリンクローカル・アドレッシング向けに予約されている[2]。実際にリンクローカルアドレスとして使われているのはプレフィックス fe80::/64 のアドレス群である[6][note 2]。それらは自動(ステートレス)機構かステートフル(例えば、DHCPv6)機構で割り当てられる[note 3]。

IPv4とは異なり、IPv6では使用中のネットワークインタフェースについて必ずリンクローカルアドレスを必要とし、別にルーター通過可能なアドレスなどが割り当てられていてもリンクローカルアドレスが必須である[7]。つまり、IPv6を使用するネットワークインタフェースには必ず複数のIPv6アドレスが割り当てられている。リンクローカルアドレスは近隣者発見プロトコルのIPv6サブレイヤーやDHCPv6などのIPv6ベースのプロトコルで必要とされる。

IPv6では RFC 4862 に規定されている通り、「ステートレスアドレス自動設定」を近隣者発見プロトコル (NDP) の一部として実行する[8]。そのアドレスは、そのインタフェースのMACアドレスとルーティングプレフィックスから構成される。

IPv6のリンクローカルアドレスの割り当てでは、他のスコープのアドレスとは異なり、このルーティングプレフィックスがリンク上に存在することが暗黙に前提とされている。

IPv6では追加のアドレス割り当て手段が提供されている。NDPのルーティングプレフィックス広告を通して、ルーターまたは専用サーバがそのリンクに接続している全インタフェースに設定情報を通知し、それによって受信した各インタフェースで追加のIPアドレス割り当てがなされ、ローカルまたはグローバルのルーティングに使われる。この場合プレフィックスサーバは個々のホストでの割り当てをいちいち受信したり記録したりしないので、この処理もある意味でステートレスである。アドレスの一意性はアドレス選択方式(RFC 4862 の場合はMACアドレス方式、RFC 4941 の場合はランダム方式)と重複アドレス検出 (DAD) アルゴリズムの組合わせによって自動的に保証される

脚注 [編集]

1.^ 169.254/16 のブロックの最初と最後の256個のアドレスは後に RFC 3927 で使うために予約された。
2.^ アドレス範囲 fe80::/10 がリンクローカルアドレス向けに予約されているものの、そのうち54ビットはゼロに設定しなければならないので、実際のプレフィックスは fe80::/64 となる (RFC 4291, section 2.5.6.)。
3.^ しかし、あるホストのインタフェースがリンクローカルアドレスを既に持っている場合、そのホストがそのインタフェースのためにDHCPメッセージを送ってアドレスを得ようとするのは、そのリンクローカルアドレスを別の手段で割り当てた場合に限る(RFC 3315, sections 1.1 and 16 を参照)。

出典 [編集]

1.^ a b RFC 3927, Dynamic Configuration of IPv4 Link-Local Addresses, S. Cheshire, B. Aboba, E. Guttman, The Internet Society (May 2005)
2.^ a b RFC 4291,IP Version 6 Addressing Architecture, R. Hinden, S. Deering, The Internet Society (February 2006)
3.^ RFC 3927 section 1.9
4.^ RFC 3927 section 2.6.1
5.^ “APIPA”. Microsoft. 2010年8月2日閲覧。
6.^ RFC 4291, section 2.5.6. Link-Local IPv6 Unicast Addresses
7.^ RFC 4291, section 2.8. A Node's Required Addresses
8.^ RFC 4862, IPv6 Stateless Address Autoconfiguration, S. Thompson, T. Narten, T. Jinmei (September 2007)

関連項目 [編集]
Zeroconf
プライベートネットワーク

コミュニティにつぶやきを投稿

最近の投稿がありません泣き顔
つぶやき・トピック・イベント・アンケートを作成して参加者と交流しようわーい(嬉しい顔)
参加メンバー 2人
開設日
2012年4月2日

4438日間運営

カテゴリ
PC、インターネット
関連ワード
関連ワードを登録しよう

編集から関連ワードを登録すると、コミュニティがmixiワードに表示されるようになります!