# IP / ARP

IPアドレスから物理アドレス（MACアドレス）を検索するARP（Address Resolution Protocol）関係の機能について説明します。

## ARPキャッシュ

通常、ARPキャッシュはプロトコルスタックの働きによって動的に構築・維持されていくため、管理者が手動で行うべきことはありません。しかしながら、状況に応じて手動でARPエントリーを登録することもできます。
ARPキャッシュにスタティックエントリーを追加するには、arpコマンドを使います。

    awplus(config)# arp 192.168.30.254 0000.f0f0.abcd port1.0.1

スタティックなARPエントリーを削除するには、arpコマンドをno形式で実行します。

    awplus(config)# no arp 192.168.30.254

ダイナミックなARPエントリーをすべて削除したいときは、clear arp-cacheコマンドを使います。

    awplus# clear arp-cache

ARPキャッシュの内容はshow arpコマンドで確認できます。

    awplus# show arp

## ARPキャッシュログ

本製品は、ARPキャッシュの変更（登録・削除）をログに記録できます。
ARPキャッシュログを有効にするには、arp logコマンドを使います。デフォルトは無効です。

    awplus(config)# arp log

ARPキャッシュログを表示するには、show logコマンドを使います。show logコマンドでは他のログメッセージも表示されますが、「 | include ARP_LOG」を指定すればARP関連のログだけを見ることができます。

    awplus# show log | include ARP_LOG
    2012 Feb  6 06:21:01 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 add 0013.4078.3b98 (192.168.2.4)
    2012 Feb  6 06:22:30 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 del 0013.4078.3b98 (192.168.2.4)
    2012 Feb  6 06:23:26 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 add 0030.940e.136b (192.168.2.20)
    2012 Feb  6 06:23:30 user.notice awplus IMISH[1830]: show log | include ARP_LOG

    awplus# show log | include ARP_LOG
    2012 Feb  6 06:25:28 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 add 00-17-9a-b6-03-69 (192.168.2.12)
    2012 Feb  6 06:25:30 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 add 00-03-37-6b-a6-a5 (192.168.2.10)
    2012 Feb  6 06:26:53 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 del 00-30-94-0e-13-6b (192.168.2.20)
    2012 Feb  6 06:27:31 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 del 00-17-9a-b6-03-69 (192.168.2.12)
    2012 Feb  6 06:28:09 user.notice awplus HSL[1007]: ARP_LOG port1.0.1 vlan1 del 00-03-37-6b-a6-a5 (192.168.2.10)
    2012 Feb  6 06:28:14 user.notice awplus IMISH[1830]: show log | include ARP_LOG
    awplus#

ログメッセージ本体（Message）の表示項目は、左から順にポート番号、VLAN ID、イベント（addかdel）、MACアドレス、IPアドレスです。
Note

あるIPアドレスに対応するMACアドレスが変更された場合は、delイベントとaddイベントが生成されます。

## NLBの設定

本製品は、Microsoft Network Load Balancing（NLB）に対応しています。
Microsoft Network Load Balancing（NLB）とは、Windows Serverの持つ負荷分散機能です。
NLBにより、複数のNLBサーバーに共通の仮想IPアドレスが割り当てられ、クライアントからの要求をサーバー全体に送信することで、負荷を分散します。
本製品は以下のモードに対応しています。

- マルチキャストモード（ダイナミック登録/スタティック登録）
- IGMPモード（ダイナミック登録）
- ユニキャストモード（ダイナミック登録）

### マルチキャストモード

NLBのマルチキャストモードを使う場合は、ARPエントリーのダイナミック登録/スタティック登録が可能です。
ARPエントリーをダイナミック登録する場合
arp-mac-disparity multicast(NLB)コマンドを実行します。

    awplus(config)# no platform load-balancing src-dst-mac
    awplus(config)# interface vlan20
    awplus(config-if)# arp-mac-disparity multicast

Note

