cRPDアプリケーションのデバッグ

以下のコマンドを使用して、cRPDアプリケーションをデバッグできます。

CLI

Junos OS CLIは、ルーターハードウェア、Junos OS、ルーティングプロトコル、ネットワーク接続を制御およびトラブルシューティングするための主要なツールです。CLIコマンドは、ルーティングテーブルからの情報、ルーティングプロトコルに固有の情報、および traceroute ユーティリティから派生したネットワーク接続に関する情報を表示します。RPD トレースログ機能は、CLI を通じてサポートおよび有効化されます。トレースログファイルはパス /var/log 保存されます。

以下のJunos CLIコマンドを使用して、cRPDのトラブルシューティングを行うことができます。

  • show task:ルーティング ルーティングエンジン上のルーティング プロトコル タスクを表示します。

  • show task memory detail:ルーティングエンジン上のルーティングプロトコルタスクのメモリ使用率を表示します。

  • show route:ルーティングテーブルのアクティブなエントリーを表示します。

  • show bfd:アクティブなBFD(双方向フォワーディング検出)セッションに関する情報を表示します。

  • show bgp:すべてのルーティングインスタンスのBGPサマリー情報を表示します。

  • show (ospf | ospf3):すべてのルーティング インスタンスのすべての OSPF ネイバーに関する標準情報を表示します。

  • show interfaces routing:ルーターの診断を実行します。

  • show log:システムアクティビティログを表示して、パフォーマンス監視、トラブルシューティング、デバッグ目的で情報を監視および表示します。

  • show krt: KRT キューとその状態を監視します。

  • show programmable-rpd:プログラマブルルーティングプロトコルプロセス(prpd)サーバーに接続されているクライアントのリスト。prpdは、ルーティングシステムをプログラムするためのパブリックAPIを提供し、ユーザーがAPIに直接アクセスして、ネットワークの動作をカスタマイズ、作成、変更できるようにします。

  • ip monitor:Linux FIBおよびインターフェイスイベントとネットリンクメッセージへのルートのインストールを監視します。

  • tcpdump:コントロールプレーンとの間のネットワークトラフィックをキャプチャします。

  • netstat:ソケットを監視します。

  • request support information:トラブルシューティングに使用されるサポート情報を表示します。

Ping

CLIモードで Ping コマンドを使用してcRPD IPv4およびIPv6ネットワーク上のホストの到達可能性をテストし、ルーティングの問題を診断できます。さらに、 ping を使用してシェルモードで到達可能性を確認することもできます。

障害処理

rpd がクラッシュすると、自動的に再起動します。障害から手動で回復するには、以下の CLI コマンド階層を実装して障害を処理できます。

  • restart routing:rpdを再起動します。

  • clear bgp:BGPセッションをクリアします。

  • deactivate:CLI設定を無効にします。

  • activate:CLI設定を有効にします。

コンテナのトラブルシューティング

cRPDがDockerコンテナとしてデプロイされている場合、さまざまなDockerコマンドを実装してコンテナレベルで問題を監視およびトラブルシューティングできます。

  • docker ps: アクティブなコンテナとその状態をリストアップします。

  • docker stats: リソースの使用状況を継続的に監視します。

  • docker logs:コンテナが予期せず終了した場合に備えて、コンテナログを抽出します。

  • docker stop: Docker を現在の状態から停止します。

  • docker start: Dockerコンテナを再起動します。

Docker の検証

  1. docker versionコマンドを使用して、インストールされているDockerエンジンのバージョンを確認します。

    root@ubuntu-vm18:~# docker version

  2. システム内のソフトウェアとハードウェアの情報を表示します。

    root@ubuntu-vm18:~# uname -a

  3. Ubuntuのバージョンを表示します。

    root@ubuntu-vm18:~# lsb_release -a

コアファイルの表示

目的

コアファイルが生成されると、 /var/crashで出力を見つけることができます。生成されたコアファイルは、Dockerコンテナをホストするシステムに保存されます。

アクション

コアファイルを一覧表示するには:

  1. CLI環境を終了して、ホストUNIXシェルに戻ります。

    user@host> start shell

  2. ディレクトリを /var/crash に変更します。

    root@ubuntu-vm18$ cd /var/crash

    root@ubuntu-vm18$ ls -l

  3. コマンドを実行して、コアファイルの場所を特定します。

    root@ubuntu-vm18$ sysctl kernel.core_pattern

  4. クラッシュの前後に作成されたコアファイルがないか確認します。

CLIを使用してコアファイルを表示するには:

  1. CLIモードに入り、次のコマンドを実行します。

    user@host> show system core-dumps

  2. クラッシュの前後に作成されたコアファイルがないか確認します。

難読化($9$)または暗号化($8$)パスワードのプレーンテキストバージョンを表示する

  • 次のコマンドを使用して、設定ファイルに存在する難読化($9$)または暗号化($8$)パスワードのプレーンテキストバージョンを表示できます。

    root@crpd1> request system decrypt password

    詳細については、「 システム復号化パスワードの要求」を参照してください。