演習Index

Windows Serverへのpingのトラブルシューティング

トラブルシューティング

先の手順ではpingは失敗してしまいます。一体何が問題なのでしょうか?Wiresharkでパケットを覗いてみましょう。

  1. server1でWiresharkを起動し、network1のキャプチャを開始します。
  2. pingを実行します。要求がタイムアウトします。

    f:id:wave1008:20170207001232p:plain

  3. Wiresharkでキャプチャ結果を確認します。

    f:id:wave1008:20170207001357p:plain

1行目

ARP(Adress Resolution Protocol)のrequestメッセージがnetowork1にブロードキャストされています。Info欄に要約が示されているように、10.0.1.1(server1)が10.0.1.2(server2)のMACアドレスを問い合わせています。

2行目

10.0.1.2のIPアドレスに対応するMACアドレスは08:00:27:27:56:ffですよというARPのreplyメッセージが返ってきています。これで、10.0.1.2のIPアドレスの宛先にパケットを送信するためのMACアドレスが解決できました。

3行目

10.0.1.2のIPアドレスに対応するMACアドレスを宛先に設定し、network1にパケットを送信しています。しかし、応答は返ってきませんでした。([No response seen])

 

これらのことから以下のことがわかります。

 

こうなると、どこかでパケットがフィルターされているのではないかという疑いが出てきます。実は、Windows Serverはデフォルトでpingが使用するICMPv4のメッセージをWindowsファイアーウォールが許可していません(フィルターしています)。これは最初はみんなハマります。WindowsファイアーウォールでICMPv4を許可しましょう。

 

WindowsファイアーウォールでICMPv4を許可する

  1. Windowsファイアーウォールを開きます。
  2. [受信の規則]で[新しい規則]をクリックします。

    f:id:wave1008:20170207004531p:plain

  3. カスタムを選択します。

    f:id:wave1008:20170207004742p:plain

     

  4. すべてのプログラムを選択します。

    f:id:wave1008:20170207004803p:plain

  5. ICMPv4を選択します。

    f:id:wave1008:20170207004846p:plain

  6. 任意のアドレスを選択します。

    f:id:wave1008:20170207005014p:plain

  7.  接続を許可するを指定します。

    f:id:wave1008:20170207005033p:plain

  8.  すべてチェックします。

    f:id:wave1008:20170207005102p:plain

  9.  任意の識別しやすい名前をつけます。

    f:id:wave1008:20170207005145p:plain

  10.  上記の手順でserver1とserver2とも設定します。

  11. 10.0.1.1(server1)から10.0.1.2(server2)にIPアドレス指定でpingが通ることを確認します。今度は成功します。パケットをキャプチャするとICMPのreplyメッセージが返っていることがわかります。

    f:id:wave1008:20170207010100p:plainf:id:wave1008:20170207010209p:plain

  12. 10.0.1.2(server2)から10.0.1.1(server1)にIPアドレス指定でpingが通ることを確認します。今度は成功します。

    f:id:wave1008:20170207005554p:plain

 

以上でserver1とserver2の間でpingによる疎通確認ができるようになりました。