O'Reilly logo

JUNOS Cookbook by Aviva Garrett

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

1.25. Gathering Software Version Information

Problem

You want to determine which software version is running on the router.

Solution

The following command shows the software version and lists all the software components that are running on the router:

	aviva@router1>  
show version
	Hostname: router1
	Model: m20
	JUNOS Base OS boot [7.4-20051024.0]
	JUNOS Base OS Software Suite [7.4-20051024.0]
	JUNOS Kernel Software Suite [7.4R1.7]
	JUNOS Packet Forwarding Engine Support (M20/M40) [7.4R1.7]
	JUNOS Routing Software Suite [7.4R1.7]
	JUNOS Online Documentation [7.4R1.7]
	JUNOS Crypto Software Suite [7.4R1.7]

On the J-series routers, the software ships as a single package:

	aviva@RouterA> show version
	Hostname: RouterA
	Model: j2300
	JUNOS Software Release [7.4R1.7] (Export edition)

Discussion

The show version command tells you which software version is running on the router. The first two lines show the name of the router and its type. This is followed by a list of the software packages that are running. The text in square brackets is the software version. Here, the complete software version number is 7.4R1.7. The software release number is 7.4. When the release-naming scheme was devised, the first number was supposed to indicate the major release and the second number the minor release, but, in practice, this never came to be. The JUNOS software releases do not distinguish between major and minor releases. Each release of software, be it 7.4, 7.5, or whatever, is considered an equivalent collection of new software and hardware features.

From a historical point of view, the initial JUNOS release was 3.0. The first digit in the release number increments from time to time, typically as a consequence of a new ASIC family, a new hardware platform family, or an upgrade to the underlying FreeBSD software. The second digit in the release number starts at 0 and increments with each software release. A new version of JUNOS software is released quarterly. So, for example, JUNOS releases 6.0 through 6.4 were released quarterly, from July 2003 through July 2004 (third quarter 2003 through third quarter 2004), and JUNOS 7.0 was released in the fourth quarter of 2004. In this case, the first digit in the release changed from 6 to 7 to correspond with the introduction of a new platform family, the TX Matrix.

The letter in the version number indicates the type of release. As a customer, you generally see R, for released software. If you are a beta customer, you receive B (beta) versions during the beta test period—for example, 7.4B1 and 7.4B2. If you are working with customer support to resolve a problem, you may also see I (internal) versions of the software or daily builds, which are named with the software version and a numeric string that includes the build date and time.

The digits following the letter are the maintenance release number and the build, or spin, of that maintenance. The first maintenance release number is always 1, and the first spin that is released is generally a number greater than 1. In the case of the show version command output in this recipe, the spin number is 7. The names of the JUNOS Base OS Software Suite and the Support Tools Package include the date that they were created rather than a maintenance release number, because these packages do not change as often as the others.

When checking the software version, make sure the versions of all the packages are the same. In this example, the packages are all 7.4. If they are not the same, the router will likely have operational issues.

The previous output shows all the standard JUNOS packages, which consist of five basic components:

Operating system

The JUNOS Base OS Software Suite, the JUNOS Kernel Software Suite, and the JUNOS Support Tools Package comprise the JUNOS operating system. The base OS is the underlying operating system software, which is based on FreeBSD, and the kernel is the software that runs on the various hardware boards, including the networking cards (the Flexible PIC Concentrators, or FPCs, and the Physical Interface Cards, or PICs).

Forwarding software

The JUNOS Packet Forwarding Engine Support package is the forwarding software, which runs on the forwarding board and is responsible for receiving and forwarding network traffic.

Routing software

The JUNOS Routing Software Suite is the routing software. It runs on the Routing Engine, which you can think of as a separate computer within the router dedicated to handling all routing functions, such as calculating the best routes to network destinations and managing the routing tables.

Security software

The crypto (security) software is provided only with JUNOS software shipped within the United States and Canada.

Online documenation

Online documentation is installed on the hard disk and is available while you are logged in to the router.

