- ベストアンサー
イーサネットにIPアドレスは必要でしょうか?
ただ今、LANについて勉強しているものです。どなたか教えて頂けないでしょうか。 OSI参照モデル2層データリンク層でのイーサネットと3層ネットワーク層でのIPについて勉強しているのですが、 ・コンピュータAからコンピュータBの2台しかないネットワーク上で、AからBまでデータを送信する の場合に、双方のパソコンにIPアドレスを設定していない場合、データのやり取りは可能でしょうか? お互いのMACアドレスのみ分かっていればデータのやり取りはできるように感じるのですが、OSI参照モデルで言うと上層からヘッダが付けられたデータが送られてくる、と記載されています。 やり取りが可能な場合はIPヘッダやTCPヘッダなどはどのような扱いになるのでしょうか? どなたかご回答、どうぞよろしくお願い致します。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
> 具体的にMACアドレスのみで通信を行う場合は、例えばNetBEUIを使用するとペイロード部分を組み立ててくれてデータのやり取りが可能になる、ということでしょうか? http://ja.wikipedia.org/wiki/NetBEUI 正確に言うと、NetBEUIは第3,4層なので、TCP/IPで言えばIPとTCPに相当する部分です その上で、NetBIOSなどを使ってファイル共有を実現しているわけで、これらがペイロード部分を構築してデータリンク層に渡し、データのやり取りが可能になるわけです No.5のかたが、 > 今時のコンピュータ同士での通信はTCP/IP以外は(可能ですが)現実的ではない と書かれていますが、今のネットワークはTCP/IPを前提にしている場合が多いので、TCP/IP以外のプロトコルではルータを超えることが困難になっています (L2レベルでフレームを包んでトンネルを掘ったりすれば可能ですが) ですので、IPX/SPXにしても、NetBIOSにしても、IPの上でも動くように改良されていたりします 広域イーサネット等でネットワークを構築していれば別でしょうが、ルータやL3スイッチが入ったネットワークでTCP/IP以外を使おうとすると大変なので、現実的ではないです
その他の回答 (5)
- k_izumo
- ベストアンサー率50% (68/134)
> L2のみの通信を行う場合は、MACアドレスさえ分かれば通信が可能、L4プロトコルの通信を行う場合はIPアドレスが必要、という解釈で宜しいでしょうか? その通りです。 L4 TCP通信を行う為にはL3 IPアドレス通信が可能でなければ通信は無理です。 L3 IPアドレス通信を行う為にはL2 データリンク層(MACアドレス)通信が可能でなければ通信は無理です。 L2 データリンク通信を行う為にはL1 物理接続が可能でなければ通信は無理です。 L2通信の代用としてはARPやMACアドレスに対してのブロードキャスト(Unix系OS) またはルータ同士ではSTPやvlan、VTP、CDP(Ciscoルータ限定)などなど 基本コンピュータ同士でのL2通信はあまり多くありません。 他の回答者の様にTCP/IPとは別の通信(NetBEUIやSNAなど)を行うのも手段としてあるかも知れないですし、自己通信開発するのも手ですが 今時のコンピュータ同士での通信はTCP/IP以外は(可能ですが)現実的ではない為、割合しました。
お礼
ご回答ありがとうございます。 非常に分かり易い解説で、イメージも大分つかめてきました。 これからも勉強していきたいと思います!
- 774danger
- ベストアンサー率53% (1010/1877)
> 勉強不足で申し訳ありませんが、L3より上層のプロトコルが何かしら定義されてなければデータのやり取りはできない、ということなのでしょうか? OSI階層モデルの各層の役割がちゃんと理解できていれば、無理なのは理解できると思いますが....... データリンク層から見たペイロード部分はどこがどうやって組み立てるのですか?
お礼
ご回答ありがとうございます。 > OSI階層モデルの各層の役割がちゃんと理解できていれば、無理なのは理解できると思いますが....... 勉強不足で申し訳ありません‥頭が混乱してしまっています。 具体的にMACアドレスのみで通信を行う場合は、例えばNetBEUIを使用するとペイロード部分を組み立ててくれてデータのやり取りが可能になる、ということでしょうか?
- k_izumo
- ベストアンサー率50% (68/134)
L2のみのデータ通信であればIPアドレスの必要性はないです。 文中に出てくるTCPヘッダとはL4ですので TCPでの通信を前提としてるならば100% IPアドレスは必須です。 なぜならL2のみの通信でTCP通信することは不可能だからです。
お礼
ご回答ありがとうございます。 L2のみの通信を行う場合は、MACアドレスさえ分かれば通信が可能、L4プロトコルの通信を行う場合はIPアドレスが必要、という解釈で宜しいでしょうか?
- 774danger
- ベストアンサー率53% (1010/1877)
TCP/IPではなく、例えばIPX/SPXなり、NetBEUIなり、L3より上の層で別のプロトコルを使えばIPアドレスがなくてもデータのやりとりは可能です ただし、IPX/SPXではIPXアドレスを使いますし、NetBEUIではMACアドレスとコンピュータ名を直接対応付けします もちろん、第3層以上のプロトコルを自分で定義して作りこみを行えば通信は可能でしょう > やり取りが可能な場合はIPヘッダやTCPヘッダなどはどのような扱いになるのでしょうか? IPアドレスに相当するものが必要であれば、IPヘッダに相当するものを自分で定義すべきですし、TCP/UDPヘッダも同様です
お礼
ご回答ありがとうございます。 勉強不足で申し訳ありませんが、L3より上層のプロトコルが何かしら定義されてなければデータのやり取りはできない、ということなのでしょうか?
- Tacosan
- ベストアンサー率23% (3656/15482)
イーサネットに関して言えば, MACアドレスが分かれば通信可能です. 当然, IPアドレスがなくてもデータのやり取りは可能です. OSI参照モデルでもイーサネットのモデルでも同じですが, 上位層からきたデータは「(上位層における) ヘッダ」も含めて全体を「送信すべきデータ」とします. それに対し自分の層で送るために必要なヘッダやトレイラをつけて, 必要であればさらに下の層に転送します. だから, TCP/IP でデータを送る場合, 実際に送られるデータは [イーサネットで送るために必要なヘッダ][IP で送るために必要なヘッダ][TCP で送るために必要なヘッダ][TCP で実際に送りたいデータ] のように, 各階層におけるヘッダ (やトレイラ) がいくつも積み重なることになります.
お礼
ご回答ありがとうございます。 MACアドレスだけで通信可能ということですね(^^) この場合、データリンク層のフレームとしてはIPアドレスなどの情報は必要ないのでIPヘッダの部分はただ存在するだけという解釈でよいのでしょうか? また、物理層でビットデータとして転送される時に、このIPヘッダなどのイーサネットに必要の無いデータは適当に割り振られるのでしょうか?それともオール0かオール1に固定されるのでしょうか? 度々すみません。
お礼
ご回答ありがとうございます。 丁寧な解説で、大分頭の中が整理されてきました。 ですがまだまだ、なんとなく理解した、程度ですのでさらに勉強して理解を深めたいと思います。 お付き合い頂き、ありがとうございました。