本製品でNLB（arp-mac-disparityコマンド）を使用する場合は、事前にplatform load-balancingコマンドをno形式で実行しMACアドレスによる制御（src-dst-mac）を無効にしてください。
無効にしないでarp-mac-disparityコマンドを実行すると以下のメッセージが表示され設定が有効になりません。

    % Cannot configure arp-mac-disparity if src-dst-mac load balancing is enabled

arp-mac-disparity multicast(NLB)コマンドによって登録されたARPエントリーは、ARPテーブルのポート番号として初めにARPを受信したポートが代表で登録されます。

    awplus# show arp
     IP Address      MAC Address     Interface            Port        Type
     192.168.20.250  03bf.c0a8.14fa  vlan20               port1.0.1  dynamic

これにより、ユニキャストIPアドレスとマルチキャストMACアドレスの関連付けをしたARPエントリーのダイナミック登録が可能になり、登録されたアドレスに該当する通信は、同一VLAN内でフラッディングされます。

ARPエントリーをスタティック登録する場合
arpコマンドで、NLBサーバーで使用される仮想IPアドレスと仮想MACアドレスと、NLBサーバーが接続されているポートを関連付けます。

    awplus(config)# arp 192.168.20.250 03bf.c0a8.14fa port1.0.1-1.0.2

Note

2ポートまで指定可能です。

Note

Windows Server 2008でNLBサーバーを使用する場合、Sender部分に仮想IP/仮想MAC(Multicastアドレス)、L2ヘッダの送信元に実MACアドレスを使用している特殊なARP Requestが使われます。本ARPに応答させるために、Windows 2008 serverでARPエントリーをスタティックで使用する場合は、arp-mac-disparity multicast(NLB)コマンドも有効にしてください。
なお、Windows Server 2008 R2以降をNLBサーバーとして使用する場合、この設定は不要です。

複数ポートを指定してスタティック登録したARPエントリーは、ARPテーブルのポート番号として番号の小さいほうのポートが登録されます。

    awplus# show arp
     IP Address      MAC Address     Interface            Port        Type
     192.168.20.250  03bf.c0a8.14fa  vlan20               port1.0.1  static

これにより、登録されたアドレスに該当する通信を該当ポートのみに出力することができます。

### IGMPモード

通信を行いたいNLBサーバーがIGMPモードの場合、arp-mac-disparity multicast-igmp(NLB)コマンドを実行します。

    awplus(config)# no platform load-balancing src-dst-mac
    awplus(config)# interface vlan20
    awplus(config-if)# arp-mac-disparity multicast-igmp

Note

本製品でNLB（arp-mac-disparityコマンド）を使用する場合は、事前にplatform load-balancingコマンドをno形式で実行しMACアドレスによる制御（src-dst-mac）を無効にしてください。
無効にしないでarp-mac-disparityコマンドを実行すると以下のメッセージが表示され設定が有効になりません。

    % Cannot configure arp-mac-disparity if src-dst-mac load balancing is enabled

arp-mac-disparity multicast-igmp(NLB)コマンドによって登録されたARPエントリーは、ARPテーブルのポート番号として初めにARPを受信したポートが代表で登録されます。

    awplus# show arp
     IP Address      MAC Address     Interface            Port        Type
     192.168.20.250  0100.5e7f.14fa  vlan20               port1.0.1  dynamic

これにより、ユニキャストIPアドレスとマルチキャストMACアドレスの関連付けをしたARPエントリーがダイナミックのダイナミック登録が可能になり、登録されたアドレスに該当する通信は、IGMPテーブルに登録された当該マルチキャストグループのポートにのみ転送されます。

### ユニキャストモード

通信を行いたいNLBサーバーがユニキャストモードの場合、arp-mac-disparity unicast(NLB)コマンドを実行します。

    awplus(config)# no platform load-balancing src-dst-mac
    awplus(config)# interface vlan20
    awplus(config-if)# arp-mac-disparity unicast

Note

