CLI 구성 모드 개요
CLI의 Junos OS 구성 모드에서는 디바이스 속성을 설정, 관리 및 모니터링하기 위한 구성 문을 사용하여 디바이스를 구성할 수 있습니다.
CLI 구성 모드 이해
인터페이스, 일반 라우팅 정보, 라우팅 프로토콜, 사용자 액세스 등 모든 Junos OS 속성과 여러 시스템 하드웨어 속성을 구성할 수 있습니다.
Junos OS CLI 모드, 명령 및 명령문 계층 이해에서 설명했듯이, 디바이스 구성은 명령문의 계층으로 저장됩니다. 구성 모드에서는 사용할 구성 문 집합을 생성합니다. 구성 문 입력을 마치고 완전하고 정확하다고 확신하면 이를 커밋하여 디바이스에서 구성을 활성화합니다.
구성을 대화식으로 생성하거나, 구성이 포함된 ASCII 텍스트 파일을 생성하여 디바이스에 로드하고 커밋할 수 있습니다.
구성 모드 명령
다음 표에는 각 CLI 구성 모드 명령이 요약되어 있습니다. 명령은 알파벳순으로 구성되어 있습니다.
명령어 |
설명 |
---|---|
|
|
|
구성에 주석을 추가합니다. 현재 계층 수준에서만 코멘트를 추가할 수 있습니다. |
|
데이터베이스에 대한 변경 내용 집합을 커밋하고 변경 내용이 작동하도록 합니다. |
|
구성에서 기존 문의 복사본을 만듭니다. |
|
문에 |
|
문 또는 식별자를 삭제합니다. 지정된 문 경로 내에 포함된 모든 종속 문 및 식별자도 함께 삭제됩니다. |
|
지정된 문 계층 내부로 이동합니다. 문이 없으면 작성됩니다. |
|
명령문 계층의 현재 수준을 종료하여 마지막 편집 명령 이전 수준으로 돌아가거나 구성 모드를 종료합니다. |
|
SDK 응용 프로그램 패키지가 제공하는 구성을 관리합니다. 명명된 SDK 애플리케이션 패키지가 기여한 사용자 정의 구성을 표시하거나 삭제하여 관리합니다. 네이티브 Junos OS 패키지에 정의된 구성은 확장 명령에 의해 삭제되지 않습니다. |
|
사용 가능한 구성 문에 대한 도움말을 표시합니다. |
|
기존 계층에 식별자를 삽입합니다. |
|
ASCII 구성 파일 또는 터미널 입력에서 구성을 로드합니다. 구성 계층에서 사용자의 현재 위치는 로드 작업이 발생할 때 무시됩니다. |
|
명령문 계층의 현재 수준을 종료하여 마지막 편집 명령 이전 수준으로 돌아가거나 구성 모드를 종료합니다. |
|
기존 구성 문 또는 식별자의 이름을 바꿉니다. |
|
구성에서 식별자 또는 값을 대체합니다. |
|
이전에 커밋한 구성으로 되돌립니다. 소프트웨어는 롤백 번호, 날짜, 시간 및 명령을 발행 |
|
구성 모드를 종료하지 않고 CLI 명령을 실행합니다. |
|
구성을 ASCII 파일에 저장합니다. 문 계층의 현재 수준을 포함한 구성 문은 이를 포함하는 문 계층과 함께 저장됩니다. 이 작업을 통해 명령문 계층을 완전히 지정하는 동안 구성의 한 섹션을 저장할 수 있습니다. |
|
명령문 계층을 생성하고 식별자 값을 설정합니다. 이 명령은 계층의 현재 수준이 변경되지 않는다는 점을 제외하면 과 유사합니다 |
|
현재 구성을 표시합니다. |
|
현재 구성을 편집하고 있는 사용자를 표시합니다. |
|
배너로 표시된 |
|
문 계층에서 한 수준 위로 이동합니다. |
|
개인 데이터베이스를 업데이트합니다. |
|
문 또는 식별자를 삭제합니다. 지정된 문 경로 내에 포함된 모든 종속 문 및 식별자도 함께 삭제됩니다. 정규식을 사용하여 패턴을 지정할 수 있습니다. 이 패턴에 따라 운영 체제는 이러한 패턴이 포함된 항목을 검색하고 삭제합니다. |
구성 문 및 식별자
구성에 해당 명령문을 포함하여 디바이스 속성을 구성할 수 있습니다. 일반적으로 문은 고정 텍스트인 시스템 정의 키워드와 선택적 식별자로 구성됩니다. 식별자는 인터페이스 이름이나 사용자 이름과 같이 사용자가 정의할 수 있는 식별 이름으로, 사용자와 CLI가 문 모음 중에서 구별할 수 있도록 합니다.
표 2 에는 최상위 구성 명령문이 나열되어 있습니다. 각 구성 문에 대한 정보는 CLI 탐색기 를 참조하십시오.
명령문 |
설명 |
---|---|
|
챌린지 핸드셰이크 인증 프로토콜(CHAP)을 구성합니다. |
|
인터페이스 및 방화벽 필터에 대한 계정 통계 데이터 수집을 구성합니다. |
|
알람 및 SONET/SDH 프레이밍 및 연결 속성을 활성화하는 조건을 포함하여 라우터 섀시의 속성을 구성합니다. |
|
서비스 등급 매개 변수를 구성합니다. |
|
내용을 기반으로 패킷을 선택하는 필터를 구성합니다. |
|
트래픽 샘플링 옵션을 포함한 전달 옵션을 구성합니다. |
|
구성 그룹을 구성합니다. |
|
캡슐화, 인터페이스, 가상 채널 식별자(VCI), 데이터 링크 연결 식별자(DLCI)와 같은 인터페이스 정보를 구성합니다. |
|
들어오고 나가는 경로에서 속성을 필터링하고 설정할 수 있는 라우팅 정책을 구성합니다. |
|
BGP, IS-IS, LDP, MPLS, OSPF, RIP 및 RSVP를 포함한 라우팅 프로토콜을 구성합니다. |
|
하나 이상의 라우팅 인스턴스를 구성합니다. |
|
정적 경로, 자치 시스템 번호, 연합 회원 및 기록할 전역 추적(디버깅) 작업과 같은 프로토콜 독립적 라우팅 옵션을 구성합니다. |
|
IP 보안(IPsec) 서비스를 구성합니다. |
|
SNMP 커뮤니티 문자열, 인터페이스, 트랩 및 알림을 구성합니다. |
|
호스트 이름, 도메인 이름, DNS(Domain Name System) 서버, 사용자 로그인 및 권한, 호스트 이름과 주소 간의 매핑, 소프트웨어 프로세스를 포함한 시스템 전체 속성을 구성합니다. |
구성 명령문 계층
Junos OS 구성은 명령문의 계층으로 구성됩니다. 문에는 두 가지 유형이 있습니다.
-
컨테이너 문은 다른 문(추가 컨테이너 문 또는 리프 문 포함)을 포함할 수 있는 분기입니다. 계층의 맨 위에 있는 컨테이너 문은 계층 트리의 트렁크로 간주됩니다.
-
리프 문(컨테이너 문에 포함), 다른 문을 포함하지 않습니다.
컨테이너 및 리프 문은 구성 계층을 형성합니다. 구성 계층의 최상위 수준에 있는 각 문은 계층 트리의 트렁크에 있습니다. 이러한 최상위 문은 컨테이너 문으로, 트리 분기를 형성하는 다른 문을 포함합니다. 리프 문은 계층 트리의 리프입니다. 계층 트리의 트렁크에서 시작하는 개별 문 계층을 문 경로라고 합니다.
다음 그림은 계층 트리를 보여주며, OSPF 영역의 인터페이스에서 명령문을 구성할 hello-interval
책임이 있는 프로토콜 구성 계층의 일부에 대한 명령문 경로를 보여줍니다.
protocols
문은 구성 트리의 트렁크에 있는 최상위 문입니다. , area
및 interface
문은 ospf
모두 상위 문의 하위 컨테이너 문입니다(계층 트리의 분기). 문은 hello-interval
트리의 리프이며, 이 경우 데이터 값, 즉 의 길이(초)를 hello-interval
포함합니다.
다음 구성 예는 에 표시된 문 계층을 보여줍니다.그림 1
[edit protocols ospf area area-number interface interface-name]
명령은 다음과 같이 구성을 표시합니다.
protocols { ospf { area 0.0.0.0 { interface so-0/0/0 { hello-interval 5; } interface so-0/0/1 { hello-interval 5; } } } }
CLI는 계층에서 각 문을 들여쓰기하여 계층에서 각 문의 상대적 위치를 나타냅니다. 또한 일반적으로 각 계층 수준의 시작 부분에는 열린 중괄호를 사용하고 끝에는 닫는 중괄호를 사용하여 각 수준을 중괄호로 설정합니다. 계층 수준에서 명령문이 비어 있으면 중괄호가 인쇄되지 않습니다.
각 리프 문은 세미콜론으로 끝납니다. 계층이 리프 문까지 확장되지 않으면 계층의 마지막 문은 세미콜론으로 끝납니다.
구성 계층은 계층의 가장 낮은 수준에 있는 "원라이너"를 포함할 수도 있습니다. Oneliner는 구문에서 한 수준의 중괄호를 제거하고 컨테이너 문, 해당 식별자, 하위 또는 리프 문 및 해당 속성을 모두 한 줄에 표시합니다.
예를 들어, dynamic-profile dynamic-profile-name aggregate-clients;
구성 모드에서 명령을 실행할 때 문, 해당 식별자 dynamic-profile-name
및 리프 문이 aggregate-clients
모두 한 줄에 표시되기 때문에 dynamic-profile
은(는) 원라이너입니다show
.
[edit forwarding-options]
user@host# show
dhcp-relay {
dynamic-profile dynamic-profile-name aggregate-clients;
}
CLI 구성 모드 시작 및 종료
구성 모드를 시작하고 구성 모드 명령문의 계층을 생성하여 구성합니다 Junos OS .
구성 모드로 들어가려면 명령을 사용합니다
configure
.구성 모드에 들어가면 다음 구성 모드 명령을 사용할 수 있습니다.
user@host>
configure
entering configuration mode [edit] user@host#?
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 [edit] user@host>주:구성을 변경할 때는 종료하기 전에 커밋하십시오. 구성 변경 사항을 커밋하지 않고 구성 모드를 종료하면 의도한 변경 사항을 잃게 됩니다.
명령을 보고 사용하려면
configure
구성 권한이 있어야 합니다. 구성 모드에서는 액세스 권한이 있는 명령문만 보고 수정할 수 있습니다.구성 모드에 들어가고 다른 사용자도 구성 모드에 있는 경우 사용자의 이름과 다른 사용자가 보거나 편집 중인 구성 부분을 보여주는 메시지가 표시됩니다.
user@host>
configure
Entering configuration mode Users currently editing the configuration: root terminal d0 (pid 4137) on since 2008-04-09 23:03:07 PDT, idle 7w6d 08:22 [edit] The configuration has been changed but not committed [edit] user@host#최대 32명의 사용자가 동시에 구성 모드에 있을 수 있으며 모두 동시에 구성을 변경할 수 있습니다.
구성 모드를 종료하려면 모든 수준에서 구성 모드 명령을 사용하거나
exit configuration-mode
최상위 수준에서 명령을 사용합니다exit
. 예:[edit protocols ospf area 0.0.0.0 interface so-0/0/0] user@host#
exit configuration-mode
exiting configuration mode user@host>[edit] user@host#
exit
exiting configuration mode user@host>명령을 사용하여
exit
fconfiguration 모드를 종료하려고 할 때 구성에 커밋하지 않은 변경 사항이 포함되어 있으면 다음 메시지와 프롬프트가 표시됩니다.[edit] user@host#
exit
The configuration has been changed but not committed Exit with uncommitted changes? [yes,no]yes
Exiting configuration mode user@host>프롬프트에 응답하지 않고 커밋되지 않은 변경 사항을 남기고 종료하려면 명령을 사용합니다
exit configuration-mode
. 이 명령은 스크립트를 사용하여 원격 구성을 수행할 때 유용합니다.[edit] user@host#
exit configuration-mode
The configuration has been changed but not committed Exiting configuration mode user@host>
참조
상대 구성 모드 명령
top
또는 up
명령 뒤에 다른 구성 명령(예: edit
, insert
, annotate
delete
deactivate
또는 show
)을 사용하면 계층의 맨 위 또는 구성 중인 영역보다 높은 수준으로 빠르게 이동할 수 있습니다.
계층의 맨 위에서 구성 모드 명령을 실행하려면, 명령을 사용하고 top
구성 명령을 지정합니다. 예:
[edit interfaces fxp0 unit 0 family inet]
user@host# top edit system login
[edit system login]
user@host#
계층에서 더 높은 위치에서 구성 모드 명령을 실행하려면 구성 모드 명령을 사용합니다 up
. 계층에서 위로 이동할 수준 수를 지정한 다음 구성 명령을 지정합니다. 예:
[edit protocols bgp]
user@host# up 2 activate system
참조
구성 모드에서 명령 완성
이 주제는 명령 도움말에 액세스하고 CLI 구성 모드에서 기본 명령 완성을 사용하는 방법을 보여줍니다. 각각의 경우에 물음표(?
) 문자를 단독으로 사용하거나 부분 명령 또는 구성 명령문과 함께 사용하여 도움말에 액세스합니다.
구성 모드 명령을 나열하려면 명령만 사용합니다.?
[edit]
user@host# ?
<[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
extension Extension operations
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
[edit]user@host#
특정 계층 수준에서 사용할 수 있는 모든 문을 나열하려면 보려는 계층 수준의 이름 뒤에 을(를) 사용합니다 ?
. 이 예에서는 및 edit protocols
계층을 edit
참조하십시오.
[edit] user@host#edit ?
Possible completions: > accounting-options Accounting data configuration > chassis Chassis configuration > class-of-service Class-of-service configuration > firewall Define a firewall configuration > forwarding-options Configure options to control packet sampling > 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 > snmp Simple Network Management Protocol > system System parameters user@host#edit protocols ?
Possible completions: <[Enter]> Execute this command > bgp BGP options > connections Circuit cross-connect configuration > dvmrp DVMRP options > igmp IGMP options > isis IS-IS options > ldp LDP options > mpls Multiprotocol Label Switching options > msdp MSDP options > ospf OSPF configuration > pim PIM options > rip RIP options > router-discovery ICMP router discovery options > rsvp RSVP options > sapSession Advertisement Protocol options > vrrp VRRP options | Pipe through a command
특정 문자열이나 문자로 시작하는 모든 명령을 나열하려면 문자열, 문자 또는 둘 다를 입력한 다음 문자를 입력합니다 ?
. 이 예는 문자 "a"로 시작하는 모든 routing-options
명령을 보여줍니다.
user@host# edit routing-options a?
Possible completions:
> aggregate Coalesced routes
> autonomous-system Autonomous system number
이 예에서는 구성된 xe-
모든 인터페이스를 보여줍니다. 약어(ex)와 문자의 처음 두 글자를 사용하여 이러한 인터페이스를 표시할 수 있습니다.?
user@host# edit interfaces ex?
<interface_name> Interface name
ex-0/2/0 Interface name
ex-0/2/1 Interface name
[edit]
구성된 모든 정책 문의 목록을 표시할 수도 있습니다.
user@host# show policy-options policy-statement ?
user@host# show policy-options policy-statement
<policy_name> Name to identify a policy filter
lo0only-v4 Name to identify a policy filter
lo0only-v6 Name to identify a policy filter
lo2bgp Name to identify a policy filter
참조
구성 계층에 사용되는 표기법
CLI 구성 모드에서 작업할 때 프롬프트 앞 줄의 배너는 현재 계층 수준을 나타냅니다. 다음 예제에서 수준은 다음과 같습니다 [edit protocols ospf]
.
[edit protocols ospf] user@host#
Junos OS 설명서에서는 을(를) 표준 구성 모드 프롬프트로 사용합니다 user@host#
. CLI 세션에서 프롬프트는 작업 중인 주니퍼 네트웍스 디바이스의 사용자 ID와 구성된 이름을 표시합니다.
set ?
명령을 사용하여 현재 레벨의 구성에 포함할 수 있는 명령문을 표시합니다. help apropos
또한 명령은 상황에 따라 달라지며, 현재 명령 계층 수준 이하에서만 일치하는 명령문을 표시합니다.
문은 각 계층과 하위 계층 내에서 알파벳순으로 나열됩니다. 하위 계층이 너무 길어서 어디에서 끝나고 다음 피어 문이 시작되는지 확인하기 어려울 수 있는 경우 예외가 발생합니다. 매우 긴 하위 계층의 경우, 하위 계층은 알파벳 순서가 아닌 부모 계층의 끝에 나타납니다. 이 예외 시나리오에서는 하위 계층이 나열되는 알파벳순 위치에 자리 표시자가 나타납니다.
예를 들어, [edit interfaces interface-name unit logical-unit-number]
계층 수준에서 하위 계층에는 family family-name
20개 이상의 하위 문이 있으며, 여기에는 자체 하위 문이 있는 여러 하위 계층이 포함됩니다. 전체 family family-name
계층은 부모 계층([edit interfaces interface-name unit logical-unit-number]
)의 끝에 나타나고 다음 자리 표시자는 알파벳순으로 표시됩니다.
family family-name { ... the family subhierarchy appears after the main [edit interfaces interface-name unit logical-unit-number] hierarchy ... }
알파벳 순서에 대한 또 다른 예외는 문이 문을 포함하는 모든 계층에서 항상 첫 번째로 표시된다는 disable
것입니다.