はじめに
NSOでデバイスの state や sync 状態の一つに "unknown" がありますが、この状態になる条件について説明します。
1. デバイスを作成した直後
NSOでデバイスを作成し、まだ対象の機器に接続していない状況では以下のように state も sync-check の結果も unknown となります。
admin@ncs# show devices device ios0 state
state oper-state unknown
admin@ncs# devices device ios0 check-sync
result unknown
unknown はデバイス作成後の initial state で、アクション check-sync 等で機器に接続することで別の値に更新されます。
admin@ncs# show devices device ios0 state
state oper-state enabled
state transaction-mode ned
sync status についても、sync-from を実施することでトランザクションID が更新され in-sync に変わります。
admin@ncs# devices device forti0 check-sync
result in-sync
なお、一度も sync-from を実施していない状況で、NSO からコンフィグを設定し commit no-networking でCDBにのみ変更を適用できますが、この場合、デバイスは unknown の状態のままになります。
2. commit フラグにより state の情報が clear になった状態
commit フラグの一つに "no-out-of-sync-check"がありますが、このオプションを付けると、デバイスが out-of-sync の状態でも commit を許可します。commit 実施後、以前のトランザクションID はクリアされるため、それに伴い state も unknown に更新されます。
admin@ncs(config)# commit no-out-of-sync-check
Commit complete.
......
...........
admin@ncs# devices device ios0 check-sync
result unknown