• ベストアンサー

同一LAN内でホスト同士が同じIPを設定するとなぜ通信が不安定に?

同一LAN内でホスト同士が同じIPを設定するとなぜ通信が不安定になるのでしょう? 通信をする時、ホストはゲートウェイのMACを調べるために、ARPを使って調べると思います。その後、通信をする時、自分のIPアドレスとMACアドレスをパケットのヘッダに書き込むと思うのですが、その時にルータがこのパケットに対する帰り(送信元)MACを学ぶと思うので、通信できるように思ってしまうのですが・・・。 http://www.atmarkit.co.jp/fnetwork/rensai/troutol03/01.html#

質問者が選んだベストアンサー

  • ベストアンサー
  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.4

> ルータの動作としては、パケットが戻ってきたら、 「戻ってきたら」ということは、最初にルータからパケットを送っているんですよね? 最初に送るときにARPテーブルにエントリがなければその時点でARPを発行してMACアドレスを調べ、テーブルに載せる > 戻ってきたパケットの宛先IPのMACを調べるためにARPをすることがある、ということでしょうか 通常は送信時点でARPテーブルに載っているのでそのようなことはないはずですが、パケットを一旦送ってから戻ってきて再度送るまでにかなりの時間が経ってlifetimeを迎え、ARPテーブルからエントリが消失してしまったことを想定しているのでしょうか? その場合、相手のARPテーブルからもエントリが消えている可能性が大なので、戻ってくる時点で再度ARPが相手から投げられ、そのreply時にエントリが載ると思いますが http://www.atmarkit.co.jp/fwin2k/network/baswinlan011/baswinlan011_03.html そもそもARPテーブルにどういうタイミングでエントリが載り、消失するかを基礎から学んだほうがいいでしょう ちなみにWindowsならlifetimeは10分ですが、Ciscoルータは4時間(14400秒)です http://atnetwork.info/ccna2/arp08.html

その他の回答 (3)

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.3

質問文にて提示されたリンク先のケーススタディを読んでいくと,最後あたりに次のような文章が登場します。 >この人(先輩)も警告が出るのは気になっていたそうですが、 >だいたい使っているのは福嗣君が帰った後の夜中だったために、 >あまり気にしていなかったようです。 ですから,福嗣君のマシン192.168.0.5と先輩のマシン192.168.0.5とが同時に起動されていないのであれば,通信が不安定になるほどではないと思います。 しかし同時起動されているのなら話はまったく別でしょう。TCP/IP通信というのはただ1つのイーサネットフレームで完結するものではなく,一連の複数のイーサネットフレームによって1つのIPパケットが構成され,一連の複数のIPパケットによってTCPセッションが構成されます。この一連の通信中はIPアドレス値とMACアドレス値が紐付けされており変わらないという前提でいるところへ,同IPアドレス異MACアドレスのフレームが突如割り込んでくるのですから,ARPテーブルの整合性が取れず,通信が不安定になるように思いますが。

  • 774danger
  • ベストアンサー率53% (1010/1877)
回答No.2

> その時にルータがこのパケットに対する帰り(送信元)MACを学ぶと思うので 学びません すでにARPテーブルにそのIPアドレスが載っている場合は、lifetimeがすぎるまでは前のものが保持されます

nabewari
質問者

お礼

ということは、ルータの動作としては、パケットが戻ってきたら、戻ってきたパケットの宛先IPのMACを調べるためにARPをすることがある、ということでしょうか。

  • koi1234
  • ベストアンサー率53% (1866/3459)
回答No.1

MACアドレス中心に考えれなそうでしょうが 実際の通信はTCP/IPアドレスで行うからでは?

nabewari
質問者

お礼

回答ありがとうございます。

