Juniper JUNOS模拟器配置导航

网络 路由交换
本文中,我们会看一看如何多JUNOS配置文件进行操作。JUNOS配置文件在层级结构中很有条理,一旦你明白其结构和不同的层级,就可以轻松浏览文件并准确找到需要检测和更改的部件,而且还不会受到其他不需要部件的影响。

本文中,我们会看一看如何多JUNOS配置文件进行操作。JUNOS配置文件在层级结构中很有条理;一旦你明白其结构和不同的层级,就可以轻松浏览文件并准确找到需要检测和更改的部件,而且还不会受到其他不需要部件的影响。

首先,我们登录路由:

Juniper5 (ttyd0) login: jeff

Password:

--- JUNOS 8.5R1.13 built 2007-11-14 17:54:24 UTC

jeff@Juniper5>

该指令显示了用户名(jeff)和路由器的名称(Juniper5)。路由器现在处于可操作状态,处于这种状态下的时候,我们可以执行显示路由状态和数据库,ping和跟踪路由,远程登录(telnet)和ssh,重启系统进程等任务——这些任务大都是我们在监视和解决系统问题时需要用到的命令。JUNOS可操作模式相当于IOS用户的EXEC模式。

使用IOS的时候,问号可以为我们提供很多帮助;当我们不记得命令字符串中的下一个语句时或者只需要查看可用选项时,问号就成了基础信息工具。我们可以使用问号来查看可操作状态中所有可用的命令:

jeff@Juniper5> ?
Possible completions:
clear           Clear information in the system
configure       Manipulate software configuration information
diagnose        Invoke diagnose script|
file            Perform file operations
help            Provide help information
monitor         Show real-time debugging information
mtrace          Trace multicast path from source to receiver
ping            Ping remote target
quit            Exit the management session
request         Make system-level requests
restart         Restart software process
set             Set CLI properties, date/time, craft interface message
show            Show system information
ssh             Start secure shell on another host
start           Start shell
telnet          Telnet to another host
test            Perform diagnostic debugging
traceroute      Trace route to remote host

#p#

为了对配置进行更改, 笔者通过输入configure命令来输入配置模式:

jeff@Juniper5> configure 

JUNOS配置模式相当于IOS中专有的EXEC或启用的模式。注意指令从>改为了#,在你输入enable命令后IOS会有同样的更改。

另一种JUNOS配置模式的特性是位于指令上面的[edit]栏目。我们可以围绕配置层级来操作以便观察或更改文件的某部分;[edit]栏目准确指出了你所在层级的位置。当这一栏显示[edit]的时候,说明我们位于最顶层。因此,举例来说,如果在你的类型显示这一层级且没出现修改程序的时候,JUNOS会显示整个构造。

将show命令与问号一起使用,我们会看到构造顶部的层级:  

[edit]
jeff@Juniper5# show ?
Possible completions:
<[Enter]>            Execute this command
> access               Network access configuration
> accounting-options   Accounting data configuration
> applications         Define applications by protocol characteristics
+ apply-groups         Groups from which to inherit configuration data
> chassis              Chassis configuration
> class-of-service     Class-of-service configuration
> event-options        Event processing configuration
> firewall             Define a firewall configuration
> forwarding-options   Configure options to control packet forwarding
> groups               Configuration groups
> interfaces           Interface configuration
> policy-options       Routing policy option configuration
> protocols            Routing protocol configuration
> routing-instances    Routing instance configuration
> routing-options      Protocol-independent routing option configuration
> security             Security configuration
> services             Service PIC applications settings
> snmp                 Simple Network Management Protocol configuration
> system               System parameters
|                    Pipe through a command

与该列表一起的标签对层级做了很好的诠释。例如,所有的界面都配置在了interfaces级别下,所有的协议都配置在了protocols级别下,而所有的路由策略都位于policy-options级别下。 #p#

在每个顶层下面存在许多子层级。例如,在protocols下你可以找到BGP,OSPFv2,OSPFv3,MPLS,RSVP等。在those下可以发现更下一层的子层级。比方,在OSPF下,我们可以找到区域配置的层级,而在每个区域层级以下还可以找到用来指定区域内界面的层级。

配置的层级结构让我们可以只关注感兴趣的局部配置上。假设你只想看一下构造中的BGP部分。show protocols bgp会显示出整个BGP配置:

[edit]
jeffr@Juniper5# show protocols bgp 
local-address 192.168.50.10;
local-as 65503;
group CustomerX {
export XPolicy;
peer-as 65510;
neighbor 192.168.1.1 {
authentication-key "$9$-Ud2aji.5z6qm"; ## SECRET-DATA
}
neighbor 192.168.1.5 {
authentication-key "$9$JiZHmzF/t0I69ev"; ## SECRET-DATA
}
neighbor 192.168.1.10 {
authentication-key "$9$mPF/u0Icrv1Rbs"; ## SECRET-DATA
}
}
group CustomerY {
neighbor 192.168.10.20;
neighbor 192.168.10.30;
neighbor 192.168.10.40;
}
group CustomerZ {
neighbor 192.168.20.100;
}

在上面的配置中,我们看到出现了一个本地地址(192.168.50.10),所有的BGP TCP对话都源自该地址,本地AS号码是65503,而且还存在三个同级组:CustomerX,CustomerY和CustomerZ。CustomerX具备一个输出路由策略,我们已将其命名为Xpolicy;由于用于该组(65510)的AS号码不同于本地AS号码,所有它们就是EBGP同级组。位于这个组之下有三个临近组,所有这些组都经由个人密码验证。同级组CustomerY(拥有三个临近组)和CustomerZ(有一个临近组)是IBGP,因为他们不具备指定单独AS号码,而且也没有配备验证。 #p#

