ちょっとディープな生物の世界

ネットワークの基本:IPアドレスとMACアドレス

IPアドレスとは

IPアドレスは端末につけられた住所のようなものです。コンピュータ同士で通信する際には、MACアドレスを宛先として記しますが、そもそもMACアドレスを調べるのにIPアドレスを利用します。

MACアドレスとは?
MACアドレスとは、コンピュータのLANアダプタに割り振られている固有のアドレスのことです。LANアダプタのROMに書き込まれており、変更はできません。

MACアドレスを調べる方法

相手のMACアドレスを調べるにはARP(Address Resolution Protocol)と呼ばれるプロトコルを使用ます。日本語でいうとアドレス解決プロトコルです。

MACアドレスがわからない場合には、相手のIPアドレスを書き込んだリクエストパケット(ARPパケット)をMACフレームのデータ部に格納して送ります。ARPはネットワーク層に位置するプロトコルです。

ARPパケットには、ハードウェアタイプ、プロトコルタイプ、ハードウェアアドレスの長さ、プロトコルアドレスの長さ、オペレーションコード、送信元ハードウェアアドレス、送信元プロトコルアドレス、宛先ハードウェアアドレス、宛先プロトコルアドレスが格納されています。

また、MACヘッダのタイプフィールドには、データ部に格納されているのがARPパケットであることを示すために、2054(10進数)の値が書き込まれます。タイプフィールドは、データ部のデータの種類を値によって示してくれます。

ARPリクエストを送る相手

ARPリクエストを送る時点では、MACアドレスは分かりません。そのため、特別なMACアドレス(ブロードキャストアドレス)を使用します。ブロードキャストアドレスはすべてが1という値で構成されており、すべてのコンピュータを宛先とします。

ARPリクエストを受け取ると

ブロードキャストアドレスによって、全てのコンピュータにデータを送ると、IPアドレスが一致するコンピュータがレスポンス用のパケットを作って送信し、MACアドレスを教えてくれます。

MACアドレスはARPテーブルで記録する

通信をするたびにARPリクエストを送っていたのでは、効率が悪すぎます。そのため、相手からレスポンスがあったMACアドレスとIPアドレスをARPテーブルに記録します。コンピュータのARPテーブルはコマンドプロンプトでarp -aとのコマンドで見ることができます。

また、イーサネットのLANスイッチにも、MACアドレスと記録するアドレステーブルが存在します。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です