22. 設定差分からのコマンド生成
NetOpsCoding#4 発表資料 22
• 現在の設定データと元に戻したい設定データの差分から、設定を元に戻す
ためのコマンドを計算する
• 単純にdiff取れば良いわけではない
– 2つの設定データの構造を比較し、差分を埋め合わせるためのコマンド生成処理を
Pythonで頑張って実装(すべてのケースをカバーできている訳ではない)
...
set address "Untrust" "TEST_ADDR1" 1.2.3.4/32
set address "Untrust" "TEST_ADDR2" 192.168.1.0/24
...
set policy id 4 from "Trust" to "Trust"
"Any" "TEST_ADDR2" "FTP" nat src dip-id 4 permit
set policy id 4
exit
set policy id 2 from "Untrust" to "Trust"
"Any" "Any" "ANY" nat src permit
set policy id 2
exit
...
...
set address "Untrust" "TEST_ADDR1" 1.2.3.4/32
...
set policy id 2 from "Untrust" to "Trust"
"Any" "Any" "ANY" nat src permit
set policy id 2
exit
...
変更前の設定データ: 現在の設定データ:
set address "Untrust" "TEST_ADDR2" 192.168.1.0/24
set policy id 4 from "Trust" to "Trust" "Any" "TEST_ADDR2" "FTP" nat src dip-id 4 permit
set policy move 4 before 2
生成されたリカバリコマンド: