こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

イーサネットヘッダは特別なのでしょうか

ネットワークの勉強をはじめたばかりです。

ある本を讀んでいたら、TCP/IPに関して次のようなことが書かれていました。(多少表現は変えています。)

「アプリケーションで作られたデータは、アプリケーション層からトランスポート層のTCPに渡される。
ここでパケットに小分けされ、エラーチェックなどに使うTCPヘッダを付けられてTCPパケットになる。
TCPパケットはインターネット層のIPに渡され、宛て先のIPアドレスなどを含むIPヘッダを付けてIPパケットになる。
續いてIPパケットはイーサネットに渡ってイーサネットヘッダが付くと自然だが、実はそうではない。
イーサネットのためのヘッダもIPが付ける。
つまりIPでは、IPヘッダとイーサネットヘッダの2つを付けるのである。」

この本によると、イーサネットヘッダはIPが付けることになっているようですが、
他の本(とは言っても、そんなに何冊も讀んでいるわけではありませんが。)でこのような記述は見たことがありません。

「イーサネットヘッダはIPが付ける」というのは本当なのでしょうか。

そうだとすると、なぜこのような、「自然でない」仕組みになっているのでしょうか。

投稿日時 - 2004-03-10 21:57:59

QNo.802399

暇なときに回答ください

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

OSI参照モデルでの話ですが、
イーサネットヘッダが生成されるのは、「レイヤ3:ネットワーク層」ではないです。
「レイヤ2:データリンク層」になります。
TCP/IPモデルですと「ネットワークインタフェース層」になります。

ちなみに読まれた本の内容は、イーサネットヘッダの宛先MACアドレスの取得方法がレイヤ3のARPによって取得しているので、ARPと同じレイヤ3であるIPで付けている、ということになっているのではないでしょうか。

あと、ネットワークについて詳しく?面白く勉強できるサイトがあるので、紹介しますね。

http://www5e.biglobe.ne.jp/~aji/3min/index.html

参考URL:http://www5e.biglobe.ne.jp/~aji/3min/index.html

投稿日時 - 2004-03-11 00:50:40

お礼

ありがとうございます。

投稿日時 - 2004-03-13 08:04:59

ANo.3

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.2

まあ、間違ってはないかもしれません。

参考URLの通り、OSI7層構造モデルと、TCP/IPの実装は、TCP/IPの方が先にあった(実現されてしまった)ため、OSI7階層には合わないところが出てきています。

参考URLから次の項目に行ったページでは、データリンク層(PPP, LANボードの各種デバイスドライバ)がEthernet Header を付ける事になっていますが、MS-TCP/IP なんかは、IPヘッダ生成時に、Ethernet Headerまで作っちゃう(Etherのドライバが付けてくれないので)場合がある,ということです。

基本的には、Data Link Layerで、Ethernet Headerが付く,と覚えていて問題はないです。

参考URL:http://www.net-newbie.com/tcpip/stack/osi7layer.html

投稿日時 - 2004-03-11 00:42:31

お礼

ありがとうございます。

投稿日時 - 2004-03-13 08:04:32

ANo.1

ルータなどで管理するときに必要となってくるわけです。
そしてインターネットなどほかのLANなどから帰ってきたデータがどのPCむけのデータなのかもこれをつけないとわからないのでは?

参考URL:IPヘッダとイーサネットヘッダ

投稿日時 - 2004-03-10 23:01:56

お礼

ありがとうございます。

投稿日時 - 2004-03-13 08:04:09

あなたにオススメの質問