「世の中には難しいことが多い!」と感じることが多い私が、様々な用語を、初学者向けにわかりやすく全力で解説します。
解説する用語
ARPについて解説をします。ARPはTCP/IPネットワークにおける重要な仕組みであり、LAN内のデバイス同士の通信をスムーズに行うために不可欠な技術です。
本記事では構成図をもとに出来るだけわかりやすく解説していますので、ネットワークを専門としない方もぜひ読んでみてください。
ARPとは
ARP(Address Resolution Protocol)とは、IPアドレスからMACアドレスを特定するための手法です。
LANの通信では、通信を送りたい相手を識別するためにMACアドレスを使用します。IPアドレスから、通信を送りたい相手のMACアドレスを特定するためにARPという手法が使われます。
次のセクションから、ARPを使った通信の流れを図をもとに具体的に解説していきます。
詳細に説明するよ
以下の図のPC1(送信元)からPC2(送信先)へ通信をする場合を考えてみます。
例えば、以下のpingコマンドを実行した場合の通信の流れを解説していきます。
ping 172.16.1.2
ARPキャッシュの確認
IPアドレス172.16.1.2のMACアドレスがARPキャッシュに登録されているかを確認します。ARPキャッシュ(ARPテーブル)にはIPアドレスとそれに対応するMACアドレスの情報を保持しています。
ARPキャッシュに登録されていればMACアドレスが一発で分かるのでARP要求をする必要がなくなります。今回はIPアドレス172.16.1.2のMACアドレス登録されていませんでした。
ARP要求
ARPキャッシュに登録されていなかったので、同一ネットワーク内の全宛先(PC2とPC3)にARP要求を行います。ARP要求では「IPアドレス172.16.1.2のMACアドレスを教えて~」と通信を投げます。
ARPキャッシュへ登録(送信先)
自分のIPアドレスへのARP要求を受け取った送信先は、送信元のIPアドレスとMACアドレスをARPキャッシュへ登録します。ARPキャッシュへ登録することで、登録されている宛先との通信を早めることが出来ます。
今回はPC2のARPキャッシュへPC1のIPアドレスとMACアドレスを登録しています。
ARP応答メッセージを送信元に返す
ARP要求メッセージを受け取った受信先は、自身のIPアドレスとMACアドレスを含んだメッセージをARP応答として返します。ARP応答は送信元のみに送ります。
今回はPC2がPC1へARP応答メッセージを送ります。ARP応答メッセージには、PC2のIPアドレスとMACアドレスが記載されています。
ARPキャッシュへ登録(送信元)
ARP応答メッセージを受けっとた送信元は、送信先のIPアドレスとMACアドレスをARPキャッシュへ登録します。
今回はPC1のARPキャッシュへPC2のIPアドレスとMACアドレスを登録しています。
ARPではこのような流れで、MACアドレスを特定します。
まとめ
ARP(Address Resolution Protocol)は、コンピュータネットワークでIPアドレスを物理アドレス(MACアドレス)に変換するための決められた手順です。ARPはIPアドレスを持つデバイスがネットワーク内でデータを送るときに、宛先のMACアドレスを見つける役割を果たします。
本サイトでの注意事項
本サイトではなんとなく理解することを目的としているため正確性に欠ける表現があります。より正確な情報を詳しく知りたい場合は公式ドキュメントを参照ください。
コメント