PingによるOSの種類判別
Pocket

先日、IT Proさんで以下のような記事が公開されていた。
遠藤一義のコマンド格言 – OSを調べるにはpingを使え:ITpro

http://itpro.nikkeibp.co.jp/article/COLUMN/20140206/535126/

内容としては、OSを確認したいホストにPingを打ち、その応答から対象ホストのOSが何なのかをある程度推測出来るというもの。

そんな事ができるのか…
実際に、自宅にあるサーバに対してPingを打って見ることにした。

今現在で使用できるOSは以下。

  1. Mac OS X Mountain Lion
  2. CentOS 6.5
  3. Ubuntu 14.10
  4. Debian Linux 7.2
  5. Solaris 11
  6. HP-UX 11i v3
  7. VMware ESXi 5.5
  8. Windows XP
  9. Windows 7

これらのOSに対して、実際にPingを打ってみる。
PingはWindows 7から対象の機器に設定しているIPアドレスに対して打つ。実際に稼働している機器なので、IPアドレスはモザイクを入れておくことにした。

Sponsored Links

 1.Mac OS X Mountain Lion

まずはMac OSから。

20140501-000000

TTLの値は「64」。

 

2.CentOS 6.5

次はCentOS。Redhat Enterprise Linuxのクローンなので、こちらも同様の値であろう。

20140501-000001

TTLの値は「64」。

 

3.Ubuntu 14.10

Ubuntu 14.10での値。
20140502-000000

TTLの値は「64」。まぁ、同じLinuxだしね。

4.Debian Linux 7.2

次はDebian。Ubuntuの元になっているディストリビューションだし、Linuxなので上の2つと変わらないと思われるが…
20140502-000001

TTLの値は「64」。

5.Solaris 11

次はSolaris 11。業務では使った事は無いが、商用UNIXでは一番元気なOSだと思うので、個人的にインストールして放置していたやつだ。
さて、こいつのTTLは…
20140502-000002

TTLの値は「255」。確かにLinuxやMacとは違う値が表示されている。

6.HP-UX 11i v3

次はHP-UX 11i v3。最近仕事で使っているOSなので、ちょうど環境があって良かった…。
20140502_000005
こちらの値も同じく「255」。

7.VMware ESXi 5.5

次はVMware ESXi 5.5に対してPingを打ってみる。
20140502-000003

TTLの値は「64」。ESXiの前に使われていたESXがLinuxベースだからかな?

8.Windows XP

もはやサポートも切れたWindows XP。10年近くお世話になったOSだが、さてさて…
20140502-000004

TTLの値は「128」。

9.Windows 7

最後はWindows 7。
20140502-000005

こちらも同様に「128」。

上記9個のOSに対してPingを打ってみた。確かに、TTLの値からOSの種類をある程度読み取る事ができた。
セキュリティの事を考えたら、一応TTLの値を変更した方がいいのかな?

その他のOSについては、こちらのページに一覧でまとめてある。

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

This article has 2 comments

  1. Pingback: Linuxのpingコマンドで覚えておきたい使い方16個(+2個) | 俺的備忘録 〜なんかいろいろ〜

  2. Pingback: Ping応答時のデフォルトTTLを変更する | 俺的備忘録 〜なんかいろいろ〜

Leave a Comment

メールアドレスが公開されることはありません。