CLI設定モードの概要
Junos OS Evolved CLIの構成モードでは、構成ステートメントを使用してデバイスのプロパティを設定、管理、監視して、デバイスを構成できます。
CLI設定モードについて
インターフェイス、一般的なルーティング情報、ルーティングプロトコル、ユーザーアクセス、およびいくつかのシステムハードウェアプロパティなど、 Junos OS Evolved のすべてのプロパティを設定できます。
Junos OS CLIモード、コマンド、ステートメント階層を理解することで説明するように、デバイス設定はステートメントの階層として格納されます。設定モードで、使用する設定ステートメントのセットを作成します。設定ステートメントの入力が終了し、それらが完全かつ正しいことを確認したら、それらをコミットし、デバイス上の設定がアクティブになります。
対話的に設定を作成することも、設定を含む ASCII テキスト ファイルを作成してデバイスにロードしてコミットすることもできます。
設定モードコマンド
以下の表は、各CLI設定モードコマンドをまとめたものです。コマンドはアルファベット順に整理されています。
| コマンド |
説明 |
|---|---|
|
|
ステートメントから |
|
|
コンフィギュレーションにコメントを追加します。コメントを追加できるのは、現在の階層レベルのみです。 |
|
|
一連の変更をデータベースにコミットし、変更を運用上有効にします。 |
|
|
設定内の既存のステートメントのコピーを作成します。 |
|
|
ステートメントに |
|
|
ステートメントまたは識別子を削除します。指定されたステートメントパス内に含まれるすべての下位ステートメントと識別子も削除されます。 |
|
|
指定されたステートメント階層内に移動します。ステートメントが存在しない場合は、作成されます。 |
|
|
ステートメント階層の現在のレベルを終了し、最後の編集コマンドの前のレベルに戻るか、設定モードを終了します。 |
|
|
SDKアプリケーションパッケージが提供する構成を管理します。名前付き SDK アプリケーション パッケージが提供したユーザー定義の構成を表示または削除して、それらを管理します。ネイティブの Junos OS Evolved パッケージで定義された設定が、拡張コマンドによって削除されることはありません。 |
|
|
使用可能な設定ステートメントに関するヘルプを表示します。 |
|
|
識別子を既存の階層に挿入します。 |
|
|
ASCII設定ファイルまたは端末入力から設定を読み込みます。読み込み操作が発生すると、設定階層内の現在の場所は無視されます。 |
|
|
ステートメント階層の現在のレベルを終了し、最後の編集コマンドの前のレベルに戻るか、設定モードを終了します。 |
|
|
既存の 設定ステートメント または識別子の名前を変更します。 |
|
|
設定内の識別子または値を置き換えます。 |
|
|
以前にコミットされた設定に戻ります。ソフトウェアは、ロールバック番号、日時、 |
|
|
設定モードを終了せずに CLI コマンドを実行します。 |
|
|
設定を ASCII ファイルに保存します。ステートメント階層の現在のレベルまでの設定ステートメントが、それを含むステートメント階層とともに保存されます。このアクションにより、ステートメント階層を完全に指定しながら、コンフィギュレーションの一部を保存することができます。 |
|
|
ステートメント階層を作成し、識別子値を設定します。このコマンドは |
|
|
現在の設定を表示します。 |
|
|
現在コンフィギュレーションを編集しているユーザーを表示します。 |
|
|
|
|
|
ステートメント階層を1レベル上に移動します。 |
|
|
プライベートデータベースを更新します。 |
|
|
ステートメントまたは識別子を削除します。指定されたステートメントパス内に含まれるすべての下位ステートメントと識別子も削除されます。正規表現を使用してパターンを指定できます。このパターンに基づいて、オペレーティングシステムはこれらのパターンを含むアイテムを検索し、削除します。 |
設定ステートメントと識別子
対応するステートメントを設定に含めることで、デバイスのプロパティを設定できます。通常、ステートメントは、固定テキストであるシステム定義キーワードとオプションの識別子で構成されます。識別子とは、インターフェイス名やユーザー名など、ユーザーが定義できる識別名で、これによって自分やCLIがステートメントの集合体を区別することができます。
表2 は、トップレベルの設定ステートメントを示しています。各設定ステートメントについては、 CLIエクスプローラ を参照してください。
| ステートメント |
説明 |
|---|---|
|
|
チャレンジハンドシェイク認証プロトコル(CHAP)を設定します。 |
|
|
インターフェイスとファイアウォールフィルターの会計統計データ収集を設定します。 |
|
|
アラームをアクティブにする条件や、SONET/SDHフレーミングおよび連結プロパティなど、ルーターシャーシのプロパティを設定します。 |
|
|
サービスクラスパラメータを設定します。 |
|
|
コンテンツに基づいてパケットを選択するフィルターを設定します。 |
|
|
トラフィックサンプリングオプションを含む転送オプションを設定します。 |
|
|
設定グループを設定します。 |
|
|
カプセル化、インターフェイス、仮想チャネル識別子(VCI)、データリンク接続識別子(DLCI)などのインターフェイス情報を設定します。 |
|
|
ルーティングポリシーを設定することで、着信ルートと発信ルートのプロパティをフィルタリングして設定できます。 |
|
|
BGP、IS-IS、LDP、MPLS、OSPF、RIP、RSVPなどのルーティングプロトコルを設定します。 |
|
|
1つ以上のルーティングインスタンスを設定します。 |
|
|
ログに記録する静的ルート、自律システム番号、コンフェデレーションメンバー、グローバルトレース(デバッグ)操作など、プロトコルに依存しないルーティングオプションを設定します。 |
|
|
IPsec(IPセキュリティ)サービスを設定します。 |
|
|
SNMP コミュニティ文字列、インターフェイス、トラップ、および通知を設定します。 |
|
|
ホスト名、ドメイン名、ドメインネームシステム(DNS)サーバー、ユーザーのログインと権限、ホスト名とアドレス間のマッピング、ソフトウェアプロセスなど、システム全体のプロパティを設定します。 |
設定ステートメントの階層
Junos OS Evolvedの設定は、ステートメントの階層で構成されています。ステートメントには2種類あります。
-
コンテナステートメントは、他のステートメント(追加のコンテナステートメントやリーフステートメントを含む)を含むことができるブランチです。階層の最上位にあるコンテナステートメントは、階層ツリーのトランクと見なされます。
-
リーフステートメント(コンテナステートメントに含まれる)は、他のステートメントは含まれません。
コンテナステートメントとリーフステートメントは、設定階層を形成します。設定階層の最上位にある各ステートメントは、階層ツリーのトランクに存在します。これらのトップレベルのステートメントはコンテナーステートメントであり、ツリーブランチを形成する他のステートメントが含まれています。リーフステートメントは、階層ツリーのリーフです。階層ツリーのトランクから始まるステートメントの個々の階層は、ステートメントパスと呼ばれます。
次の図は階層ツリーを示しており、OSPFエリア内のインターフェイス上で hello-interval ステートメントの設定を担当するプロトコル設定階層の部分のステートメントパスを示しています。
protocolsステートメントは、設定ツリーのトランクにある最上位のステートメントです。ospf、area、およびinterfaceステートメントはすべて、上位ステートメントの従属コンテナステートメントです(階層ツリーのブランチです)。hello-intervalステートメントはツリー上のリーフであり、この場合はデータ値、つまりhello-intervalの長さ(秒単位)が含まれています。
以下の設定例は、 図 1 に示すようにステートメント階層を示しています。
[edit protocols ospf area area-number interface interface-name]
このコマンドは、以下のような設定を表示します。
protocols {
ospf {
area 0.0.0.0 {
interface et-0/0/0 {
hello-interval 5;
}
interface et-0/0/1 {
hello-interval 5;
}
}
}
}
CLI は、階層内の各レベルをインデントして、階層内の各ステートメントの相対的な位置を示します。さらに、一般に、各階層レベルの先頭に開き中括弧を使用し、最後に閉じ中括弧を使用して、各レベルを中括弧で開始します。階層レベルのステートメントが空の場合、中括弧は印刷されません。
各リーフステートメントはセミコロンで終わります。階層がリーフステートメントまで及ばない場合、階層の最後のステートメントはセミコロンで終わります。
設定階層には、階層の最下位に「oneliner」を含めることもできます。Onelinerは、構文の1レベルの中括弧を削除し、コンテナステートメント、その識別子、子またはリーフステートメント、およびその属性をすべて1行に表示します。
例えば、dynamic-profile dynamic-profile-name aggregate-clients;は、設定モードでshowコマンドを実行すると、dynamic-profileステートメント、その識別子dynamic-profile-name、およびリーフステートメントaggregate-clientsすべて1行に表示されるため、onelinerです。
[edit forwarding-options]
user@host# show
dhcp-relay {
dynamic-profile dynamic-profile-name aggregate-clients;
}
CLI設定モードの開始と終了
Junos OS Evolvedを設定するには、設定モードに入り、設定モードステートメントの階層を作成します。
設定モードに入るには、
configureコマンドを使用します。設定モードに入ると、以下の設定モードコマンドを使用できます。
user@host>
configureentering 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>
configureEntering 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 et-0/0/0] user@host#
exit configuration-modeexiting configuration mode user@host>[edit] user@host#
exitexiting configuration mode user@host>exitコマンドを使用してfconfigurationモードを終了しようとすると、コミットしていない変更が設定に含まれている場合は、次のメッセージとプロンプトが表示されます。[edit] user@host#
exitThe configuration has been changed but not committed Exit with uncommitted changes? [yes,no]yesExiting configuration mode user@host>プロンプトに応答せずにコミットされていない変更で終了するには、
exit configuration-modeコマンドを使用します。このコマンドは、スクリプトを使用してリモート設定を実行する場合に便利です。[edit] user@host#
exit configuration-modeThe configuration has been changed but not committed Exiting configuration mode user@host>
関連項目
相対設定モードコマンド
topまたはupコマンドの後に別の設定コマンド(edit、insert、delete、deactivate、annotate、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 階層と edit protocols 階層を確認します。
[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- インターフェイスを示しています。これらのインターフェイスは、省略形(例)の最初の2文字と ? 文字を使用して表示できます。
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 Evolved のドキュメントでは、 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 ステートメントがそれを含む階層で常に最初に表示されることです。