Junos OS (also known as Juniper Junos, Junos and JUNOS) is a FreeBSD-based network operating system used in Juniper Networks routing, switching and security devices.[7]

Junos OS
DeveloperJuniper Networks
OS familyUnix-like
Working stateCurrent
Source modelClosed source and open source
Initial releaseJuly 7, 1998; 26 years ago (1998-07-07)
Latest release24.2R1[1] / July 19, 2024; 3 months ago (2024-07-19)
Available inEnglish
UserlandFreeBSD[2][3][4] or Linux[5]
Default
user interface
Command-line interface
LicenseProprietary,[6] FreeBSD License, GPL License
Official websitejuniper.net/us/en/products-services/nos/junos/

Versions

edit

Junos OS was first made available on 7 July 1998. As of 2008, feature updates have been released quarterly.[8] As of March 2024, the latest version is Junos OS 23.2R1, released on June 23, 2023.

Architecture

edit

Junos operating system is primarily based on FreeBSD on bare metal and later also with Linux kernel. [8] Because FreeBSD is a Unix implementation, users can access a Unix shell and execute normal Unix commands. Junos runs on most or all Juniper hardware systems.[9] After acquisition of NetScreen by Juniper Networks, Juniper integrated ScreenOS security functions into its own Junos network operating system.[10]

Junos OS has several architecture variations:

  • Junos OS FreeBSD 6 on bare metal. This is Junos OS based on a FreeBSD 6 kernel.
  • Junos OS FreeBSD 10 or later on bare metal. This is Junos OS based on an upgraded FreeBSD kernel. Starting with Junos OS Release 15.1, certain hardware platforms run Junos OS with upgraded FreeBSD. Starting in Junos OS Release 16.1, Junos OS with upgraded FreeBSD can run as a guest virtual machine (VM) on a Linux VM host.
  • Junos OS Evolved runs natively on Linux kernel, providing direct access to all the Linux utilities and operations. With Linux integration and boot up times significantly shortened.

Features

edit

Junos SDK

edit

Junos's ecosystem includes a Software Development Kit (SDK).[7][11] Juniper Developer Network (JDN)[12] provides the Junos SDK[13] to the 3rd-party developers who want to develop applications for Junos-powered devices such as Juniper Networks routers, switches, and service gateway systems.[14][15][16][17][18] It provides a set of tools and application programming interfaces (APIs), including interfaces to Junos routing, firewall filter, UI and traffic services functions. Additionally, Junos SDK is used to develop other Juniper's products such as OpenFlow for Junos, and other traffic services.

Command-line interface

edit

The Junos OS command-line interface (CLI) is a text-based command interface for configuring, troubleshooting, and monitoring the Juniper device and network traffic associated with it. It supports two types of command modes.

  • Operational Mode – Monitors hardware status and displays information about network data that passes through or into the hardware.[19]
  • Configuration Mode – Configures the Juniper router, switch, or security device, by adding, deleting, or modifying statements in the configuration hierarchy.[20]

FIPS 140-2 security compliance

edit

Junos-FIPS 140-2 Security Compliance[21] is a variation of Junos OS, providing users with software tools to configure a network of Juniper Networks devices in a Federal Information Processing Standards (FIPS) environment.

Juniper Extension Toolkit (JET)

edit

Junos OS offers programming interfaces and the Juniper Extension Toolkit (JET).[22] JET is a standard component of Junos OS, and it runs on all Juniper routers, switches, and security devices. JET simplifies the automation of operational, configuration, and management tasks, providing a set of open and customizable APIs for control, management, and data planes. It supports standardized programming languages for application development and communication to the Junos OS fast programmable database through standardized and open data exchange formats. It also opens up Trio and Express ASICs via a set of third-party controller-specific adapters, including SAI, OpenFlow, and P4.

Junos Fusion

edit

Junos Fusion[23][24] is a logical device used to reduce network complexity and operational expenses. Two different Junos Fusion architectures are available, one for provider edge and one for enterprise.

Node slicing

edit

Node slicing[25] is a Junos OS feature that enables creating multiple partitions from one physical MX Series router. Each partition behaves as an independent router, with its own dedicated control plane, data plane, and management plane, allowing it to run multiple services on one physical router.

Routing protocols and applications

edit

Junos OS supports a variety of routing protocols and applications. It also supports class of service (CoS), Ethernet VPN (EVPN), firewall filters and policers, flow monitoring, and Layer 2 features. The Junos OS supports high availability mechanisms that are not standard to Unix, such as Graceful Restart.[26] Junos supports a variety of routing protocols. With the introduction of the SRX and J-series (past version 9.3) platforms, it also supports "flow mode", which includes stateful firewalling, NAT, and IPsec. Junos OS generally adheres to industry standards for routing and MPLS.[27]