If you are debugging a problem with the JUNOS software and suspect that one of the software components is not running, use the show version detail command to list all the software processes that are installed:

	aviva@router1> show version detail
	…
	KERNEL 7.4R1.7 #0 built by builder on 2005-10-24 02:03:37 UTC
	MGD release 7.4R1.7 built by builder on 2005-10-24 02:03:58 UTC
	CLI release 7.4R1.7 built by builder on 2005-10-24 02:03:44 UTC
	CHASSISD release 7.4R1.7 built by builder on 2005-10-24 01:50:01 UTC
	DFWD release 7.4R1.7 built by builder on 2005-10-24 01:52:13 UTC
	DCD release 7.4R1.7 built by builder on 2005-10-24 01:48:04 UTC
	RPD release 7.4R1.7 built by builder on 2005-10-24 02:04:09 UTC
	SNMPD release 7.4R1.7 built by builder on 2005-10-24 01:56:24 UTC
	MIB2D release 7.4R1.7 built by builder on 2005-10-24 01:54:12 UTC
	APSD release 7.4R1.7 built by builder on 2005-10-24 01:49:52 UTC
	VRRPD release 7.4R1.7 built by builder on 2005-10-24 01:57:05 UTC
	ALARMD release 7.4R1.7 built by builder on 2005-10-24 01:49:44 UTC
	PFED release 7.4R1.7 built by builder on 2005-10-24 01:55:25 UTC
	CRAFTD release 7.4R1.7 built by builder on 2005-10-24 01:52:01 UTC
	SAMPLED release 7.4R1.7 built by builder on 2005-10-24 01:56:04 UTC
	ILMID release 7.4R1.7 built by builder on 2005-10-24 01:53:34 UTC
	RMOPD release 7.4R1.7 built by builder on 2005-10-24 01:55:47 UTC
	COSD release 7.4R1.7 built by builder on 2005-10-24 01:51:46 UTC
	KMD release 7.4R1.7 built by builder on 2005-10-24 01:45:24 UTC
	FSAD release 7.4R1.7 built by builder on 2005-10-24 01:52:24 UTC
	SERVICED release 7.4R1.7 built by builder on 2005-10-24 01:56:16 UTC
	IRSD release 7.4R1.7 built by builder on 2005-10-24 01:53:39 UTC
	NASD release 7.4R1.7 built by builder on 2005-10-24 01:55:20 UTC
	FUD release 7.4R1.7 built by builder on 2005-10-24 01:52:27 UTC
	PPMD release 7.4R1.7 built by builder on 2005-10-24 02:04:06 UTC
	LMPD release 7.4R1.7 built by builder on 2005-10-24 02:03:51 UTC
	RTSPD release 7.4R1.7 built by builder on 2005-10-24 01:56:01 UTC
	SMARTD release 7.4R1.7 built by builder on 2005-10-24 01:47:34 UTC
	KSYNCD release 7.4R1.7 built by builder on 2005-10-24 01:53:50 UTC
	LRMUXD release 7.4R1.7 built by builder on 2005-10-24 02:03:54 UTC
	SPD release 7.4R1.7 built by builder on 2005-10-24 01:56:46 UTC
	ECCD release 7.4R1.7 built by builder on 2005-10-24 01:52:23 UTC
	PGMD release 7.4R1.7 built by builder on 2005-10-24 02:04:03 UTC
	BFDD release 7.4R1.7 built by builder on 2005-10-24 02:03:42 UTC
	L2TPD release 7.4R1.7 built by builder on 2005-10-24 01:57:17 UTC
	SDXD release 7.4R1.7 built by builder on 2005-10-24 02:08:36 UTC
	PPPOED release 7.4R1.7 built by builder on 2005-10-24 01:55:39 UTC
	GCDRD release 7.4R1.7 built by builder on 2005-10-24 01:52:33 UTC
	RDD release 7.4R1.7 built by builder on 2005-10-24 01:55:44 UTC
	jkernel-dd release 7.4R1.7 built by builder on 2005-10-24 01:42:10 UTC
	jroute-dd release 7.4R1.7 built by builder on 2005-10-24 01:42:36 UTC
	jcrypto-dd release 7.4R1.7 built by builder on 2005-10-24 01:42:50 UTC