假设,你所感兴趣的只是CustomerX下的临近组192.168.1.5的配置而不是整个BGP配置。我们可以用更明确的show命令,让JUNOS只显示出所需部分:

[edit]
jeff@Juniper5# show protocols bgp group CustomerX neighbor 192.168.1.5    
authentication-key "$9$JiZHmzF/t0I69ev"; ## SECRET-DATA

当然,如果你处于配置模式,可能会想作出更多操作。在配置模式中单独使用问号,就可以看到你能使用的各种操作:

[edit]
jeff@Juniper5# ?     
Possible completions:
<[Enter]>            Execute this command
activate             Remove the inactive tag from a statement
annotate             Annotate the statement with a comment
commit               Commit current set of changes
copy                 Copy a statement
deactivate           Add the inactive tag to a statement
delete               Delete a data element
edit                 Edit a sub-element
exit                 Exit from this level
help                 Provide help information
insert               Insert a new ordered data element
load                 Load configuration from ASCII file
quit                 Quit from this level
rename               Rename a statement
replace              Replace character string in configuration
rollback             Roll back to previous committed configuration
run                  Run an operational-mode command
save                 Save configuration to ASCII file
set                  Set a parameter
show                 Show a parameter
status               Show users currently editing configuration
top                  Exit to top level of configuration
up                   Exit one level of configuration
wildcard             Wildcard operations

#p#

笔者想为该配置添加更多要素,而要实现这一操作就要用到set命令。假设我们想为OSPF area 5添加界面fe-0/0/0。可以使用set,我们要按层级一直向下指定每一层知道我们到达所需位置——在area 5之下——界面要添加的位置:

[edit]
jeff@Juniper5# set protocols ospf area 5 interface fe-0/0/0 

如果没有启用OSPF或area 5不存在,相同的命令可能会启用该协议并创建area 5,除此之外再向area中添加界面。

另一个方法是先移动到需要的层级,然后用edit命令作出更改:

[edit]
jeff@Juniper5# edit protocols ospf area 5 
[edit protocols ospf area 0.0.0.5]
jeff@Juniper5# set interface fe-0/0/1 

注意输入edit protocols ospf area 5之后,指令后的栏目改为显示我们所在的层级。我们再使用set命令往这一层添加界面fe-0/0/1。我们在这个时候指定整个层级,因为我们已经处于要作出更改的层级。

这两种方法可以用来轻松管理配置。如果你只要为配置添加一两个语句,那么在顶层进行操作,指定你要改变那一层的完整路径,会更简便。如果你要对某特定层级进行扩展性改变,一般可以先用edit命令移动到该层,然后直接作出更改就可以了。

edit命令可以带你到达指定层级,up可以上升一层。假设我们位于OSPF area 5,我们想上移到OSPF层:

[edit protocols ospf area 0.0.0.5]
jeff@Juniper5# up 
[edit protocols ospf]
jeff@Juniper5# show  
area 0.0.0.5 {
interface fe-0/0/0.0;
interface fe-0/0/1.0;
}

你可以看到指令上面的那一栏在执行了up命令后发生了改变。每一栏的Show命令显示了该层下面的所有配置语句。

如果你想从任意层跳回到顶层,可以使用top命令:

[edit protocols ospf]
jeff@Juniper5# top 
[edit]
jeff@Juniper5# 

在这个例子中,我们还可以通过执行up命令两次的方式到达顶部:[edit protocols ospf] => up => [edit protocols] => up => [edit]。同时使用edit,up和top命令,可以移动到任意配置文件中的任意位置从而可以进而更有效的操作。

除了set命令以外,还有一些重要的命令可用来更改配置。在这里我们不加赘述,只是点到为止:

◆delete命令与set相反;它从配置中删除了语句。

◆replace用来替换语句。

◆insert 用来添加带有指定要素的语句时。

◆deactivate 禁用某语句而又不想删除该语句的时候可以使用。

◆activate 重新激活被禁用的语句。

◆annotate 用来向语句添加注释;适用于那些复杂的配置。

JUNOS和IOS之间可操作性的区别还在于,当你向JUNOS配置中输入一个新语句后,它不会马上在路由上执行。你可以尽可能多的作出更改,检查更改,然后再将更改清楚明确地告诉路由后才执行。

【编辑推荐】

  1. Juniper Networks推出下一代分布式企业网络基础架构
  2. 网络操作系统乱战十年JUNOS发力
责任编辑:许凤丽 来源: IT专家网
相关推荐

2010-06-29 09:28:56

2009-09-14 09:59:19

CCNA模拟器介绍CCNA

2013-01-14 15:41:27

Android模拟器教程配置

2010-09-28 09:25:38

苹果官网远程访问Juniper

2013-05-29 16:01:21

Android开发Android模拟器移动开发

2011-07-26 09:32:08

iPhone 模拟器

2009-09-17 09:11:59

CCNA实验模拟器CCNA

2010-01-27 13:37:15

2009-09-04 16:05:08

2009-09-15 15:59:03

CCNA实验模拟器

2010-01-27 18:27:07

Android模拟器应

2013-01-16 10:19:28

2024-04-08 08:26:54

2013-04-19 10:50:03

2010-08-06 09:35:55

思科模拟器

2013-01-25 15:29:14

s40Series 40

2013-07-25 14:35:27

2009-08-20 10:55:59

2021-01-11 15:37:57

C语言万花筒代码

2024-02-19 08:35:00

点赞
收藏

51CTO技术栈公众号