Cisco NCS 5000 シリーズ ルータ IP アドレスおよびサービス コンフィギュレーション ガイド、IOS XR リリース 6.0.x
ARP の設定
ARP の設定

ARP の設定

ARP の設定

アドレス解決はネットワーク アドレスをメディア アクセス コントロール(MAC)アドレスにマッピングするプロセスです。通常は、ARP プロトコルを使用してシステムにより動的に実行されますが、スタティック ARP エントリの設定によって実行することもできます。このプロセスを実現するのに使用されるのが、アドレス解決プロトコル(ARP)です。

ARP は、IP アドレスをメディアや MAC アドレスに関連付けるために使用されます。ARP は IP アドレスを入力とし、関連するメディアのアドレスを決定します。メディアまたは MAC アドレスが決定すると、IP アドレスまたはメディア アドレスの関連付けは、すぐ取得できるように ARP のキャッシュに保管されます。その後、IP データグラムがリンク層フレームにカプセル化され、ネットワークを通じて送信されます。

ARP の詳細については、次を参照してください。 ARP の設定に関する情報

ARP およびプロキシ ARP

Cisco IOS XR ソフトウェアでは、アドレス解決プロトコル(ARP)とプロキシ ARP という 2 つの形式のアドレス解決がサポートされています。これらのプロトコルは、それぞれ RFC 826 と RFC 1027 で定義されています。Cisco IOS XR ソフトウェアでは、ローカル プロキシ ARP という ARP の形式もサポートされています。

プロキシ ARP とローカル プロキシ ARP の詳細については、次を参照してください。 プロキシ ARP とローカル プロキシ ARP

[Restrictions(機能制限)]

ARP の設定には、次の制約事項が適用されます。

  • 逆アドレス解決プロトコル(RARP)はサポートされません。

  • 転送情報ベース(FIB)で ARP パケットのレートを制限する ARP スロットリングはサポートされていません。

ARP キャッシュ エントリ

ARP は、ネットワーク アドレス(IP アドレスなど)とイーサネット ハードウェア アドレスの間の通信を確立します。各通信の記録は、キャッシュ内に事前定義された期間だけ保持された後、廃棄されます。

また、明示的に削除されるまで存続するスタティック(永続)エントリを ARP キャッシュに追加することもできます。

スタティック ARP キャッシュ エントリの定義

ARP をはじめとするアドレス解決プロトコルを使用すると、IP アドレスとメディア アドレスとをダイナミックにマッピングできます。大部分のホストはダイナミック アドレス解決をサポートしているため、通常はスタティック ARP エントリを指定する必要はありません。スタティック ARP キャッシュ エントリを定義する必要がある場合は、グローバルに定義できます。このタスクを実行すると、ARP キャッシュにエントリが永続的にインストールされます。Cisco IOS XR ソフトウェアはこのエントリを使用して、32 ビット IP アドレスを 48 ビットのハードウェア アドレスに変換します。

また、ARP キャッシュにエイリアス エントリを作成することにより、特定の IP アドレスによって識別されたかのように、ARP 要求に応答することもできます。

設定例

キャッシュ エントリを作成して、IP アドレス 20.0.0.2 と MAC アドレス 20.0.2 の間に接続を確立します。さらに、このキャッシュ エントリをエイリアス エントリとして作成すると、エントリに関連付けられているインターフェイスは、エントリ内のデータ リンク層アドレスを使って、このネットワーク層アドレスに対する ARP 要求パケットに応答します。

Router# config
Router(config)# arp 20.0.0.2 20.0.2 arpA alias
実行コンフィギュレーション
Router# show running-config interface tenGigE 0/0/0/0
arp 1.0.0.2 1.0.2 arpa
arp vrf default 1.0.0.2 0001.0000.0002 ARPA
確認

[State] が [Static] になっているかをチェックして、適切に機能していることを確認します。

Router# show arp 20.0.0.2
-------------------------------------------------------------------------------
0/RP0/CPU0
-------------------------------------------------------------------------------
Address         Age        Hardware Addr   State        Type  Interface
20.0.0.2        -          0020.0000.0002  Static ARPA  TenGigE0/0/0/0 
関連コマンド
  • arp

  • show arp

プロキシ ARP とローカル プロキシ ARP

