Juniper Junos系统架构和命令模式浅谈

本文最后更新于 2024年5月28日 上午

介绍

Junos OS 是支持瞻博网络广泛的物理和虚拟网络及安全产品组合的单一操作系统。

Junos OS 包括以下架构变化:

  • 裸机上运行的 Junos OS FreeBSD 6。这是基于 FreeBSD 6 内核的 Junos OS。(很老版本)
  • Junos OS FreeBSD 10 或更高版本的裸机上。这是基于升级后的 FreeBSD 内核的 Junos OS。从 Junos OS 15.1 版开始,某些硬件平台运行升级版 FreeBSD 的 Junos OS。从 Junos OS 版本 16.1 开始,升级版 FreeBSD 的 Junos OS 可作为访客虚拟机 (VM) 在 Linux 虚拟机主机上运行。有关运行具有升级后的 FreeBSD 的 Junos OS 的更多信息,请在功能探索器中搜索 Junos 内核升级到 FreeBSD 10+ : Junos 内核升级到 FreeBSD 10+ 。(现有设备版本,裸机跑Linux,KVM虚拟化跑RE引擎)
  • Junos OS Evolved。有关 Junos OS Evolved 的详细信息,请参阅 Junos® OS Evolved 和 Junos® OS Evolved 软件安装和升级指南 。(裸机直接跑Junos OS,更开放,各个进程在容器上允许,且可以运行第三方容器)

架构概述

下图为Junos OS的架构图

使用Intel X86 CPU硬件,运行Linux,使用KVM虚拟化运行 RE(路由引擎),RE系统为用户直接接触的系统,基于FreeBSD内核。

Linux去控制FPC 转发,控制物理接口。RE与FPC通信下发转发。

架构演进图

各系统层的命令行

1
2
3
4
root#
root# uname
FreeBSD

Junos shell模式 (FreeBSD 下sh),使用root登录的默认模式。

处于Junos底层,可以操作FreeBSD系统。

1
2
3
4
root# cli
root@>
root@> show version

传统网络设备的CLI,操作模式。

使用此模式显示设备的当前状态。在操作模式下,您输入命令来监控网络操作系统、设备和网络连接并对其进行故障排除。

1
2
3
4
5
root@> configure 
Entering configuration mode

root@#

传统网络设备的CLI,配置模式。

使用此模式配置设备。在此模式下,您输入语句以配置设备的所有属性,包括接口、常规路由信息、路由协议、用户访问以及多个系统和硬件属性。 Junos OS 将配置存储为配置语句的层次结构。

切换

1
2
3
4
5
6
7
8
user@host> 
user@host> start shell
%
% su
Password:

root#

非root账号登录,进入CLI操作模式。输入命令可以进入FreeBSD shell模式,访问Junos底层。

但账号权限是普通账号,可以使用su,切换为root账号,提高权限。

1
2
3
4
5
6
root# uname 
FreeBSD
root# vhclient -s
root@host:~# uname
Linux

PS:进入Linux shell模式,是裸机所跑的系统。

命令行基础

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

> show configuration | display set

# 查看所有配置,以每行显示。

> configure

# 进入配置模式

set system host-name songxwn.com

# 配置主机名。Junos 的配置是不会实时生效的,需要进行提交。


set system root-authentication plain-text-password

# 配置root密码,如果不配置是无法提交配置的。

show | compare

[edit system]
+ host-name songxwn.com;

# 查看未提交的配置。且可以看见Junos的配置是层次化的。


commit check

# 提交前查看配置是否合规,否则无法提交。

commit

# 提交配置并保存。


commit at 11:11

commit at “2011-11-11 11:11”

# 指定时间提交生效。

commit confirmed 10

# 提交配置并配置自动回退,若10分钟内没有执行commit,系统会自动回退到提交前的配置。(割接修改利器)


rollback 1

commit

# 回退到指定提交点的配置,并提交应用。可以用 ?查看所有提交点。


show | compare rollback 5

# 查看当前配置和指定提交点的配置差异。


参考文档

Junos 概述

CLI概要

虚拟主机


Juniper Junos系统架构和命令模式浅谈
https://songxwn.com/Juniper_Junos/
作者
Song
发布于
2023年1月8日
更新于
2024年5月28日
许可协议