Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

header-navigation
keyboard_arrow_up
list Table of Contents
file_download PDF
{ "lLangCode": "en", "lName": "English", "lCountryCode": "us", "transcode": "en_US" }
English
keyboard_arrow_right

Debug cRPD Application

date_range 10-Dec-24

You can use the following commands to debug the cRPD application.

Command-Line Interface

The Junos OS command-line interface (CLI) is the primary tool for controlling and troubleshooting router hardware, the Junos OS, routing protocols, and network connectivity. CLI commands display information from routing tables, information specific to routing protocols, and information about network connectivity derived from the traceroute utilities. RPD tracelog facilities are supported and enabled through the CLI. Trace log files are stored /var/log path.

You can use the following Junos CLI commands to troubleshoot cRPD:

  • show task: Display the routing protocol tasks on the Routing Engine.

  • show task memory detail: Display the memory utilization for routing protocol tasks on the Routing Engine.

  • show route: Display the active entries in the routing tables.

  • show bfd: Display information about active Bidirectional Forwarding Detection (BFD) sessions.

  • show bgp: Display information about BGP summary information for all routing instances.

  • show (ospf | ospf3): Display standard information about all OSPF neighbors for all routing instances.

  • show interfaces routing: Perform router diagnostics.

  • show log: View system activity logs and allows you to monitor and view information for performance monitoring, troubleshooting, and debugging purposes.

  • show krt: Monitor KRT queues and their states.

  • show programmable-rpd: List of clients connected to the programmable routing protocol process (prpd) server. The prpd provides public APIs to program routing systems, making it possible for users to directly access the APIs to customize, create, and modify the behavior of their network.

  • ip monitor: Monitor the installation of routes to Linux FIB and interface events and netlink messages.

  • tcpdump: Capture network traffic to/from control plane.

  • netstat: Monitor the sockets.

  • request support information: Display the support information which is used for troubleshooting.

Fault Handling

When the rpd crashes due to some issue, the rpd process is restarted automatically. To recover manually from a fault, you can implement the following CLI command hierarchies to handle the faults:

  • restart routing: Restart the rpd.

  • clear bgp: Clear BGP sessions.

  • deactivate: Deactivate CLI configuration.

  • activate: Activate the CLI configuration.

Troubleshoot Container

You can implement various docker commands to monitor and troubleshoot issues at container level when cRPD is deployed as a docker container.

  • docker ps: List out active containers and their state.

  • docker stats: Continuous monitor the resource utilization.

  • docker logs: Extract container logs in case the container terminates unexpectedly.

  • docker stop: Stop the Docker from the current state.

  • docker start: Restart the Docker container.

Verify Docker

  1. Verify the installed Docker Engine version by using the docker version command.

    root@ubuntu-vm18:~# docker version

    content_copy zoom_out_map
    Client: Docker Engine - Community
     Version:           27.2.1
     API version:       1.43 (downgraded from 1.47)
     Go version:        go1.22.7
     Git commit:        9e34c9b
     Built:             Fri Sep  6 12:08:15 2024
     OS/Arch:           linux/amd64
     Context:           default
    
    Server:
     Engine:
      Version:          24.0.5
      API version:      1.43 (minimum version 1.12)
      Go version:       go1.20.14
      Git commit:       a61e2b4
      Built:            Tue Jun 25 22:38:06 2024
      OS/Arch:          linux/amd64
      Experimental:     false
     containerd:
      Version:          v1.6.21
      GitCommit:        3dce8eb055cbb6872793272b4f20ed16117344f8
     runc:
      Version:          1.1.12
      GitCommit:
     docker-init:
      Version:          0.19.0
      GitCommit:        de40ad0
  2. View the software and hardware information in the system.

    root@ubuntu-vm18:~# uname -a

    content_copy zoom_out_map
    Linux ubuntu-vm18 4.15.0-43-generic #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
  3. View the version of ubuntu.

    root@ubuntu-vm18:~# lsb_release -a

    content_copy zoom_out_map
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 18.04.1 LTS
    Release:        18.04
    Codename:       bionic

View Core Files

Purpose

When a core file is generated, you can find the output at /var/crash. The core files generated are stored on the system that hosts the Docker containers.

You can also use ping and ping6 to check the reachability at the shell mode.

Action

To list the core files:

  1. Exit from the CLI environment to return to the host unix shell.

    user@host> start shell

  2. Change the directory to /var/crash:

    root@ubuntu-vm18$ cd /var/crash

    root@ubuntu-vm18$ ls -l

  3. Run the command to identify the location of the core files:

    root@ubuntu-vm18$ sysctl kernel.core_pattern

  4. Verify for any core files created around the time of the crash.

Display Plain Text Version of Obfuscated ($9$) or Encrypted ($8$) Password

  • You can use the following command to show plain text versions of obfuscated ($9$) or encrypted ($8$) passwords present in configuration files:

    root@crpd1> request system decrypt password

    For more information, see request system decrypt password.

footer-navigation