プロキシ ARP がディセーブルされると、ネットワーキングデバイスは、次のいずれかの条件が満たされる場合に限り、インターフェイスに受信された ARP 要求に応答します。

  • ARP 要求のターゲット IP アドレスは、要求が受信されたインターフェイス IP アドレスと同じです。

  • ARP 要求のターゲット IP アドレスには、静的に設定された ARP エイリアスがあります。

プロキシ ARP がイネーブルになると、ネットワーキング デバイスは、次の条件すべてを満たす ARP 要求にも応答します。

  • ターゲット IP アドレスが、要求を受信した同一の物理ネットワーク(LAN)上にない。

  • ネットワーキング デバイスに、ターゲット IP アドレスまでのルートが 1 つ以上存在する。

  • ターゲット IP アドレスまでのルートすべてが、要求を受信したインターフェイスとは別のインターフェイスを通過する。

プロキシ ARP がイネーブルになっている場合、ネットワーキング デバイスは、次の条件をすべて満たす ARP 要求に応答します。

  • ARP 要求のターゲット IP アドレス、ARP ソースの IP アドレス、および ARP 要求を受信するインターフェイスの IP アドレスが、同じレイヤ 3 ネットワーク上にある。

  • ターゲット IP アドレスのネクストホップが、要求を受信するインターフェイスと同じインターフェイスを使用する。

通常、ローカル プロキシ ARP は、同じレイヤ 3 ネットワーク()で MAC アドレスを IP アドレスに解決するために使用されます。ローカル プロキシ ARP は、ARP でサポートされるあらゆるタイプのインターフェイスに加えて、アンナンバード インターフェイスに対応しています。

プロキシ ARP のイネーブル化

Cisco IOS XR ソフトウェア は(RFC 1027 で定義されている)プロキシ ARP を使用して、ルーティングに必要な情報を持たないホストでも他のネットワークやサブネット上のホストのメディア アドレスを判別できるようにします。たとえば、ARP 要求の送信元と異なるインターフェイス上のホストに宛てた ARP 要求をルータが受信した場合、そのルータに他のインターフェイスを経由してそのホストに至るすべてのルートが格納されていれば、ルータは自身のローカル データ リンク アドレスを示すプロキシ ARP 応答パケットを生成します。ARP 要求を送信したホストはルータにパケットを送信し、ルータはパケットを目的のホストに転送します。プロキシ ARP はデフォルトではディセーブルになっています。このタスクでは、ディセーブルになっているプロキシ ARP をイネーブルにする方法について説明します。

設定例

プロキシ ARP を TenGigE インターフェイス 0/0/0/0 でイネーブルにします。

Router# configure
Router(config)# interface TenGigE 0/0/0/0
Router(config-if)# proxy-arp	
Router(config-if)# commit
実行コンフィギュレーション
Router# show running-config interface tenGigE 0/0/0/0
interface TenGigE0/0/0/0
 mtu 4000
 ipv4 address 1.0.0.1 255.255.255.0
 proxy-arp
!
!
確認

プロキシ ARP が設定され、イネーブルになっていることを確認します。

Router# show arp idb tenGigE 0/0/0/0 location 0/RP0/CPU0
		TenGigE0/0/0/0 (0x08000038):
  IPv4 address 1.0.0.1, Vrf ID 0x60000000
  VRF Name default
  Dynamic learning: Enable
  Dynamic entry timeout: 14400 secs
  Purge delay: off
  IPv4 caps added (state up)
  MPLS caps not added
  Interface not virtual, not client fwd ref,
  Proxy arp is configured, is enabled
  Local Proxy arp not configured
  Packet IO layer is NetIO
  Srg Role : DEFAULT
  Idb Flag : 262332
  IDB is Complete
関連コマンド
  • proxy-arp

  • show arp idb

ローカル プロキシ ARP のイネーブル化

ローカル プロキシ ARP は、レイヤ 2 で分離されたプライベート VLAN など、同じレイヤ 3 ネットワークで MAC アドレスを IP アドレスに解決するために使用されます。ローカル プロキシ ARP は、ARP でサポートされるあらゆるタイプのインターフェイスに加えて、アンナンバード インターフェイスに対応しています。

設定例

ローカル プロキシ ARP を TenGigE インターフェイス 0/0/0/0 でイネーブルにします。

Router# configure
Router(config)# interface tenGigE 0/0/0/0
Router(config-if)# local-proxy-arp
Router(config-if)# commit
実行コンフィギュレーション
Router# show running-config interface tenGigE 0/0/0/0 
interface TenGigE0/0/0/0
ipv4 address 1.0.0.1 255.255.255.0
local-proxy-arp
!
確認

