• ベストアンサー

ルータを超えた通信

PCでデータを送信します。 LANであればARPブロードキャストで相手のMACアドレスを取得できるとネットで調べました。 インターネットみたいな広い世界では、途中でいくつものルータを中継しますが、どのようにして最後のルータまで辿り着けるのですか? 適当なサイトを見付けられなかったので質問させて頂きます。

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

  • ベストアンサー
  • PXU10652
  • ベストアンサー率38% (777/1993)
回答No.2

「極端な話、運が悪いと地球にあるルータのほぼ全てに聞いて回らないといけないのかということです。」  IPアドレスでそのアドレスがどのルータの先に存在するかは、最初のルータ(デフォルトゲートウェイ)に聞けば、自動的に順送りに聞いていって、分かります。そう言う意味では、あちこちのルータに問い合わせをしなければいけませんが、プロバイダが使用しているような、幹線に近いコアルータでは、ネットワークアドレスなどのルーティング情報を特殊な専用パケットで、定期的に他のコアルータと情報交換しているので、隣のルータに問い合わせをしなくても、どのルータの先に目的とするIPアドレスが存在しているかは、すぐに判断できます。

willbelate
質問者

お礼

>プロバイダが使用しているような、幹線に近いコアルータでは、ネットワークアドレスなどのルーティング情報を特殊な専用パケットで、定期的に他のコアルータと情報交換しているので そういうことだったんですね。ご回答ありがとうございます。

その他の回答 (3)

  • merry-04
  • ベストアンサー率41% (5/12)
回答No.4

あなたが最も遠い思われるサイトにtraceroute(Windowsであれば、tracert)を投げてみてください。多分、最大でも20~30のゲートウェイを通過すれば必ず到達するはずです。 それから当たり前ですが、ARPはルータ越えられないないのです。

willbelate
質問者

お礼

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

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.3

>極端な話、運が悪いと地球にあるルータのほぼ全てに聞いて回らないといけないのかということです。 かなり極端な話…かと。(まずあり得ないという意味で) 個々のルータは自分が管理する範囲のIPアドレスの範囲などのルーティングテーブルを持っています。 手持ちのテーブルにない場合は上位のルータ(デフォルトゲートウェイ)に投げます。 また、ルーティングテーブルの一部は動的に制御したりしていますので、経路の一部が潰れた場合は別の経路を使用するように動作します。 元々、どこかの都市が核攻撃などで壊滅したとしてもそれ以外の部分で通信できるようにする為に作られたものですし。 現状では…壊滅よりは停電による動作停止とかでしょうかねぇ…。 ケーブル断線とかもあるかも知れませんけど。 そういう意味で、かなり最悪な状態にならないかぎり「地球にあるルータのほぼ全てに」なんて事態にはならないでしょう。

willbelate
質問者

お礼

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

  • FEX2053
  • ベストアンサー率37% (7987/21355)
回答No.1

ルーティングの話をすればいいのかな? http://www.atmarkit.co.jp/fwin2k/network/baswinlan009/baswinlan009_01.html ぶっちゃけた言い方をすれば、ルータが求められたアドレスを知っていれば直接通信する、ルータが知らなければ、より上位のルータに通信を投げる、ということの繰り返しをやってます。

willbelate
質問者

お礼

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

willbelate
質問者

補足

早速の回答ありがとうございます。 質問の仕方が悪くてすみません。要は以下の質問です。 極端な話、運が悪いと地球にあるルータのほぼ全てに聞いて回らないといけないのかということです。

