プロトコル

ICMPとはなにか。~pingやtracerouteのためのプロトコル~

投稿日:2013年12月21日 更新日:

 

今回は、IPをサポートしてくれる必要不可欠なやつ「ICMP」についてです。

 

ICMPというと、いわゆる「Ping」を想像すると思います。「Ping」というのは、IP通信ができているのかを確認するコマンドです。

icmp

ネットワーク機器やWindowsのコマンドプロンプトから、「ping 192.168.10.1」のように記入します。これは、「192.168.10.1」宛に通信ができているかということの確認をしています。

これは通信ができていませんが、

Pingが通れば、Layer3(ネットワーク層)まではネットワークに問題がないと判断できます。

 

icmp

「traceroute」もICMPを用いていて、これは宛先までの経路を調べるためのコマンドです。これにはTTL値というモノを使用します。

 

①    PCのコマンドプロンプトから「tracert 10.1.1.100」を実行

②    PCはTTL=1でIPパケットを送信。

③    ルータAがTTL値を-1して、0になるとパケットを破棄します。よって、時間超過でエラー通知されます。

④    PCは次、TTL=2でIPパケット送信。

⑤    ルータAでTTL-1、ルータBでTTL-1し、TTL 値は0になるのでパケットを破棄し、時間超過でエラー通知を行います。

⑥    PCは次、TTL=3でIPパケット送信。

⑦    目的のサーバに応答メッセージが届きますので、サーバは送信元にエコー応答します。

 

このようにtracerouteでは経路を調べていきます。

 

 

では次に、ICMPの仕組みを紐解いていきましょうか。

 

先ほど、「ICMPはIPをサポートしてくれる必要不可欠なやつ」と書きました。

つまり、データを送る際は、IPだけに任せているのではなくて、ICMPというプロトコルも使っているんですよね。

 

じゃあ、ICMPには何の役割があるのかというと、「エラー通知」と「問い合わせ」です。IPそのものには、通信の最中に何か障害が起こったりして通信が途絶えても、それを送信元の機器に伝えることはできないのです。そのため、必ずICMPを実装してIP通信が行われます。

 

じゃあ、「エラー通知」と「問い合わせ」の役割とはなんなのか・・。

 

「エラー通知」は、通信中に障害が発生したり、パケットが何らかの理由で破棄されてしまった時に、エラー通知を出して、送信元機器に知らせます。

エラー通知例として、「Destination Unreachable : 宛先到達不能」があります。

 

「問い合わせ」は、pingとtracerouteですね。特定の機器までのネットワークに問題がないか調べるために、問い合わせを行い、応答を得ます。問題があって、その機器まで到達できない場合は、エラー通知が送られてくることになります。

 







-プロトコル
-, ,

執筆者:


comment

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

関連記事

PPPoEとは?ciscoルータによる拠点間VPNの設定方法

  今回は、ciscoルータのPPPoEのコンフィグについて ですが、まずはPPPoEってそもそもなにというところから。 PPPoEというのは、PPP over Ethernetの略で、 深 …

DHCPとはなにか。~自動でIPアドレスを割り当てるプロトコル~

  では、今回は、自動でIPアドレスを割り当てる便利なヤツ「DHCP」についてです。 DHCPはDynamic Host Configuration Protocolの略です。正式名称だけで …

IP(IPv4)とはなにか。~インターネットでデータのやり取りをする?~

  今回は、ネットワークの基本「IP(Internet Protocol)」についてです。   Internet Protocolだから、インターネットでデータのやりとりをするプロ …

DNSとはなにか。~名前解決のプロトコル~

  では、今回は、URLをわかりやすく表示させてくれる「DNS」についてです。 人は、それを「名前解決」と呼びます。

UDPとはなにか。~とにかく早くデータを送り届けるプロトコル~

今回は、 とにかく早くデータを送り届けるプロトコル「UDP」についてです。   「UDP」は「User Datagram Protocol」の略で、「TCP」と同様トランスポート層(Laye …

Sponsored Link