ローカル プロキシ ARP が設定されていることを確認します。

Router# show arp idb tenGigE 0/0/0/0 location 0/RP0/CPU0
TenGigE0/0/0/0 (0x08000038):
  IPv4 address 1.0.0.1, Vrf ID 0x60000000
  VRF Name default
  Dynamic learning: Enable
  Dynamic entry timeout: 14400 secs
  Purge delay: off
  IPv4 caps added (state up)
  MPLS caps not added
  Interface not virtual, not client fwd ref,
  Proxy arp not configured, not enabled
  Local Proxy arp is configured
  Packet IO layer is NetIO
  Srg Role : DEFAULT
  Idb Flag : 264332
  IDB is Complete
関連コマンド
  • local-proxy-arp

  • show arp idb

Direct Attached Gateway Redundancy

Direct Attached Gateway Redundancy(DAGR)を設定すると、接続デバイス上のサード パーティ冗長性スキームで Gratuitous ARP をフェールオーバー シグナルとして使用できるようになり、ARP プロセスはルーティング情報ベース(RIB)に新しいタイプのルートをアドバタイズできます。このようなルートは、Open Shortest Path First(OSPF)によって配布されます。

IP ネットワークの部分によっては、ルーティング プロトコルのない冗長性が必要になることがあります。典型的な例が、モバイル環境で見られます。モバイル環境では、ベース ステーション コントローラやマルチメディア ゲートウェイなどのデバイスをペアで導入して冗長性を確保し、アグレッシブ フェールオーバー要件(サブセカンド以下)を満たしています。しかし、これらのデバイスには一般に、OSPF や Intermediate System-to-Intermediate System(IS-IS)プロトコルなどのネイティブのレイヤ 3 プロトコルを使用して、この冗長性を管理する機能がありません。その代わりに、イーサネット スイッチ経由で隣接の IP デバイスに接続されるものと認識し、仮想ルータ冗長プロトコル(VRRP)によく似た独自のメカニズムを使用してレイヤ 2 で冗長性を管理します。このためには復元力を持つイーサネット スイッチング機能が必要であり、実現できるかどうかは MAC ラーニングや MAC フラッディングなどのメカニズムに左右されます。

DAGR は、イーサネット スイッチを介さずに直接、このような多数のデバイスを接続できるようにする機能です。DAGR を使用すると、レイヤ 3 ソリューションを使用して、サブセカンド フェールオーバー要件を満たすことができます。MAC ラーニングもフラッディングもスイッチングも必要ありません。


(注)  


モバイル デバイスの 1 対 1 レイヤ 2 冗長性メカニズムは独自のメカニズムであるため、必ずしも標準に準拠しているとは限りません。IP モバイル機器のほとんどは DAGR と互換性がありますが、DAGR とのインターフェイスとなるレイヤ 2 メカニズムが独自のものである場合があるため、相互運用性を確保するには資格が必要になります。


[Restrictions(機能制限)]

Direct Attached Gateway Redundancy(DAGR)機能を設定する際には、さらに次の制限が適用されます。

  • IPv6 はサポートされていません。

  • イーサネット バンドルはサポートされません。

  • Non-Ethernet インターフェイスはサポートされていません。

  • 無中断 ARP プロセス再起動はサポートされません。

  • 無中断 RSP フェールオーバーはサポートされません。

DAGR のイネーブル化

設定例

DAGR を TenGigE インターフェイス 0/0/0/10 でイネーブルにして、ピア ルータに ipv4 アドレス 5.10.10.1 を指定します。フェールオーバーの属性セットは、riority-timeout、route distance、route metric、timers query です。