Secure boot

edit

Secure boot[28] is a system security enhancement based on the Unified Extensible Firmware Interface (UEFI) standard. It works by safeguarding the Basic Input/Output System (BIOS) from tampering or modification and then maintaining that protection throughout the boot process. The secure boot process begins with secure flash, which ensures that unauthorized changes cannot be made to the firmware. Authorized releases of Junos OS carry a digital signature produced by either Juniper Networks directly or one of its authorized partners.

References

edit
  1. ^ "Junos OS Dates & Milestones". Retrieved 2023-09-18.
  2. ^ "Migration, Upgrade, and Downgrade Instructions". 2018-09-17. Archived from the original on 2021-02-26. Retrieved 2018-09-17.
  3. ^ "Junos kernel upgrade to FreeBSD 10+".
  4. ^ "Upgrading and Downgrading to Junos with Upgraded FreeBSD".
  5. ^ "Introducing Junos OS Evolved" (PDF).
  6. ^ "Copyright and Trademark Information". Juniper Networks. Retrieved 2021-08-07.
  7. ^ a b "JUNOS Software: Network Operating System". Retrieved 2008-11-10.
  8. ^ a b Sean Michael Kerner (18 July 2008). "JUNOS: Open, but Not Open Source". internetnews.com. Archived from the original on 2021-10-26. Retrieved 2022-09-19.
  9. ^ "Junos Software Features". Retrieved 2008-11-10.
  10. ^ Musich, Paula (2008-03-17). "Juniper at Last Integrates NetScreenOS into JUNOS". eWeek. Quinstreet Enterprise. Retrieved 2008-11-10.
  11. ^ Kerner, Sean Michael. "JUNOS: Open, But Not Open Source". Archived from the original on July 29, 2012. Retrieved 2008-11-10.
  12. ^ "Juniper Developer Network". Juniper Networks. Retrieved 2012-05-30.[permanent dead link]
  13. ^ "Junos SDK". Juniper Networks. Archived from the original on 2012-04-07. Retrieved 2012-05-30.
  14. ^ Kelly, James; Araujo, Wladimir; Banerjee, Kallol. "Rapid Service Creation Using the Junos SDK" (PDF). Juniper Networks. Retrieved 2012-05-30.
  15. ^ Bernier, Paula (2007-12-10). "Juniper Opens Router OS to Third-Party Developers". Archived from the original on 25 May 2010. Retrieved 2008-11-10.
  16. ^ Hicket, Andrew R. (10 December 2007). "Juniper Opens OS To Third-Party Developers, Taking Stab At Cisco". CRN. The Channel Company. Retrieved 2008-11-10.
  17. ^ "Juniper Accelerates Innovation with the Partner Solution Development Platform (PSDP)" (PDF). Retrieved 2008-11-10. [dead link]
  18. ^ "Executive Essays on Innovation and the Partner Solution" (PDF). Juniper Networks. Archived from the original (PDF) on 2008-07-27. Retrieved 2008-11-10.
  19. ^ "CLI User Guide" (PDF). Juniper. 2019-09-10. Retrieved 2019-09-17.
  20. ^ "CLI User Guide" (PDF). Juniper. 2019-09-17. Retrieved 2019-09-17.
  21. ^ "Understanding Junos OS in FIPS Mode". 2019-09-10. Retrieved 2019-09-10.
  22. ^ "Juniper Extension Toolkit". 2019-09-10. Retrieved 2019-09-10.
  23. ^ https://www.juniper.net/assets/us/en/local/pdf/datasheets/1000523-en.pdf [bare URL PDF]
  24. ^ "Junos Fusion". 2019-09-10. Retrieved 2019-09-17.
  25. ^ "Junos Node Slicing Feature Guide". 2019-09-10. Retrieved 2019-09-10.
  26. ^ Sonderegger, James; Blomberg, Orin; Milne, Kieran; Palislamovic, Senad (2024-04-05). Junos High Availability (1st ed.). O'Reilly Media (published 2009-09-29). ISBN 9780596523046.
  27. ^ "Junos OS Standards Reference" (PDF). Juniper Networks. Juniper Networks, Inc. 2024-02-01. Retrieved 2024-04-05.
  28. ^ "Secure Boot". 2019-09-10. Retrieved 2019-09-17.