Windows環境から機器の稼働確認をするため、コマンドプロンプトよりPingを実行しようとしました。
ping 192.168.011.150
実行すると、以下のように異なるアドレスへPingした形となり「要求がタイムアウトしました。」となってしまいました。

理由は「192.168.011.150」の第3オクテットの「11」の前につけた「0」が原因でした。3桁取りうる部分の数字の頭にゼロをつけて桁を埋めることを「ゼロパディング」といいますが、これが「11」という値を10進数の「11」ではなく、8進数の「11」を示すことになっていたのです。
8進数とは聞きなれないかもですが、普段利用する10進数、コンピュータでよく見る2進数、16進数と同じで、桁上がりする単位が10(10進数)や2(2進数)や16(16進数)でなく、「8」であるという記法です。
- 10進数の場合:0,1,2,3,4,5,6,7,8,9,10,11・・・・
- 2進数の場合:0,1,10,11,100,101,110・・・・
- 8進数の場合:0,1,2,3,4,5,6,7,10,11,12,13,14,15,16,17,20
正しくは以下のように「ping 192.168.11.150」とあるべきでした。

今回、どこかからコピペした値を張り付けていたので気が付かなかったのですが、皆様も注意しましょう!(Windows環境だけではなく、Linuxなどでも同じかもしれませんが未確認です。)
コメントを残す