目次
NTPを使用した時刻同期の手順。
ntpdateコマンドがあるため、NTPサーバを指定した時刻同期を行うことができる。
ntpdate [NTPサーバ(IP or Name)]
ntpdate ntp.nict.jp 2014/03/30 02:04:58 +22943second
自動的な時刻同期を行うにはscheduleコマンドを使用する。
schedule at 1 */* *:00 * ntpdate ntp.nict.jp
NATディスクリプタテーブルの溢れ対策。
RTX1000 / 1100の使用方法によってはテーブル溢れが発生し、ルータが応答不能となる事象に対する対策方法。
NATを使用している環境に対するTCP SYN flooding攻撃が行われた際に、RTX1000/1100のNATディスクリプタテーブルが溢れ、CPU負荷の急上昇と、これに伴うルータの応答不能が発生する。
これはRTX1000/1100共にNATディスクリプタテーブルは4096レコードしかなく、値を増やす事もできない仕様に起因するが、仮にレコード数が多くてもそれを上回る飽和攻撃をされた場合には同じ事象が発生することとなる。
また、RTX1000/1100の仕様として、NATディスクリプタテーブルはIPフィルタの外側に位置しているため、IPフィルタにて特定の接続元を排除しても解消することができない。
参考:IPパケット・フィルタリング機能のインタフェースへの適用位置
NATディスクリプタテーブルの使用状況は以下のコマンドで確認することができる。
show nat descriptor address
コマンドの実行結果は以下の様になる。
# show nat descriptor address
参照NATディスクリプタ : 1, 適用インタフェース : PP[01](1)
Masqueradeテーブル
外側アドレス: 124.155.112.213 ポート範囲=60000-64095 8個使用中
プロトコル 内側アドレス 宛先 マスカレード TTL(秒)
TCP 192.168.1.210.80 98.158.100.114.58722 80 30
TCP 192.168.1.210.80 85.195.109.195.2428 80 30
TCP 192.168.1.210.80 98.158.100.114.49725 80 30
〜以下略
NATディスクリプタテーブルが蓄積して行くと、次第にCPU使用率が上昇する。
CPU使用率はルータのWebページで確認できるが、SNMPで監視する場合には以下の要領で値を取得することが出来る。
| SNMP v1 | .1.3.6.1.4.1.1182.2.1.6.0 |
CPU負荷が上がった段階で以下のコマンドを実行し、NATディスクリプタテーブルを消去する。
この処理によりCPU負荷が低下した場合には、NATディスクリプタテーブル溢れが原因であると特定することができる。
clear nat descriptor dynamic all
RTX1100では1ホスト(=1IPアドレス)が使用できるNATディスクリプタテーブルのレコード数を制限する機能が備わっている。
この機能を使用するには以下のコマンドを使用する。
descriptor masquerade session limit 1 1 [レコード数]
1ホスト300レコードまでに制限する場合には以下となる。
descriptor masquerade session limit 1 1 300
尚、この機能は使える機種・ファームバージョンの制限があるため、詳細は以下を参照すること。
RTX1000では対策1の機能が搭載されていないため、NATディスクリプタテーブルの保持期間を短くする方法で対処する。
初期値では900秒(15分)となっているため、この時間を以下のコマンドで短く設定する。
nat descriptor timer 1 600
この設定は特定のプロトコル単位でも設定することができる。
nat descriptor timer 1 protocol=tcp port=80 30
テーブル保持期間は負荷状況によって適正値は変化するため、CPU負荷を見ながら値を小さくして行き、適切な値を探すこととなる。