キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
58
閲覧回数
1
いいね!
0
コメント
JapanTAC_CSC
Level 7
Level 7

2024年04月26日 (初版)

TAC SR Collection
主な問題

Switch を ACI Fabric に配線して接続した上で、Application Policy Infrastructure Controller (APIC) GUI より Commission を実行しても、
その Switch の状態が Inactive のままで ACI Fabric に Join できない問題が報告されています。

その際に、Switch の policyelem のログ (/var/sysmgr/tmp_logs/dme_logs/svc_ifc_policyelem.log) を確認すると、
下記のログが出力されており、証明書が無効であるため、Fabric に Join するための SSL 通信ができないことが分かります。
さらに、ログの時刻は現在の時刻ではなく、2000 年 1 月 1 日になっています。

12827||2000-01-01T04:39:18.591950367+00:00||crypto||DBG4||co=ifm||Secondary Cert Check Failed: certificate is not yet valid||../dme/common/src/ifm/./PeerVerificationUtils.cc||441
12827||2000-01-01T04:39:18.591971780+00:00||crypto||ERROR||co=ifm||SSL Default Peer Validation failed already - REJECTING IFM SSL PEER CONNECTION||../dme/common/src/ifm/./PeerVerificationUtils.cc||482

また、Switch のシステム時刻 (show system uptime) を見ても、同じように、2000 年 1 月 1 日になっていることが分かります。

show system uptime
System start time: Sat Jan 1 05:34:59 2000
System uptime: 0 days, 11 hours, 57 minutes, 10 seconds
Kernel uptime: 0 days, 12 hours, 1 minutes, 46 seconds

一方 Switch が所有している証明書の有効期間の開始日は、2000 年 1 月 1 日 の時間より後なので、
現時刻を "2000 年 1 月 1 日" と認識している Switch システムは証明書がまだ有効期間になっていないと判断し、
証明書が無効であると判断します。証明書の有効期間は下記のコマンドで確認できます。
この例では、証明書の有効期間の開始日は 2022 年 8 月 16 日 となっています。

(none)# openssl asn1parse -in /securedata/ssl/server.crt
<省略>
101:d=3 hl=2 l= 13 prim: UTCTIME :220816115215Z
116:d=3 hl=2 l= 13 prim: UTCTIME :290514202542Z

証明書が無効であることから、その証明書を用いて SSL 接続ができず、
Fabric への Join が失敗してしまい、その Switch が Inactive のままとなります。

原因

今回のケースでは、Switch の RTC (Real Time Clock) バッテリーが故障していることが原因であると判明しています。
RTC バッテリーは Switch システムの内部クロックが正確な現在時間に同期するために電力を提供します。この RTC バッテリーが壊れていると、
Switch システムの内部クロックが現在の時刻ではなく、2000 年 1 月 1 日の時間になってしまいます。

RTC バッテリーに故障があるかどうかは、
"show diagnostic result module all detail" コマンドの結果の中の "rtc-test" のセクションからご確認頂けます。
"Error code" の項目が "DIAG TEST FAIL" になっていれば、RTC バッテリーが故障していることを示します。
その場合 "Last failure reason" の項目に具体的な障害内容が示されております。

14) rtc-test F

Error code ------------------> DIAG TEST FAIL
Total run count -------------> 142
Last test execution time ----> Fri Nov 17 16:21:48 2023
First test failure time -----> Sat Jan 1 05:42:48 2000
Last test failure time ------> Fri Nov 17 16:21:53 2023
Last test pass time ---------> n/a
Total failure count ---------> 142
Consecutive failure count ---> 142
Last failure reason ---------> The RTC battery voltage is low
Next Execution time ---------> Fri Nov 17 16:26:48 2023
解決策

Workaround として下記のコマンドで手動で時刻を設定することで、この事象から一時的に復旧することができます。
下記の例では、手動で時刻を "2023 年 10 月 25 日 4 時 38 分 0 秒" に設定しています。

(none)# date --set="25 OCT 2023 4:38:00"
(none)# hwclock -w

恒久的に対策する場合は、問題が発生した Switch の筐体をハードウェア交換してください。

 

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします