MACアドレスとは |
---|
Linuxの覚書でも設定として少しだけ書いてましたが、MACアドレスとは何かまでは説明していませんでした。
特に設定をしなくて良いという事と、ユーザーは特に意識しなくて良かったので、深く説明はしていませんでした。
しかし TCP/IP では、データ通信をするには非常に重要な役割を持っています。 ここではMACアドレスについて記述して行こうと思います。 |
||||||||||||||
|
||||||||||||||
1.MACアドレスとは何か? | ||||||||||||||
イーサネットやFDDI、無線LANやBuletoothなど、これらのネットワークの媒体にはMACアドレスというものがあります。
これはハードのROMに焼き込まれており、このアドレスは変更できず世界で1つしかない(絶対重複しないようになっています)アドレスとなっています。 Windows の場合は、DOSプロンプトから ipconfig -all とコマンドを実行して 「Physical Address」 の箇所で出力されているのがMACアドレスになります。 Linux の場合は、ifconfig(オプション指定無しで構いません)を実行して、「HWaddr」の箇所で出力されているのがMACアドレスです。 DOSプロンプトで出力した例) : : Physical Address. . . . . . . . . : 00-0A-79-33-28-5D : : 上記の例の様に、MACアドレスは数値英字交じりが 2桁 × 6 で表示されます。 これは1桁を16進数(0〜Fで表す数値表現)で表したものです。 |
||||||||||||||
2.MACアドレスは何をするのか | ||||||||||||||
実際にMACアドレスとは、ネットワーク上または、TCP/IPの中でどのような働きをしているのか?
「TCP/IPについて」の物理層の箇所で、簡単に説明しましたが、受信したデータが自分宛かどうかをチェックします。 物理層で他のパソコンからデータを受け取った場合は、イーサーネットなどは下の図の様なフォーマットでデータを受け取ります。
見て分かる通り、ネットワークで流れてくるデータの中に「宛先MACアドレス」というのがあります。 データを受け取ったネットワークの媒体は、自分のMACアドレスとこの宛先MACアドレスを比較し、自分宛と判断した場合は次の処理へ移りますが、そうでない場合はそのデータを破棄などの処理を行います。 (自分宛で無い場合の処理は、ハードの種類によって変わるようです。 「ネットワークの接続形態について」で説明しましたが、バス型みたいに接続しているパソコン全てにデータが送信される場合があるので、データを破棄しても構いませんが、リング型は次のパソコンにそのデータを送信するといった処理になります。) 送信元MACアドレスは、コネクション型の通信方式など、送信元に応答やデータを戻さないといけない場合に必要な情報です。 ではよく聞くIPアドレスは、何をやっているのか?それはまた別のページで説明をしようと思いますが、 ルーターやブリッジ等が間に入っておらず、直接パソコン同士が繋がっている場合(スイッチングハブなどを通して)の通信では必要な情報と言うことです。 |
||||||||||||||
3.MACアドレスのアドレスの意味は | ||||||||||||||
MACアドレスとは、16進数の値が 2 × 6 の計12桁で表現されます。 これを更に細かく考えると、16進数なので1桁4ビット、計48ビットつまり、2進数の情報が48桁の情報という事になります。 00-0A-79-33-28-5D 例として先ほどのMACアドレスを全て2進数にしてしまうと・・・ 0000 0000 0000 1010 0111 1001 0011 0011 0010 1000 0101 1101 という感じなります。 これを元に、各桁が何を意味するかは下のフォーマットの様になっています。
ベンダとは、主に製品のメーカーの事を指します。つまりメーカー毎でMACアドレスが指定されているのです。 何故そのような別け方をしているのかと言うと、トラブルの原因の特定をするためにあるそうです。 (異常なパケットを送信している機器は、どのメーカーか分かるようにだそうです。) |
||||||||||||||
4.送信元はどうやって相手のMACアドレスを知るのか | ||||||||||||||
データを送信する際、MACアドレスが必要ということは分かります。しかし相手先のMACアドレスが分からない場合があります。 そういう時はどうしているのかと言いますと、ARP(Address Resolution Protocol)というプロトコルがあり、 送信先のMACアドレスを知ることができます。このARPを使って相手先のMACアドレスを知った後、宛先MACアドレスに情報を載せてデータを送信します。 このARPはインターネット層に当たるので、詳細はそちらで記述する事にします。 |
先頭に戻る 物理(データリンク)層 TOPに戻る TOPページに戻る |