- PR -

ARPの動作について教えてください

1
投稿者投稿内容
karasu7
会議室デビュー日: 2005/01/15
投稿数: 1
投稿日時: 2005-01-15 19:03
ARPの動作で下記のような動作はRFC上の動作なのでしょうか?それとも一般的にはそんな動きはおかしい?すみません、RFC上からそのような動作についての記述がみあたらなかったのでどなたか詳しい方、教えてください。

環境:ホストA(10.10.10.1)とホストB(10.10.10.2)がL2SWを介して接続

ホストA----L2SW------L2SW----ホストB

ホストAをrebootとすると、起動時にARP Requestをブロードキャストし、そのRequest
に対してホストBがARP Replyをユニキャストで返送。ここまでは動作的に普通だと思う
のですが、その後再度ホストAからユニキャストで再度ホストBに対してARP Requestが
送信されます。Gratuitous ARPであれば、Destination IPが自IPとなっていると思い
ますが、この場合ホストBのIPアドレスが設定されている状態になります。
このような動作は通常あるのでしょうか? すみませんが教えてください。

【図】
(1)ホストAをリブート

(2)ホストA----L2SW------L2SW----ホストB
   ARP Request(ブロードキャスト)→

(3)ホストA----L2SW------L2SW----ホストB
           ←ARP Reply(ユニキャスト)

ホストAが受信するとアドレスは解決のはず。ここまでは
普通のARPの動作。

(4)ホストA----L2SW------L2SW----ホストB
   ARP Request(ユニキャスト)→
     SourceIP:ホストA IP(10.10.10.1)
     DestinationIP:ホストB IP(10.10.10.2)

なぜ、ユニキャストで再度ARPがでる? もしかしてバグ?

〜 以後略 〜


[ メッセージ編集済み 編集者: karasu7 編集日時 2005-01-15 19:04 ]
くおん
大ベテラン
会議室デビュー日: 2004/07/26
投稿数: 154
投稿日時: 2005-01-17 09:36
おはようございます。

ARPのキャッシュエントリ保持の為のRequestと考えられます。
通常はエントリタイムアウト時に出るものですが特に規定は無いようです。
そのためこの動作はシステム(OS)の仕様と思われます。
この当たりの仕様はRFCにはありませんが、RFC826の最後の
項目にこのあたりのキャッシュタイムアウト時の動作に関して少し
記述があります。
ニック
ベテラン
会議室デビュー日: 2004/10/20
投稿数: 60
投稿日時: 2005-01-17 17:53
こんにちは。

引用:

環境:ホストA(10.10.10.1)とホストB(10.10.10.2)がL2SWを介して接続

ホストA----L2SW------L2SW----ホストB

ホストAをrebootとすると、起動時にARP Requestをブロードキャストし、そのRequest
に対してホストBがARP Replyをユニキャストで返送。ここまでは動作的に普通だと思う
のですが



boot時にホストBに対してARP要求が出ているということは、
ホストBはホストAのデフォルトゲートウェイか何かですか?
それとも起動時にホストA→ホストBに通信を行うような設定
がされているのですか?
またOSは何ですか?
karasu7
会議室デビュー日: 2005/01/27
投稿数: 1
投稿日時: 2005-01-27 14:20
返信が遅くなり申し訳ないです・・・。
くおんさんの言われているとおり、RFC826の最後の部分に確かに
記述がありました。すみません、最後の方まできちんと見てなか
ったです・・・。
どうも、システムの仕様となるようですね。情報ありがとうござ
いました。

引用:

くおんさんの書き込み (2005-01-17 09:36) より:
おはようございます。

ARPのキャッシュエントリ保持の為のRequestと考えられます。
通常はエントリタイムアウト時に出るものですが特に規定は無いようです。
そのためこの動作はシステム(OS)の仕様と思われます。
この当たりの仕様はRFCにはありませんが、RFC826の最後の
項目にこのあたりのキャッシュタイムアウト時の動作に関して少し
記述があります。




あと、ニックさんのご質問の件で、

引用:


boot時にホストBに対してARP要求が出ているということは、
ホストBはホストAのデフォルトゲートウェイか何かですか?
それとも起動時にホストA→ホストBに通信を行うような設定
がされているのですか?
またOSは何ですか?




OSはLinuxです。ホストAのルーティングテーブルにホストBのアドレス
が登録されていて、起動時にルーティングテーブルに登録されている
アドレスに対して、ARPをブロードキャストします。

とりあえず、納得はいったので助かりました。ありがとうございます。
1

スキルアップ/キャリアアップ(JOB@IT)