ping にポート番号はありません

1. ping は ICMPを利用したプログラム

まず ping とはICMPを利用したプログラムの名称です。一方、ポート番号というのは TCP と UDP の2つのプロトコルにある概念です。

下の表を見るとわかりますが ICMP はTCP/IP階層モデルのインターネット層(OSI参照モデルの場合はネットワーク層)に属するプロトコルです。TCP と UDP はその上位であるトランスポート層のプロトコルとなります。

※参考:マスタリングTCP/IP 入門編 2.4.1:TCP/IPとOSI参照モデル

2. ping を打つとは

それでは「ping を打つ」とはどういうことかを考えて見ましょう。ping とは 2つのノードのインターネット層 (OSI参照モデルの場合はネットワーク層) 同士の通信を確認しています。上の図を見るとわかりますが、ping が通るということはOSレベルでの疎通ができていることを意味します。しかしながらTCP/IP レベルの疎通については確認できていません。

3. TCP/IP レベルの疎通確認をするには?

TCP/IPレベルでの疎通を確認するにはトランスポート層レベルの疎通を確認する必要があります。Windows の場合は トランスポート層の疎通を確認するコマンドとして Test-NetConnection が用意されており、このコマンドを使って、TCP/IP レベル の疎通を確認することができます。
※参考:Windowsからポートを指定してpingを打つ

OSI参照モデルやネットワークの基礎について勉強したい人には下記の本をお勧めしておきます。

コメント

大変申し訳ございません。当サイトは広告収入で運営しております。

当サイトを閲覧を継続するには広告ブロッカーをオフにするか、当サイトをホワイトリストに追加したうえで、再読み込みをしてください。