Some of the main processes are MGD, the management process, which communicates between the CLI and all the other processes; RPD, the routing protocol process; SNMPD, the SNMP process; MIB2D, the SNMP MIB II process; and PFED, the packet- forwarding software process. The JUNOS processes are the equivalent of Unix daemons, which is why their names end with the letter d. It is worth pointing out that all the software processes running on the router are separate and modular, so if one of them fails, the other processes that make up the router software continue to run.

The show system processes command, which is a repackaged version of the Unix ps command, also lists the running processes:

	aviva@router1> show system processes
	PID  TT  STAT         TIME COMMAND
	…
	 2630  ??  I         0:00.07 /usr/sbin/tnetd -N
	 2632  ??  S         5:27.60 /usr/sbin/chassisd -N
	 2633  ??  S         0:06.00 /usr/sbin/alarmd -N
	 2634  ??  I         0:00.16 /usr/sbin/craftd -N
	 2635  ??  I         0:00.32 /usr/sbin/mgd -N
	 2636  ??  I         0:00.14 /usr/sbin/inetd -N
	 2637  ??  S         0:00.29 /usr/sbin/tnp.sntpd -N
	 2641  ??  I         0:00.05 /usr/sbin/smartd -N
	 2645  ??  S         0:00.09 /usr/sbin/eccd -N
	 2727  ??  S         0:03.54 /usr/sbin/xntpd -j -N (ntpd)
	 2728  ??  S         0:07.88 /usr/sbin/snmpd -N
	 2729  ??  I         0:10.81 /usr/sbin/mib2d -N
	 2730  ??  S         0:03.87 /usr/sbin/rpd -N
	 2731  ??  I<     0:00.39 /usr/sbin/apsd -N
	 2732  ??  I         0:00.41 /usr/sbin/vrrpd -N
	 2733  ??  IN        0:00.51 /usr/sbin/sampled -N
	 2734  ??  I         0:00.22 /usr/sbin/ilmid -N
	 2735  ??  I         0:00.46 /usr/sbin/rmopd -N
	 2736  ??  I         0:00.55 /usr/sbin/cosd
	 2737  ??  I         0:00.29 /usr/sbin/nasd -N
	 2738  ??  I         0:00.17 /usr/sbin/fud -N
	 2739  ??  S         0:01.39 /usr/sbin/ppmd -N
	 2740  ??  I         0:00.25 /usr/sbin/lmpd
	 2741  ??  I         0:00.22 /usr/sbin/rtspd -N
	 2742  ??  S         0:00.76 /usr/sbin/fsad -N
	 2743  ??  I         0:00.40 /usr/sbin/spd -N
	 2744  ??  I         0:00.14 /usr/sbin/pgmd -N
	 2745  ??  I         0:00.86 /usr/sbin/bfdd -N
	 2746  ??  I         0:00.14 /usr/sbin/sdxd -N
	 2747  ??  I         0:00.20 /usr/sbin/rdd -N
	 2749  ??  S         0:00.47 /usr/sbin/dfwd -N
	 2751  ??  I         0:01.00 /usr/sbin/kmd -N
	 2752  ??  S         0:08.86 /sbin/dcd -N
	 2753  ??  I         0:01.03 /usr/sbin/pfed -N
	 2754  ??  S         0:06.14 /usr/sbin/irsd -N
	 …

If you suspect that an installed software process is not running, you can check the process. Here, we check for RPD, the routing-protocol process:

	aviva@router1> show system processes | match /rpd

We see that RPD is not running. Because the Routing Engine and the forwarding plane in JUNOS routers are separate processes, even when RPD is not up, the router continues to operate and forward traffic. However, it cannot perform any routing operations, such as sending routing-protocol updates and maintaining the routing table.

See Also

Recipe 4.7

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required