TOPに戻る
▼Network
盗聴
┣ 盗聴の方法と原理
┣ コンピュータニュ
┃ ースサイトの説明
┣ IPアドレスとMAC
┃ アドレス
┣ Address Resolution
┃ Protocol
┣ 盗聴者を特定する原理
┣ 盗聴者特定ツール
┗ 付録
Copyright(C) 2001-2002.ugpop. All rights reserved.
■ Address Resolution Protocol ■
前回はルータの役割について解説を行いました。
ルータは外部のネットワークに対してデータを送信する時に正
常なルートを決めてあげる役割を持っているのでした。
また、外部のネットワークにデータを送信する時にルータを経
由するのですが、その際、ルータに一旦受け入れられる為にMAC
アドレスが使用される事の解説も行いました。
つまり、MACアドレスは常に「近くにある」2台のコンピュー
タ間でのみ使用されるもので、IPアドレスは間にコンピュータ
が何台あろうとも、常に「送信元と送信先」を表すために使用
されるものである事を説明しました。
さて、外部のネットワークに対してデータを送る際に「データ
送る人」から「ルータ」に対して送信されるデータの中には宛
先MACアドレスが設定されています。
以下にその図を示します。
データ送る人 ルータ データ受け取る人
IP:11.22.33.44 IP:11.22.33.01 IP:55.66.77.88
MAC:00-00-00-00-00-01 MAC:00-00-00-00-00-02 MAC:00-00-00-00-00-03
 ̄  ̄