関連するQ&A

  • LANとWANのデータ送信の違いを教えて

    LAN内では、IPデータグラムをほかのコンピュータに渡すとき ARPでMACアドレスを調べてフレームヘッダに送信先のMACアドレスを書き込み データを送信します。このデータ送信は、LAN内にあるすべてのコンピュータ に対して行われ、MACアドレスが同じコンピュータだけフレームを受信します。 この仕組みは、LAN内からルーターをとおって外部に出た場合でも 同じでしょうか? つまり、WANでもARPのようなプロトコルを使って 送信相手のMACアドレスを調べて送信しているのでしょうか? となってくると、1つの外部ネット内のすべてのルータにデータを送信することに なり、輻輳のもとになるのではないでしょうか? LAN内のサブネットであれば、 限られた台数なので、ブロードキャストしてもさして問題ありません。しかし、WANと なるとどうでしょうか? 

  • ルータについて

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

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

    ルーターには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アドレスによって決まるのかどうか という点です。

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

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

  • 通信について教えてください

    通信について教えてください。 家庭用の市販のルーターがあり、ルーターの2つのLANポートには、1つのLANポートにつき1台のパソコンという形で パソコンが2台(パソコンA,パソコンB) 接続されているとします。 (パソコンAとパソコンBはルーターを介して接続されています) ルーターはDHCPサーバーとして働き、パソコンにはプライベートIPアドレスが割り振られているとします。 パソコンA 192.168.0.2 パソコンB 192.168.0.3 ルーター 192.168.0.1 LAN内での通信であるパソコンAからパソコンBへ向けて通信するためには まずパソコンAはパソコンBのIPアドレスを事前に知っておく必要があると思います。 そして、パソコンAはARPによってパソコンBのMACアドレスを取得することになりますが =========================== (1) このMACアドレスの取得は、 ○パソコンBからの応答 ○(パソコンBのMACアドレス情報を保有している?)ルーターが応答 のどちらでしょうか? =========================== とにかくパソコンAはパソコンBのMACアドレスを取得したとし、パソコンBと通信を行いますが パソコンAからパソコンBへのの通信では =========================== (2) MACフレームの送信先MACアドレスは、 ○ルーターのMACアドレスになり、ルーターを経由するときにパソコンBのMACアドレスになる ○最初からパソコンBのMACアドレスである、ルーターを経由するときも変わらない のどちらでしょうか? =========================== =========================== (3) MACフレームの送信元MACアドレスは、 ○最初はパソコンAのMACアドレスであるが、ルーターを経由するときにルーターのMACアドレスになる ○最初からパソコンAのMACアドレスである、ルーターを経由するときも変わらない のどちらでしょうか? =========================== (α) LAN内で通信を行う時は、IPパケット内のIPアドレス情報さえあれば十分で、MACアドレスは必要ないように思うのですが 通信の決まりとしてMACアドレス情報を格納するMACフレームが必要となるので 通信を問題なく行うにはIPアドレスだけではなくMACアドレスも必要となってくるのでしょうか? (β) LAN内の通信だけではなく、インターネット上の通信でも常にMACアドレス情報を格納したMACフレームがIPアドレス情報を格納したIPパケットの外側に付いているのでしょうか? 以上、(1)(2)(3)(α)(β)について教えてください。

  • ネットワークのブロードキャストについて

    データ転送をおこなう際には、 宛先と送信元のIPアドレスとMACアドレスが 必要になっていて、宛先IPアドレスを取得したのちに、 ARPによって宛先MACアドレスを知る。 ARPテーブルにIPアドレスに対応するMACアドレスが ない際にはARP要求をブロードキャスト送信する。 つまり宛先MACアドレスを FF:FF:FF:FF:FF:FF(←自信ないです) として送信するのはわかっているのですが、 このようなイーサネットアドレスにした際に、 ARP要求が外部にアクセスできない理由がわからないのですが、 なぜですか??? やはりトラフィックが増大するからでしょうか? その理由がわからないのでなにとぞよろしくおねがいします。

  • ネットワーク上でデータ転送するときのMACアドレス取得

    「3分間ネットワーク基礎講座」という本でネットワークの勉強をしています.本書内の『データ転送をするまでの流れ』で分からないことがあるので質問します. 本書によると, 「データ転送をする場合,宛先IPアドレス,宛先MACアドレス,送信元IPアドレス,送信元MACアドレスの4つが必要」 とあります. そして,次の4つのSTEPを説明しています. (1)自分のIPアドレスは手動またはDHCPから割り振られ,MACアドレスは自動的にわかっている (2)ユーザアプリケーションが宛先のホスト名を決定するとDNSでIPアドレスを取得する (3)IPアドレスが決定後,ARPによりMACアドレスを取得する (4)これで,送信元,宛先のMACアドレス,IPアドレスがそれぞれわかったため,データの転送が可能になる この説明の例では,同じネットワーク内のホスト同士(192.168.1.1と192.168.1.11)のデータ転送を行っています. ここで私の疑問ですが,異なるネットワーク同士(例えば,192.168.1.1と192.168.2.1)でデータ転送を行う場合,上記(3)のARPによるMACアドレス取得の動作はどうなりますか? ARPでは自分のネットワーク上のホストにブロードキャストでMACアドレスを聞いていると思いますが,異なるネットワークにもブロードキャストでMACアドレスを問合せするのですか?

  • ルータ、ハブのヘッダについて

    (1)MACアドレスはデータリンク層で付加されるのですが、ネットワーク層のルータがARPで相手のMACアドレスを知った場合MACアドレスはルータでヘッダとして付加されるのでしょうか? (2)スイッチングハブもARPを使って相手のMACアドレスを知った場合MACアドレスはスイッチングハブでヘッダとして付加されるのでしょうか?

  • ARPについてです

    ARPの際に目的機器のMACアドレスが分かったらようやくLANインターフェイスから渡したかったイーサネットフレームを 排出するんですよね? つまりは送信者が目的受信者に送るまでのARPを介する手順としては  送信者(自分のネットワークから出発する前)→ IPアドレス分かるけどMACアドレスわからない→ARPを目的ネットワークの機器に向けて発射!→ARP帰ってきました。見ます、MACアドレス分かりました→よし、MACアドレスも揃ったし、それでは自身のLANインターフェイスから送りたいデータを入れたイーサネットフレームを流しましょう!って感じなんでしょうか? というのも以前は「送信者が届けたい内容のデータを含んだパケットが受信者の属するネットワークに到達してから初めて「あれ?MACアドレスないからARPしないと」的な解釈をしていたので、どうも辻褄が合わない状態でした。バカな質問で申し訳ないのですが、本来は送信側機器は受信側macアドレスがわからないというのは送信前に分かっているので、その段階でARPをして先にMACアドレスを入手してからレッツゴー、インターネットの旅って感じであってるんですか? 文字通り拙い文章でごめんなさい(;o;)

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

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