前回は、VPNのパフォーマンス改善を目的としたルータの処理能力について解説しました。今回からは、VPN構築におけるトラブルシューティングについて、細かく説明していきます。まずは、拠点間VPNとリモートアクセスVPNの双方に共通するトラブルシューティングを取り上げます。

ネットワークではいろいろなトラブルが発生することが多いうえ、原因が複合的であるため、解決に手間取ってしまう場合があります。特にVPNを構築する際は設定の構成要素も多いので、VPNが正常に確立できない場合は原因の切り分けを少しずつ行っていくことが重要です。

以下、障害対応の手順を追って紹介しましょう。

VPNを設定しないでpingコマンドが通るか確認する

ルータに対して行う設定作業は意外に多いので、一度にすべての設定を行ってしまいたいところです。しかしそうすると、接続できなかった場合に、どこで問題が発生しているのかを切り分けることが難しくなります。そこで、VPNの設定をする前に、まずは正常に通信できることを確認しましょう。この確認のために使用する頻度が多いコマンドはpingです。

(1)ルータからping.netvolante.jpへpingしてみる

このコマンドは、ルータがインターネットに接続できていて、さらに名前解決に使用するDNSを正常に使えているかを確認するものです。ヤマハルータでは、管理タブにある「コマンドの実行」画面からコマンドを実行することができます。

もし、応答がない場合は、インターネットの接続設定、または、DNSサーバーの設定を見直します。

(2)接続先ルータが登録しているネットボランチDNSホスト名へ、接続元ルータからpingしてみる

これは、ルータが正常にネットボランチDNSへ登録できているか確認するコマンドです。拠点間VPN接続の場合は、相手先まで到達できているかを確認するために、接続元ルータからコマンドを実行してみます。もし、応答がない場合は、ルータのネットボランチDNSへの登録を見直します。

(3)接続先ルータが登録しているネットボランチDNSホスト名へ、クライアントPCからpingしてみる

一方、リモートアクセスVPN接続の場合は、インターネットに接続しているクライアントPCから、接続先ルータに向けて、pingコマンドを実行します。もし、応答がない場合は、ルータのネットボランチDNSへの登録を見直します。

また、パソコンのファイアウォールも見直します。パソコンのファイアウォールでは、悪意のある第三者に端末の存在やOSなどの情報を知られたり、攻撃に悪用されたりする可能性があるため、ファイアウォールでpingコマンドを拒否しているものがあります。もし応答がない場合は、パソコンのファイアウォールを一旦オフにしてから、pingコマンドを実行してみましょう。

IPフィルターでVPNが拒否されていないかを確認する

ルータが正常にインターネットに接続されていることを確認できたら、VPN設定に関する確認を行います。WebGUIで「かんたん設定」を使って設定を行なった場合は、VPN関連プロトコルの通信を通すようにIPフィルターが自動設定されるので問題は発生しにくいです。しかし、VPN設定をコマンドで行った場合は、タイプミスをしたり、設定コマンドのサンプルを自社のネットワーク設定に合わせて書き換えていなかったりすることで、接続できないケースが発生します。

VPNが正常に確立できない場合にIPフィルターが影響しているかどうかは、以下のコマンドを実行してログを参照することで判断します。1行目のコマンドではデバッグログを有効にします。

syslog debug on
show log

例えば、PPTPのTCPポート番号1723や、IKEのUPCポート番号500が、IPフィルターによって拒否されると、「Rejected」というログが残ります。この「Rejected」が残っている場合は、ログに書き出された情報を基に、IPフィルターの設定を見直しましょう。

なお、VPN接続でIPフィルターの設定が怪しいことがわかった場合、まずは一旦、IPフィルターをすべて解除して通信できるか確認してみるとよいでしょう。この時、インターネットから悪意のある第三者が侵入してくる可能性もあるので、内部向けのネットワークは切り離した状態で行う必要があります。

また、IPフィルタリングやNATディスクリプタは、下図のような順番で処理されます。処理される順番を理解しておかないと、意図しないフィルタリング設定をしてしまうので、整理しておきましょう。インタフェースへ送信するパケットは、先にフィルタリングの処理をして、NATディスクリプタの処理をします。逆に、受信するパケットは、NATディスクリプタの処理を先に行います。

NATディスクリプタの間違いがないかどうか確認する

ルータがIPマスカレードを使用している場合、PPTPやIPsecなどをLAN側アドレスに正しく変換できるようにNATディスクリプタを設定する必要があります。

NATディスクリプタは、アドレス体系の異なるIPネットワークを接続することができる機能で、NAT関連の一連の変換ポリシーをまとめたものです。こちらも、IPフィルターと同様、コマンドによる設定を行うと、番号の設定間違いが起きやすいところなので、接続が確立できない場合にはチェックしましょう。NATディスクリプタの動作状況は、次のコマンドで確認できます。

show nat descriptor address

正常に動作している場合は、次のように表示されます。

しかし、正しく設定されていない場合は、外側アドレスが表示されなかったり、変換テーブルが間違っていたりします。細かな部分ですが、きちんと見直してみましょう。

今回は、VPN構築におけるトラブルシューティングとして、拠点間VPNとリモートアクセスVPNの双方に共通するトラブルシューティングについて解説しました。次回は、PPTPおよびIPsecにおける固有の注意点やトラブルシューティングについて解説します。