┌───┐ ┌───┐ ┌───┐
│ │ │ │ │ │私宛ての
└─┬─┘ データ └──┬┘ データ └───┘データです。
↓ 宛先IP:55.66.77.88↑ ↓ 宛先IP:55.66.77.88↑
│ 宛先MAC: │ │ 宛先MAC: │
│ 00-00-00-00-00-02 │ │ 00-00-00-00-00-03 │
│  ̄ │ │  ̄ │
└─→──→──→──┘ └─→──→──→──┘
「データ送る人」は「ルータ」のMACアドレスを何故知ってい
るのでしょうか?
MACアドレスはIPアドレスのようにサーバーや管理者により設
定されるものではありません。
NIC(Network Interface Card)等のハードウェアに初めから固
定的に割りついているものなのです。
ではどのようにして近くにいるコンピュータのMACアドレスを
知る事ができるのでしょうか?
まず、宛先のMACアドレスを特定する為には、「ARP」(Address
Resolution Protocol)というプロトコルを使用します。
ARP(アープと読みます)とはIPアドレスからMACアドレスを求
める為のプロトコルで、アドレス解決プロトコルとも呼ばれて
います。
ARPというプロトコルを使用するとIPアドレスこれこれのコン
ピュータの人はMACアドレスを教えてください、と質問出来る
わけです。
以下にARP(Address Resolution Protocol)によってMACアドレ
スを問い合わせている図を示します。
データ送る人 ルータ
IP:11.22.33.44 IP:11.22.33.01
MAC:00-00-00-00-00-01 MAC:00-00-00-00-00-02
┌───┐ ┌───┐
│ │ ARP │ │
└─┬─┘ IP:11.22.33.01の人は └───┘
↓ MACアドレス教えて ↑
│ 宛先MAC:FF-FF-FF-FF-FF-FF │
└─→──→──→──→──→──→──→──→┘
宛先MACアドレスにFF-FF-FF-FF-FF-FFが指定されています。
これはブロードキャストアドレスといって、全てのコンピュー
タに対してデータを送出する時にこのアドレスが指定されます。
つまりルータ以外にも、このネットワークに属しているコンピ
ュータは全てこの問い合わせを一旦受け付けます。
問い合わせを受けた全てのコンピュータは、その後「宛先IPア
ドレス」をチェックして、宛先IPアドレスに該当するコンピュ
ータだけが応答を返してあげます。
以下に応答を返している図を示します。
データ送る人 ルータ
IP:11.22.33.44 IP:11.22.33.01
MAC:00-00-00-00-00-01 MAC:00-00-00-00-00-02
┌───┐ ┌───┐
│ │ │ │
└───┘ 私のMAC アドレスは └─┬─┘
↑ 00-00-00-00-00-02 ↓
│ です │
└─←──←──←──←──←──←──←──←┘
ARP(Address Resolution Protocol)で行なわれる処理はたった
これだけです。
MACアドレスを知りたい人が全てのコンピュータに対して問い
合わせを行い、その応答を受けてMACアドレスを教えてもらう
のです。
上の例では「ルータ」に対してARPの問い合わせを行なってい
ますが、ルータだけにしか問い合わせしてはいけないという事
はありません。普通のコンピュータに対しても同じように問い
合わせを行なう事が出来ます。
ちょっとここでARPを実際に行なってみましょう。
まず、自分のコンピュータが現在知っているMACアドレスを表
示してみます。
WINDOWSユーザーの方はコマンドプロンプト上で、UNIXユーザ
ーの方はSHELL上で以下のコマンドを入力します。
arp -a
このコマンドの応答が、例えば以下のように表示されます。
Interface: xx.xx.xx.xx on Interface 0x2000003
Internet Address Physical Address Type
xx.xx.xx.xx xx-xx-xx-xx-xx-xx dynamic
xx.xx.xx.xx xx-xx-xx-xx-xx-xx dynamic
環境によりかなり表示のされ方は異なると思いますが、この様
にIPアドレスとMACアドレスの組が表示されるはずです。
(Internet Addressと書かれてある部分がIPアドレスの事で、
Physical Addressと書かれてある部分がMACアドレスの事です。)
ここに表示されたIPアドレスとMACアドレスの組が現在分かっ
ているMACアドレスです。
次に、適当なIPアドレスに対して、そのIPアドレスがネットワ
ーク上に存在しているか確認する為のコマンドを投入します。
ping xx.xx.xx.xx
xx.xx.xx.xxの部分はなるべく自分のコンピュータのIPアドレ
スに+1したり-1したりした値、近くにあるコンピュータのIPア
ドレスを指定した方が良いです。
指定したIPアドレスがネットワーク上に存在する場合、以下の
様に応答が帰るはずです。
Reply from xx.xx.xx.xx: bytes=32 time=1ms TTL=128
ただし、この応答も環境によりかなり変わるはずです。
とにかく、このIPアドレスは存在するという意味のメッセージ
が表示されれば良いです。
応答が返らない場合、他のIPアドレスで応答が返るまで試して
みてください。
PINGの結果、指定したIPアドレスが存在する事が分かったら、
再び先ほどと同じコマンドを投入します。
arp -a
このコマンドの応答は、以下の様になるはずです。
Interface: xx.xx.xx.xx on Interface 0x2000003
Internet Address Physical Address Type
xx.xx.xx.xx xx-xx-xx-xx-xx-xx dynamic
xx.xx.xx.xx xx-xx-xx-xx-xx-xx dynamic
xx.xx.xx.xx xx-xx-xx-xx-xx-xx dynamic
~~~~~~~~~~~
↑
PINGコマンドで指定したIPアドレス
この様に、先ほど投入したarpコマンドより1つ多くIPアドレ
スとMACアドレスの組が表示されます。
これは、PINGコマンドを実行した時に、自動的にARP(Address
Resolution Protocol)の問い合わせが行なわれたからです。
PINGコマンドは指定したIPアドレスのコンピュータがネットワ
ーク上に存在するか確認する為のコマンドなのですが、この様
に、同時にARPを使用してアドレス解決も行なってくれるので
す。
以上でARP(Address Resolution Protocol)の解説は終わりです。
そうそう、この講座は「盗聴」という題名でした。
盗聴している人を特定しなければなりませんでしたね。
実は、盗聴を行なう人を特定するには、このARPを裏技の様に
利用してしまいます。
その裏技とは・・・。
続きは次回に行ないます。
←前へ戻る ▲このページの上へ 続きを読む→