NCMの比較からコンフィグの一部を除外

インターフェース設定、ルーター設定、ACL、セキュリティコンフィグ、QoSポリシー、VLANコンフィグ、インフラおよびアプリケーション設定といったネットワーク内の装置のふるまいが定義された重要情報がコンフィグファイルには保存されています。これを用いて、各ネットワークパラメーターを管理しネットワークをカスタマイズします。

Site24x7のNetwork Configuration Manager (NCM)では、しきい値設定に基づいて、コンフィグファイルに変更があった際にアラートします。
さらに、startupとrunningコンフィグのバージョンに競合があった際にそれを表示できます。

ただし、一部の変更は場合によっては無視できます。たとえば、コメント行や暗号化されたパスワード文字列に対して変更が発生した場合などでコンフィグごとに変更される場合が該当します。

コンフィグファイルに変更がない場合でもアラートが発生してしまいます。

これを把握するために、コンフィグ比較や各コンフィグのバージョンを比較する必要があります。

runningコンフィグに変更があったとします。runningコンフィグの変更検知をしきい値プロファイルに設定することで、装置ステータスに変更があった際にアラートを引き起こします。図1ではそのような差分を描画し、しきい値設定に基づいて装置のステータスをダウン、トラブル、クリティカルでアラートしています。

コンフィグ比較
図1. startupとrunningバージョン間のコンフィグ差分

さらに、監視ステータス画面に競合を表示することができます。

比較から差分を除外するには、Site24x7 NCMで正規表現を使用してください。


目次

正規表現とは

正規表現の配列パターンに基づいて、マッチする文字列をチェックします。

下記の一般的な正規表現をも用いて設定可能です。

表現 説明
^ 文字列の最初 ^abc
$ 文字列の最後 abc$
* 前の要素が0回以上発生 a*
+ 前の要素が1回以上発生 a+
? 前の要素が0または1回発生 a?
.(ピリオド) 改行(\n)を除くすべての文字列 .a
\s 空白文字 hello\sworld
\d すべてのシングルバイト文字 a\d
\w すべての文字列 a\w
\ 特殊文字のエスケープ a\.
[ ] カッコ内に存在するすべての文字列

[a-z] - 小文字の要素

[A-Z] - 大文字の要素

{ n } 前の要素がn回発生

a{3}

{n , x} 前の要素がnとxの間の回数発生

a{2,4}

[ ^ ] カッコ内に存在するシングルバイト文字にマッチしない

[^a]

正規表現の使用例は次のとおりです。

正規表現 説明
^\s*!.*

^ - 行の最初

\s* - スペース、0以上の数字

! - 前回のチェックの後に ! が含まれている

.* - すべての文字列、0以上の数字

! Last configuration change at 09:29:02 UTC Thu Nov 16 2023
^\s*Current\sconfiguration\s:\s\d*\s*bytes\s*

^ - 行の最初

\s* - スペース、0以上の数字

Current - 文字列「Current」にマッチ

\s - シングルスペース

configuration - 文字列「configuration」にマッチ

\s - シングルスペース

: - 文字「:」にマッチ

\s - シングルスペース

\d* - 0から9のいずれか、0以上の数字

\s* - スペース、0以上の数字

bytes - 文字列「bytes」にマッチ

\s* - スペース、0以上の数字

Current configuration : 3215 bytes
^\s*speed.*    

^ - 行の最初

\s* - スペース、0以上の数字

speed - 文字列「speed」にマッチ

.* - すべての文字列、0以上の数字

speed 100

その他の一般的な正規表現

正規表現 除外行
^\s*#.* #で開始
^\s*set\spassword.*$ set passwordで開始
^\s*set\spasswd\d\sENC.*$ followed by ENCの後に1桁の数字、その後に set passwd が続く
^\s*Cryptochecksum:.*     CryptoCheckSumで開始
^\s*usrpw\s.*     usrpwで開始
.*Configuration\sdump\staken\s.*   Configuration dump taken を含む
^\s*boot\ssystem\sflash\sflash:.*    boot system flash:で開始
^\s*Current configuration\s:\s\d*\s*bytes\s*     Current Configuration:で開始
^\s*Uncompressed configuration.*     Uncompressedファイルのコマンドで開始
^\s*!\s*.*Last\s*configuration.*     Last Configurationヘッダーに!に続いて開始
^\s*ntp\s*clock-period.*     ntp clock-period    で開始
^Building\sconfiguration.*     Building configuration    を含む
^\s*system-uptime.*$ system-uptimeで開始
^\s*shared-secret.*$ shared-secretで開始
^\s*authentication\ssha1.*$ authentication sha1で開始
^\s*encryption\saes.*$ encryption aesで開始
^\s*checksum.*$ checksumで開始
^\s*[a-z\-\s]{0,20}password.*$ 0から20要素の後に文字列 password が含まれる
^\s*time.*$ timeで開始
^\s*date.*$ dateで開始
^\s*authentication\smd5.*$ authentication md5で開始
^\s*encryption\sdes.*$ encryption desで開始
^\s*radius\s\w{0,10}\sserver\d\ssecret.*$ server および secret の後に radiusが続いて開始
^\s*[a-z\-\s]{0,5}pass.*$ 0から5要素の後に文字列 pass を含む

Site24x7正規表現テスターとデバッグツールを使用して、正規表現パターンを検証できます。

コンフィグ比較から特定の文字列を除外する条件の設定方法

  1. Site24x7にログインします。
  2. [ネットワーク]→[NCM]→[装置テンプレート]に移動します。
  3. 除外基準を設定したい装置テンプレートを選択します。
    装置テンプレート
    図2. 装置テンプレート画面
  4. [除外条件]をクリックします。デフォルト設定およびカスタムで追加した条件が表示されます。除外条件ポップアップを削除して、装置テンプレート画面に戻ります。
  5. カスタムで条件を設定するには、画面右上の[装置テンプレートの編集]をクリックします。
  6. その後[除外条件]をクリックします。
  7. 説明列横の[✕]をクリックして、条件の削除を行えます。

条件の新規追加方法

  1. 装置テンプレートの編集画面で、[除外条件]をクリックします。
  2. [+]アイコンをクリックして、新しい行を作成し情報を入力します。
  3. 名前に条件の名前を入力します。
  4. 正規表現に正規表現を入力します。例えば、図1にある speedCurrent configuration の行を除外したい場合、図3のパターンを使用してください。
    装置テンプレート
    図3. 装置テンプレート画面
  5. 説明を入力します。
  6. [保存]をクリックします。
    装置テンプレート
    図4. 除外条件追加後のコンフィグ比較

関連ガイド

トラブルシュート