VPN接続にRaspberry Piを残し、数時間後に接続しましたが、インターネットに接続していませんでした。問題を解決/診断する方法は?

VPN接続にRaspberry Piを残し、数時間後に接続しましたが、インターネットに接続していませんでした。問題を解決/診断する方法は?

Raspberry PiをVPNに接続し、数時間放置した。 SSHまたはVNC経由で接続を確認したとき、インターネットに接続されていないことに気づきました。再起動してVPNに再接続すると、再び機能します。

私の質問は:問題をどのように診断しますか?問題を解決するには?問題の原因を見つけるために見られるログファイルまたはsystemctlログがありますか?

自動化したいPiがインターネットに接続されていない場合は、再起動されます。。いくつかの.targetファイルやルールを介してudev「きれいな」方法でこれを行いたいと思います。

ベストアンサー1

再起動する必要はないかもしれません。 rpiがハングを検出した場合、VPN接続を再開するだけで十分です(ハードウェアエラーでない限り)。

ハング検出に関して特定のホストまたはIPアドレスがありますか?知るVPNがオンのときはアクセスできなければなりませんが、VPNがオフのときはアクセスできませんか?その場合はfping、そのホストを試すクローンジョブを設定します。応答があれば、すべてが正常です。そうでない場合は、VPNを再起動してください。

それ以外の場合、VPN の中断がログに記録された場合はログを監視し、VPN の中断が発生した場合は VPN を再起動するスクリプトを作成します。たとえば、次から始めます。

tail -F /var/log/syslog |
  awk '/your outage message/ { system "/path/to/vpn-restart-script" }'

または、次のコマンドを使用してPerlスクリプトを作成します。ファイル::尾基準寸法)。ちなみに、DebianのパッケージにFile::Tailあるのでlibfile-tail-perl、Raspbianでも利用できるはずです。

ログファイルに中断メッセージが見つからず、VPN接続がsystemdサービスによって開始されている場合は、それを使用して起動するかどうかsystemctl status <servicename>を確認できます。

簡単に言えば、この問題を解決するには2つの部分があります。

  1. VPNの起動を確実に検出します。ログファイルを監視するには、バックグラウンドで実行されているクローンジョブまたはスクリプトが必要な場合があります。中断を検出するには、複数のテスト条件が必要な場合があります。

  2. そうでない場合は、VPN接続を再開してください。systemctl restart servicenameVPNがシステムサービスを介して起動したとき。または/etc/init.d/vpn-serviceSysV初期化時。 (この名前は正確ではなく、実際のサービス名のプレースホルダーのみです。)

これらの部分は互いに独立して解決することができ、解決する必要があります。

おすすめ記事