NEC IXシリーズにおけるログ管理の方法についてまとめます。デフォルト設定は、ログ出力が無効になっている事に注意して下さい。まずはログ出力を有効にした後に、logging bufferやsyslog ip hostを入力する事によって、ログの保存とsyslogサーバへの転送が行われるようになります。
コマンド一覧
このシナリオで重要なコマンド一覧は以下の通りです。
Router(config)# logging subsystem <subsystem> <severity> Router(config)# logging subsystem all <severity> Router(config)# logging buffered <size> [ cyclic | one-time ] Router(config)# syslog ip enable Router(config)# syslog ip host <host> Router(config)# syslog ip facility <facility>
仕様説明
logging
IXシリーズはデフォルトでloggingは無効になっています。logginを有効にしたいならば、以下のコマンドでsubsystem毎にseverityを定義します。なお、subsystemにはtelnet, ssh, ospf, vrrp, natなどが存在します。例えば、telnetを有効にすればルータへのログイン・ログアウトを記録する事ができます。
Router(config)# logging subsystem <subsystem> <severity>
若干乱暴ですが、以下のコマンドで全subsystemに対するログを有効にする事ができます。ただし、全subsystemのログを有効にするのは、ログの量が多すぎるので商用環境での利用は控えましょう。
Router(config)# logging subsystem all <severity>
以下のコマンドで出力されたログをメモリ内に保存する事ができます。保存するログの量やローテートするかを指定する事もできます。なお、メモリに保存されたログですので再起動と同時に消えてしまう事に注意して下さい。もし、再起動直前のログ調査が必要ならば後述のsyslogサーバへの転送設定を行って下さい。
Router(config)# logging buffered <size> [ cyclic | one-time ]
syslog
以下のコマンドでsyslogサーバへのログ転送を有効にします。
Router(config)# syslog ip enable
syslogサーバのIPアドレスおよびfacilityを指定します。
Router(config)# syslog ip host <host> Router(config)# syslog ip facility <facility>
表示に関する設定
以下のコマンドで、メモリ内に展開されるログについて、時刻の表示形式を変更します。なお、変更されるのはメモリ内のログのみで、syslogには適用されません。
Router(config)# logging timestamp [{ datetime | timeofday | uptime }]
syslogの送信元IPアドレスを明示指定する事ができます。明示的な指定がないと障害時や構成変更時に送信元IPアドレスが変わってしまいログが見づらくなってしまいます。送信元をLoopback Addressのような不変の値を使用するようにすると、ログが管理しやすくなります。
Router(config)# syslog ip source
動作確認環境
以下の構成で動作確認を行います。
::100 ::254 +---------+ .100 .254 +--------+ | Host100 +---------------+ IX2215 + +---------+ G1.0 +--------+ 192.168.0.0/24 2001::/64
[IX2215] interface GigaEthernet0.0 ip address 192.168.0.254/24 ipv6 address 2001::254/64 no shutdown ! interface Loopback0.0 ip address 10.1.1.1/32
初期設定の全文は以下を参照下さい。
syslog / loggingの設定
logging 有効化
以下のコマンドを入力し、telnetに関するログ出力を有効にします。
logging subsystem tels info
local buffer
以下のコマンドでログをメモリ内に保存する事ができます。メモリ内の保存ですので再起動と同時に消えてしまいます。もし、障害直前のログが知りたいならば、後述のsyslogサーバへの転送設定が必要です。
logging buffered
ルータから一度ログアウトした後にログインします。show loggingコマンドでログを確認する事ができます。
R254(config)# show logging Buffer logging enabled, 131072 bytes, type cyclic 6 messages (1-6), 399 bytes logged, 0 messages dropped Log Buffer (1-6): TELS.003: Disconnected client 192.168.0.100, server 192.168.0.254 TELS.001: Connected client 192.168.0.100, server 192.168.0.254 TELS.003: Disconnected client 192.168.0.100, server 192.168.0.254 TELS.001: Connected client 192.168.0.100, server 192.168.0.254 TELS.003: Disconnected client 192.168.0.100, server 192.168.0.254 TELS.001: Connected client 192.168.0.100, server 192.168.0.254 R254(config)#
syslogサーバへの転送
syslogサーバへの転送設定は以下3行です。syslogの転送を有効にし、syslogサーバのIPアドレスとfacilityを指定します。
syslog ip enable syslog ip host 192.168.0.100 syslog facility local6
何らかの方法でsyslogサーバを構築します。3cdaemonを使用しても良いですし、VMware等でLinuxサーバを構築しても良いでしょう。syslogサーバにログが転送された事を確認します。
# cat /var/log/nec_ix.log Jan 26 20:57:39 192.168.0.254 TELS[001]: Connected client 192.168.0.100, server 192.168.0.254 Jan 26 20:57:41 192.168.0.254 TELS[003]: Disconnected client 192.168.0.100, server 192.168.0.254