本製品でNLB（arp-mac-disparityコマンド）を使用する場合は、事前にplatform load-balancingコマンドをno形式で実行しMACアドレスによる制御（src-dst-mac）を無効にしてください。
無効にしないでarp-mac-disparityコマンドを実行すると以下のメッセージが表示され設定が有効になりません。

    % Cannot configure arp-mac-disparity if src-dst-mac load balancing is enabled

arp-mac-disparity unicast(NLB)コマンドによって登録されたARPエントリーは、ARPテーブルのポート番号として初めにARPを受信したポートが代表で登録されます。

    awplus# show arp
     IP Address      MAC Address     Interface            Port        Type
     192.168.20.250  02bf.c0a8.14fa  vlan20               port1.0.1  dynamic

これにより、ユニキャストモードで動作しているNLBサーバーのARPエントリーがダイナミック登録された場合に、登録されたアドレスに該当する通信が同一VLAN内でフラッディングされるようになります。

### L2環境での仕様

NLBサーバーが存在するVLANにIPアドレスを設定して本製品の運用を行う場合、本製品がNLBサーバーに対してARP解決を行う可能性がある構成となります。
本製品がNLBサーバーとのARP解決から得た情報を適切に取り扱うにはNLBの設定を有効化する必要がありますので、NLBサーバーが存在するVLANにIPアドレスを設定する場合は、本製品をL2スイッチとして使用する場合であってもNLBの設定を行うことを推奨します。
NLB設定時の本製品のL2スイッチとしての動作は以下のとおりです。

#### フラッディングするケース

ユニキャストモード時およびマルチキャストモード時はNLBサーバー宛ての通信をフラッディングします。

- マルチキャストモードの設定 - 対象VLANでarp-mac-disparity multicast(NLB)を有効にします。

      awplus(config)# no platform load-balancing src-dst-mac
      awplus(config)# interface vlan10
      awplus(config-if)# arp-mac-disparity multicast

- ユニキャストモードの設定 - 対象VLANでarp-mac-disparity unicast(NLB)を有効にします。

      awplus(config)# no platform load-balancing src-dst-mac
      awplus(config)# interface vlan10
      awplus(config-if)# arp-mac-disparity unicast

Note

本製品でNLB（arp-mac-disparityコマンド）を使用する場合は、事前にplatform load-balancingコマンドをno形式で実行しMACアドレスによる制御（src-dst-mac）を無効にしてください。
無効にしないでarp-mac-disparityコマンドを実行すると以下のメッセージが表示され設定が有効になりません。

    % Cannot configure arp-mac-disparity if src-dst-mac load balancing is enabled

#### 特定ポートにのみ転送するケース

以下のいずれかの条件を満たす場合、NLBサーバー宛て通信をNLBサーバーが接続されているポートのみに転送する状態になります。

- マルチキャストモード利用時かつ当該NLBサーバーの仮想アドレスがスタティックARPで登録されている場合（ダイナミックARPは対象外）
- IGMPモード利用時かつIGMP Snoopingが有効な場合

- マルチキャストモード（スタティック登録）の設定 - arpコマンドでNLBサーバーの仮想IPアドレス、仮想MACアドレスとNLBサーバーが接続されているポート（最大2ポート）を関連付けます。

      awplus(config)# arp 192.168.10.250 03bf.c0a8.0afa port1.0.1-1.0.2

- IGMPモードの設定 - 対象VLANでarp-mac-disparity multicast-igmp(NLB)を有効にします。

      awplus(config)# no platform load-balancing src-dst-mac
      awplus(config)# interface vlan10
      awplus(config-if)# arp-mac-disparity multicast-igmp

Note

本製品でNLB（arp-mac-disparityコマンド）を使用する場合は、事前にplatform load-balancingコマンドをno形式で実行しMACアドレスによる制御（src-dst-mac）を無効にしてください。
無効にしないでarp-mac-disparityコマンドを実行すると以下のメッセージが表示され設定が有効になりません。

    % Cannot configure arp-mac-disparity if src-dst-mac load balancing is enabled