Router#configure
Router(config)#interface TenGigE 0/0/0/10
outer(config-if)#arp dagr
Router(config-if-dagr)#peer ipv4 5.10.10.1
Router(config-if-dagr-peer)#priority-timeout 1
Router(config-if-dagr-peer#route distance normal 1 priority 1
Router(config-if-dagr-peer#route metric normal 1 priority 1
Router(config-if-dagr-peer#timers query 2 standby 1
Router(config-if-dagr-peer#commit
実行コンフィギュレーション
Router# show running-config interface tenGigE 0/0/0/10 
mtu 9216
 ipv4 address 10.0.0.1 255.255.255.0
 arp dagr
  peer ipv4 1.0.0.1
   route metric normal 1 priority 1
   timers query 2 standby 1
   priority-timeout 1
   route distance normal 1 priority 1
  !
  peer ipv4 10.0.0.3
  !
 !
!
!
確認
Router#show arp dagr
-------------------------------------------------------------------------------
0/RP0/CPU0
-------------------------------------------------------------------------------
Interface                 Virtual IP      State     Query-pd Dist Metr
TenGigE0/0/0/10           1.0.0.1         Standby   1        None None
TenGigE0/0/0/10           10.0.0.3        Query     1        None None
関連コマンド
  • arp dagr

  • route distance

  • route metric

  • priority-timeout

  • peer(DAGR)

  • timers(DAGR)

  • show arp dagr

ARP の設定に関する情報

アドレス解決の概要

IP のデバイスは、ローカル アドレス(ローカル セグメントまたは LAN のデバイスを一意に識別)とネットワーク アドレス(デバイスが属するネットワークを識別)の両方を持つことができます。ローカル アドレスは、より正確にはデータリンク アドレスとして知られています。その理由は、ローカル アドレスはパケット ヘッダーのデータリンク層(OSI モデルの第 2 層)の部分にあり、データリンク デバイス(ブリッジやすべてのデバイス インターフェイスなど)によって読み取られるからです。データリンク層内の MAC 副層がその層用にアドレスを処理するため、技術志向が強い人ほどローカル アドレスを MAC アドレスと呼びます。

たとえば、イーサネットでデバイスと通信するには、Cisco IOS XR ソフトウェアがまずそのデバイスの 48 ビット MAC アドレスまたはローカル データリンク アドレスを特定する必要があります。IP アドレスからローカル データリンク アドレスを決定する処理は、アドレス解決と呼ばれています。

単一の LAN でのアドレス解決

次のプロセスでは、送信元デバイスと宛先デバイスが同じ LAN に接続されている場合のアドレス解決について説明します。

  1. エンド システム A(ノード A)は ARP 要求を LAN にブロードキャストし、エンド システム B(ノード B)の MAC アドレスの学習を試みます。

  2. ブロードキャストは、エンド システム B を含め LAN 上のすべてのデバイスで受信され、処理されます。

  3. エンド システム B のみが、ARP 要求に応答します。ARP 応答に自身の MAC アドレスを含めてエンド システム A(ノード A)に送信します。

  4. エンド システム A(ノード A)は応答を受信し、自身の ARP キャッシュにエンド システム B の MAC アドレスを保存します(ARP キャッシュ内で、ネットワーク アドレスが MAC アドレスに関連付けられます)。

  5. エンド システム A(ノード A)はエンド システム B との通信が必要になるたびに、ARP キャッシュをチェックしてエンド システム B の MAC アドレスを探し、フレームを直接送信します。最初に ARP 要求を使用する必要はありません。

ルータによって相互接続されている場合のアドレス解決

次のプロセスでは、送信元デバイスと宛先デバイスが、ルータによって相互接続された異なる LAN に接続されている場合のアドレス解決について説明します(プロキシ ARP が有効になっている場合のみ)。

  1. エンド システム Y(ノード A)は ARP 要求を LAN にブロードキャストし、エンド システム Z(ノード B)の MAC アドレスの学習を試みます。

  2. ブロードキャストは、ルータ X を含め LAN 上のすべてのデバイスで受信され、処理されます。

  3. ルータ X は、自身のルーティング テーブルをチェックし、エンド システム Z(ノード B)が別の LAN 上にあることを突き止めます。

  4. これにより、ルータ X はエンド システム Z(ノード B)のプロキシとして動作します。ルータ X はエンド システム Z(ノード B)に属しているかのように、エンド システム Y(ノード A)からの ARP 要求に応答し、ARP 応答に自身の MAC アドレスを含めて送信します。

  5. エンド システム Y(ノード A)は ARP 応答を受信し、自身の ARP キャッシュのエンド システム Z(ノード B)用エントリにルータ X の MAC アドレスを保存します。

  6. エンド システム Y(ノード A)はエンド システム Z(ノード B)との通信が必要になると、ARP キャッシュをチェックしてルータ X の MAC アドレスを探し、フレームを直接送信します。ARP 要求は使用されません。

  7. ルータ X は、エンド システム Y(ノード A)からトラフィックを受信し、それを他の LAN 上のエンド システム Z(ノード B)に転送します。