第 10 回 ARP, 無線 LAN

本日の内容


このドキュメントは http://edu.net.c.dendai.ac.jp/ 上で公開されています。

10-1. ARP

Ethernet では相互の通信は Ethernet のプロトコルで行います。 そのためにはMAC アドレス(Ethernet アドレス)を使用します。 一方、インターネットでは IP アドレスを使用して通信を行うことになってま す。 インターネットとして Ethernet を使うにはどうすれば良いのでしょうか? そのためには IP アドレス同士の通信を MAC アドレス同士の通信に変換 する必要があります。

ARP(Address Resolution Protocol RFC826) は特定の IP アドレ スから、その IP アドレスを持つホストの MAC アドレスを取得するプロ トコルです。 これを用いると同一ネットワーク上の IP 通信を Ethernet で行うことができ ます。

ARP の手順

IP アドレス A のホストから IP アドレス B のホストへ通信を行うことを考 えます。 A の MAC アドレスは X、 B の MAC アドレスは Y とします。

  1. 始めに A は Ethernet のブロードキャストアドレスに対して「IP アドレ ス B を持つホストは連絡して」というメッセージを送ります。 これには送信元の MAC アドレス X が付加されてます。
  2. すると同一ネットワーク上の全てのホストがそのメッセージを聞き、 IP アドレス B を持つホストだけが「Y が B のアドレスです」というメッセージ を X 宛のユニキャストで送ります。

送られて来たIPアドレスと MAC アドレスの対応の情報は ARP テーブル というテーブルに蓄えられてます。これを操作するのが arp です。 ARP テーブルを表示するには次のようにします。

arp -a

ARP テーブル蓄えられたアドレスは数分で消えます。 しかし、一旦あるホスト X に付けた IP アドレス A を別のホスト Y で使お うとする時、X と通信を行っていたホスト Z には数分の間、ARP テーブルに X と A の組が残ることになり、その間ホスト Y とは通信できません。 これに対処するにはホストの登録を ARP テーブルから消す必要があります。 特定のホストを ARP テーブルから消去するのは次のコマンドです。

arp -d ホスト名

10-2. ARP の逆

IP アドレスから MAC アドレスを求めるのが ARP でした。 ではこの逆を考えてみましょう。 これを Reverse ARP と言います。 MAC アドレスから IP アドレスを求める状況はどのような状況でしょうか? もし、このようなことが可能であれば、 IP アドレスを持っていないホストが IP アドレスを受けることに使えます。 そして実際そのように使われてました。 RARP はその後、 BOOTP というプロトコルに発展し、そして DHCP(Dynamic Host Configuration Protocol) というプロ トコルになりました。 RARP と違い、 DHCP はホストとサーバが同一ネットワーク上にある必要はな いなど自由度が高いため、現在 IP アドレスの自動設定には DHCP が多く使わ れています。

10-3. 無線 LAN

IEEE 802.11 委員会では物理層として赤外線、電波を使用する LAN の規格の 標準化が行われています。 そこで提案されたのが IEEE 802.11a, b, g です。

802.11a802.11b802.11g
使用周波数 5GHz 2.4GHz(電子レンジなどと同じ)
通信速度 54Mbps 11Mbps 54Mbps
伝送方式 OFDM HR/DSSS OFDM

業界団体 WECA(ワイヤレス・イーサネット・コンパティビリティ・アライアン ス) は IEEE802.11 で相互に互換性を保証するブランドとして WIFI(Wireless Fidelity) という名前を使ってます。

無線LANの特性

Ethernet の CSMA/CD 方式では LAN のサイズがあらかじめ決まっているので、 チャネルが空いているかどうかはチャネルを受信すればわかります。 また、宛先にパケットが到達したことは送信後一定時間混信がなければ判定で きます。 しかし無線 LAN では隠れ局問題露出局問題という 問題があり、チャネルの空きを判定するのが困難です。

隠れ局問題

隠れ局問題 C から B へデータを送信していても、 C の電波は A に届かないため、 A は B に送信可能だと考える。 しかし、A から B には送信できない。

露出局問題

露出局問題 C から D へデータを送信している間、 C の電波は B に届くため、B はチャ ネルは塞がっていると考える。 実際は B から A へデータを送ることができる。

送信方式

無線 LAN には DCF と PCF の二種類の送信方式があります。 DCF(Distributed Coodination Function 分散制御機構)は各ホストが相互に通 信を制御する方式でアドホックネットワークとも言われます。 一方 PCF(Point Coodination Function 集中制御機構)は一点で通信を制御す る方式でです。

競合回避

PCF では中央の局が全てを管理するため競合は起きません。 基地局は各端末局に対して送信データの有無を聞く、ポーリングサービスを行 います。 また、基地局がビーコン・フレームと呼ばれる定期的なパラメータの送信を行 い、新規の局はポーリングサービスに参加できるようになってます。

一方、 DCF では競合回避のアルゴリズムとしてCSMA/CA(Carrier Sence, Multiple Access, Collision Avoidance) が用いられます。 これは二つのアルゴリズムを含みます。 一つは送信前にキャリアを検出しますが、検出した時は 802.3 の巾乗バック オフのように送信時間をずらします。 もう一つは仮想チャネルを考える物で次のような工程でデータを送ります。

  1. 送信者はデータを転送する前に転送許可要求を送る。
  2. 受信者は転送許可を与える。
  3. 送信者は転送許可を受け取ったら、データを転送する。
  4. 受信者はデータを受け取ったら ACK を送る

この際、送受信者以外は転送許可要求または転送許可を受信したらチャネルを 使用するのを止めます。そして、データの終了または ACK を受信したらチャ ネルを使用できます。

PCF と DCF の混在

集中管理と分散管理の併用は困難なように思えますが、ACK をトリガーとして プロトコルを時分割で使用すると併用できるようになります。 ACK の送信後の時間を次のように 4 つに区切ります。

  1. 対向通信用
  2. 基地局用
  3. 新規局用
  4. エラー、その他

セキュリティ

WEP(Wired Equivalent Privacy) は無線 LAN が有線 LAN と同等 のセキュリティレベルを持つように考案されたセキュリティモデルです。 これは基地局と端末で 128 bit の共通鍵を用い、 RC4 と呼ばれる暗号方式を 使ったストリーム暗号です。 但し、 RC4 自体は 2001 年に破られてしまい安全ではありません。 そして、 IEEE は WEP が破られてしまったことに対し 802.11i という規格で 新しい暗号を出すと発表しました。

IEEE 802.11i の策定には時間がかかったため、 2002 年 10 月にその規格の 一部を先取りした WPA(Wi-Fi Protected Access)という規格を出しました。

2004年6月になってようやくIEEE802.11iが策定されたので、これをました。こ れを受け、WECA は IEEE802.11i仕様と同じ機能を備えたWPA2を発表しました。 Microsoft は 2005 年 5 月に Windows XP SP2 用の WPA2 に対応したモジュー ルを発表しました。


坂本直志 <sakamoto@c.dendai.ac.jp>
東京電機大学工学部情報通信工学科