関連するQ&A

  • サブネットマスクを間違って設定したときのデフォルトゲートウェイとの通信

    サブネットマスクを間違って設定したときのデフォルトゲートウェイとの通信について教えてください。 ホストAのアドレス   :192.168.1.200 デフォルトゲートウェイ:192.168.1.1 であったとき、ホストAのサブネットマスクを255.255.255.0とすれば通信できると思いますが、 間違って255.255.255.128と設定したときに別のネットワークとホストAが通信できるのか(デフォルトゲートウェイが中継するのか)を知りたいと思っています。 デフォルトゲートウェイ側のサブネットマスクは255.255.255.0だとし、デフォルトゲートウェイ側からはホストAは同じネットワークである場合です。 つまりホストAから違うネットワークへパケットを送る場合、 ホストA → デフォルトゲートウェイ … 送れるか(私には)わからない。そもそもパケットが出るのか。 デフォルトゲートウェイ → ホストA … 同じネットワークなため応答は問題ない(はず)。 arpテーブルにデフォルトゲートウェイのMACアドレスが登録されているかいないかによっても違うのでしょうか。 私もテストしてみたのですが、通信前からデフォルトゲートウェイのMACアドレスがarpテーブルにあり、ルータやOSの方で何か特殊なことをしているかもしれない(そもそもこれが特殊なことなのかどんなOSやルータでもそうなのかもわからない)と思い実験にならなかったため、質問させていただきました。 ちなみに、以上のような私の環境では、サブネットマスクを間違えてもインターネットにつながりました。 よろしくお願いします。

  • ブロードキャストとTCP/IP通信

    TCP/IP通信すなわちパケット通信するためにはMACアドレスが必要で、そのためにはARPを行い、ブロードキャストを送信すると考えています。 そこで、最初の段階であるブロードキャストはTCP/IPモデルでどの層でどのような働きをしているのでしょうか? 最初の段階(ブロードキャスト)ではMACアドレスは分からないはずなので下位層のネットワークインターフェイス層ではイーサネットヘッダやイーサネットトレーラは付かず、中途半端なカプセル化になるのでしょうか? 通信に精通している方は、この質問の意図も分かりにくいと思います。。すみません。 ご教授お願いしますm(__)m

  • ルーティングに関して

    今IPアドレスとMACアドレスを使ったルーティングに関しての勉強をしていたのですが、どうしても分からないことがあったので質問させて下さい。 たとえば、ホストAからホストBへルータaを経由してパケットを送信する場合、ホストAから送るパケットヘッダのMACアドレスは”送信元A、送信先a”になると思います。ここで、もしホストAに接続されているルータがaの他にも多数あるとしたら、何の情報を元にパケットのヘッダのMACアドレスをルータa宛と選定しているのでしょうか(ルータaの先にホストBがあるという情報をどこから得ているのでしょうか)? それと、各ルータのMACアドレスをホストAが調べるのにARPを使っていると理解しているつもりですが、正しいでしょうか?併せてよろしくお願いしますm(__)m

  • ルータがある場合のARPの動き

    ARPの動作についてご教示お願いいたします。 ホストAからホストBへデータを送信する際にホストBのMACアドレスが不明な状態で ケース1:ホストAとホストBが同一のネットワークにある場合。 ケース2:ホストAとホストBが異なるネットワークにありルータで繋がっていた場合 ケース1の場合には、ホストAは、ホストBのIPアドレスを設定してブロードキャストしますが、ケース2の場合には、ホストAは、デフォルトゲートウェイ(ルータ)のIPアドレス当てにのみARPパケットを送るのでしょうか? それともARPパケットをブロードキャストするのでしょうか? ご教示宜しくお願いいたします。

  • ルーター配下のパソコンとネット上のサーバとの通信

    ルーターにはLANポートが複数ありそれぞれのLANポートにパソコンをつないでいます。 そのポートの1つである LANポート1につないでいるパソコンA(192.168.100.2/24)から デフォルトゲートウェイである ルーター(192.168.100.1)を経由して あるサーバー(74.125.235.95)にパケットを送り 戻りパケットがルーターからパソコンAに届くまで  について。 ルーターのIPマスカレードは  内側 192.168.100.2:4415 あて先 74.125.235.95:80 とします。 ○パソコンAからルーターまで 接続先が 192.168.100.0/24 のネットワークと異なる 74.125.235.95であることから パソコンAはデフォルトゲートウェイにパケットを送ろうとし パソコンAのデフォルトゲートウェイのIPアドレスをARPテーブルから割り出し 次にそのIPアドレスに基づいてARPテーブルからデフォルトゲートウェイのMACアドレスを割り出し そのMACアドレスを含んだMACフレームを送信する。 ルーターはMACフレーム内の送信先MACアドレスがルーター自身のMACアドレスであることから 自身で担当すべきMACフレームであると判断し、そのフレームの処理を引き受ける。 ○ルーターからパソコンAまで サーバーから戻りパケットを受け取ったルーターは、IPマスカレードに基づいて ルーターからそのパケットを送信すべき送信先のIPアドレスを 192.168.100.2 と判定する。 次に IPアドレス 192.168.100.2 に基づいてルーターのARPテーブルから MACアドレスを割り出す。 次に、そのMACアドレスに基づいて MACアドレステーブルから 送出先ポートであるLANポート1 を割り出し、LANポート1からパケットを送りだす。 ○パソコンAからルーターまで ○ルーターからパソコンAまで は上記の理解で合っていますでしょうか? 特に気になるのは、○ルーターからパソコンAまで において 送出先ポートを最終的に決めるのは IPアドレスではなく、 MACアドレステーブルが参照され、結果 MACアドレステーブルのMACアドレスによって決まるのかどうか という点です。

  • LAN内での通信について教えてください

    LAN内での通信について教えてください。 家庭用の市販のルーターがあり、ルーターの3つのLANポートには、1つのLANポートにつき1台のパソコンという形で パソコンが3台(パソコンA,パソコンB,パソコンC) 接続されているとします。 (パソコンA,パソコンB,パソコンCはルーターを介して接続されています) ルーターはDHCPサーバーとして働き、パソコンにはプライベートIPアドレスが割り振られているとします。 パソコンA 192.168.0.2 パソコンB 192.168.0.3 パソコンC 192.168.0.4 ルーター 192.168.0.1 また、パソコンAは[パソコンB、パソコンC]の[IPアドレスとMACアドレス]を知っているとします。 ここでパソコンAのアプリケーションからパソコンBへ通信を行おうとした場合、 アプリケーションは[IPパケットにパソコンBのIPアドレスである192.168.0.3、MACフレームにパソコンBのMACアドレスを含んだ]データグラムを パソコンBとパソコンCの両方に届ける。 そして パソコンBは届いたデータグラムのMACフレームにパソコンBのMACアドレスが含まれていることから、自身が担当すべきとしてパソコンAに応答を返す。 ただ、パソコンBはIPパケット内の192.168.0.3の部分については全くチェックしない。 パソコンCは届いたデータグラムのMACフレームにパソコンBのMACアドレスが含まれていることから、自身が担当すべきでないと判断し、パソコンAには応答を返さない。 また、パソコンCはIPパケット内の192.168.0.3の部分については全くチェックしない。 間に存在するルーターは何もしない。 このようになるのでしょうか?

  • 故障した装置のIPアドレスを設定して器機交換

    同ネットワーク内に設置してある装置が故障したので、 新しい装置に故障した装置と同じIPアドレスを設定してから ネットワークに接続すると、サーバにキャッシュされている ARPテーブル(IP/MAC)は更新されますか? 通信する前にサーバのARPテーブルをarp -dで消した方が 適切でしょうか?

  • ルータについて

    ルータ→ホストとデータを送るとき、ルータがARPで相手ホストのMACアドレスを取得した後、ルータはIPアドレスとMACアドレスのどちらをもとに相手ホストにデータを送るのでしょうか?

  • 同一LAN上でのIPアドレスの重複について

    お世話になります。 同一LAN上に同じIPを持った(IPを静的に付与)PCを2台接続した場合、「同じIPを持ったPCがいます」というような警告が出ます。なぜ同じIPを持ったPCが同一LAN上にあるとわかるのでしょうか? LINK UPした際に自分のIPアドレスのARPでも出しているのでしょうか?

  • IPなしで、MACアドレスのみで通信できますか?

    ネットワークを勉強する超初心者なのですが、 スイッチの勉強をしている際、MACアドレスをたよりに通信している 図を見て、「あれ?IPはどこにいった?」と思いこんがらがってきました。。 特にLAN内とかであれば、IPアドレスって必要ないんじゃないんでしょうか? ARP要求をしなくてすむ分軽い通信になりそうな素人考えなのですが、 IPがないと何が困るでしょうか? お恥ずかしい限りですが、教えて頂けると嬉しいです。