ICMP Echoを利用するキープアライブ機能で、ICMP Echoパケットのサイズを指定できるようにした。
○ネットワーク監視機能の設定
NUM ... | このコマンドの識別番号(1..100) | |||||||||||||||||
KIND ... | 監視方式 - icmp-echo ... ICMP Echoを使用する |
|||||||||||||||||
INTERVAL ... | キープアライブの送信間隔秒数(1..65535) | |||||||||||||||||
COUNT ... | 到達性が無いと判断するまでに送信する回数(3..100) | |||||||||||||||||
IP_ADDRESS ... | 送信先のIPアドレス | |||||||||||||||||
OPTION=VALUE列 |
|
○LAN経由のキープアライブを使用するか否かの設定
INTERFACE ... | バックアップ対象のLANインタフェース名 | |
DEST_IP ... | キープアライブ確認先のIPアドレス | OPTION=VALUE列 |
|
○PP経由のキープアライブを使用するか否かの設定
lcp-echo ... | LCP Echo Request/Replyを用いる | |||||||||||||||
icmp-echo ... | ICMP Echo/Replyを用いる | |||||||||||||||
DEST_IP ... | キープアライブ確認先のIPアドレス | |||||||||||||||
OPTION=VALUE列 |
|
○IKEキープアライブ機能の設定
GATEWAY_ID ... | セキュリティ・ゲートウェイの識別子 |
SWITCH | on ... キープアライブを行う off ... キープアライブを行わない auto ... 対向のルータからキープアライブを受信した時に限って送信する |
TYPE ... | キープアライブの方法 heartbeat ... IKE heartbeat icmp-echo ... ICMP Echo/Reply |
IP_ADDRESS ... | ICMP Echoを送信する宛先のIPアドレス(IPv4/IPv6) |
LENGTH .... | ICMP Echoパケットの長さ(64-1500) |
INTERVAL ... | キープアライブパケットの送信間隔秒数(1..600) |
COUNT ... | キープアライブパケットが届かない時に障害とみなすまでの試行回数(1..50) |
PPバックアップ機能で、バックアップ先としてPPインタフェースを指定して常時接続の回線を使用する場合に、バックアップから復帰した直後にIPsecのSAを再構築できるようにした。従来はIKEキープアライブでトンネルインタフェースの切断を検知してからSAを再構築していたため、復帰してからIPsecの通信が可能になるまでに時間がかかっていた。今回の機能追加により、復帰してからIPsecの通信が可能になるまでの時間を10秒程度に短縮できる。この機能を利用するためには、pp backupコマンドで、ipsec-fast-recoveryオプションを設定する必要がある。
○PPバックアップ機能の設定
- none ..... | バックアップ動作をしない |
- PEER_NUM ..... | バックアップ先としてPPを使用する場合の相手先情報番号 |
- ACTION ..... | バックアップから復帰した直後にSAの再構築を実施するか否か - on ... 再構築する - off ... 再構築しない |
- INTERFACE ... | バックアップ先として使用するLANインタフェース |
- IP_ADDRESS ... | ゲートウェイのIPアドレス |
- TUNNEL_NUM ... | トンネルインタフェース番号 |
grepおよびlessコマンドを実装した。「show」で始まるコマンドが表示する内容から、指定した検索パターンに 一致する内容だけを抜き出して表示することができる。 あるいは「show」で始まるコマンドが表示する内容をページ単位で表示しながら、後ろに戻ったり、指定した検索パターンに一致する内容を検索したりすることができる。「show」で始まるすべてのコマンドで利用できる。
○showコマンドの表示内容から検索パターンに一致する内容だけを抜き出す
-i ... | PATTERN中の英大文字/小文字を区別せず検索する |
-v ... | PATTERNに一致しなかった行を表示する |
-w ... | PATTERNが単語に一致する時だけ表示する |
PATTERN ... | 検索パターン |
文字 | 意味 | 使用例 | 一致する文字列の例 |
. | 任意の1文字に一致する | a.b | aab, aXb, a-b |
? | 直前の文字が0回または1回出現するパターンに一致する | ab?c | ac, abc |
* | 直前の文字が0回以上繰り返すパターンに一致する | ab*c | ac, abc, abbc, abbbbbbbbc |
+ | 直前の文字が1回以上繰り返すパターンに一致する | ab+c | abc, abbc, abbbbbbbbc |
| | 前後の文字のいずれかに一致する | ab|cd | abd, acd |
[ ] | [ ]内の文字のいずれかに一致する | a[bc]d | abd, acd |
[^ ] | [ ]内の文字以外のものに一致する | a[^bc]d | aad, axd |
^ | 行の先頭に一致する | ^abc | abcで始まる行 |
$ | 行の末尾に一致する | abc$ | abcで終る行 |
( ) | 文字列などをグループとして扱う | (ab|cd) | ab, cd |
\ | 続く特殊文字の効果を打ち消す | a\.c | a.c |
例: show config | grep ip | grep lan show config | grep ip | less
○showコマンドの表示内容を見やすくする
コマンド | 内容(数値プレフィクスをNとする) |
q | lessを終了する。 |
スペース | N画面先に進む。 |
b | N画面後ろに戻る。 |
j, ENTER | N行先に進む。 |
k | N行後ろに戻る。 |
g | N行目にジャンプする。 |
G | N行目にジャンプする。ただし、数値プレフィクスを省略した時には、最終行にジャンプする。 |
/ | コマンド文字後に入力された検索パターンを前方に検索する。検索パターンはgrepコマンドと同じものである。 |
? | コマンド文字後に入力された検索パターンを後方に検索する。検索パターンはgrepコマンドと同じものである。 |
n | 最後に入力された/、あるいは?と同じ検索パターンで同じ方向に 検索する。 |
N | 最後に入力された/、あるいは?と同じ検索パターンで逆方向に検索する。 |
Copyrightの年号を変更した。
PPPのLCP Echo Replyを受信した時に、データ部の確認を行わないように変更した。
RTX1100で、nat descriptor sipコマンドの初期値をoffからonに変更し、初期値が動作に反映されるようにした。
RTX1100で、以下のコマンドでPPTP接続の回線負荷を表示しないようにした。
show status pp show status pptp修正前は正しくない負荷が表示されていた。
PIAFSで、データ受信中に無限ループに入ってしまいルータがハングアップ、あるいはリブートしてしまう可能性を排除した。
IPsecで、対向のセキュリティゲートウェイへの経路を静的にフィルタ型経路で指定していると、IPsecで暗号化するパケットをファストパスで処理する場合にフィルタ型経路を正しく評価できず、必ず一番最初に記述したゲートウェイに送信してしまうバグを修正した。
save や restart などの動作系のコマンドを記述した設定ファイルを使用して起動させた場合、ハングアップやリブートなどの不具合が発生するバグを修正した。
ファストパスでSMTPプロトコルの動的フィルタを使用したときに、SMTPコネクションが正常に終了しても、動的フィルタの管理するコネクションとして長時間生存し続けるバグを修正した。
SMTPコネクションの生成と消滅が数多く発生する状況下では、システムの処理性能が低下して、内部リソースの枯渇によりリブートすることがあった。
IPsecで、対向のセキュリティゲートウェイへの経路がフィルタ型経路になっている時に、ノーマルパスで扱うパケットが正しいゲートウェイを選択できず、フィルタで示されるのとは異なるゲートウェイに転送されることがあるバグを修正した。
ネットワークバックアップ機能で、トンネルをバックアップする時に、トンネルの対向のゲートウェイへの経路をフィルタ型経路にしている時に、キープアライブパケットが正しいゲートウェイに向かわず、フィルタの選択とは異なるゲートウェイに転送されることがあるバグを修正した。
ip routeコマンドで複数のゲートウェイを設定している静的経路で、先頭のゲートウェイの状態がhideになっているが、後続のゲートウェイが有効でパケットを転送できる状態であるという設定になっている時に、起動直後に、その経路が動的経路プロトコルで配布されないバグを修正した。経路の設定を変更すると、経路が配布されるようになる。
nat descriptor masquerade staticコマンドで指定した内側IPアドレスの機器から外部の機器に対してtracerouteが実行できないバグを修正した。ICMPパケットのデータ部分に設定されているIPヘッダ部分がIPマスカレードで変換されていなかった。
WWWブラウザ設定支援機能のIPsecを設定するページで、テーブルの書式が他のページと異なっていたのを修正した。
IPv6のIPsecで、ipsec ike local addressコマンドを設定していないときに、AHのトンネルモードで通信できないバグを修正した。
show logコマンド、あるいはless logコマンドで、コマンドを実行中(※)に何もキー入力を行わない状態にし、ログインタイマがタイムアウトしログアウトするということを3回繰り返すと、その後、show log/less logコマンドを実行しても何もログが表示されないようになるバグを修正した。
(※)show logコマンドの場合は、画面の最終行に「---つづく---」あるいは「---more---」が表示されている状態
less logコマンドの場合は最終行に「:」が表示されている状態
IPマスカレードで、外部のホストからIPマスカレードの外側IPアドレスに対してpingを打つと、ICMPに対する静的IPマスカレードが設定されていない限り、ルータ自身が返事を返し、ICMPパケットは内側へは転送しない仕様だが、特定の場合に、ICMPパケットを内側へ転送してしまうバグを修正した。
SIP-NAT機能において、外から内方向のREGISTERリクエストに対するレスポンスについて、Contactヘッダ内のIPアドレスが変換対象のIPアドレスと一致する場合に変換するように変更した。
状態メール通知機能で送信されたメールのヘッダに行末がCRのみの行があり、ウィルスチェック付きメールサーバでエラーとなるバグを修正した。
SIP-NAT機能を用いた場合に、メモリ使用量が増加してゆくことで動作が不安定となるバグを修正した。
稀にTCPの静的IPマスカレードが動作しなくなるバグを修正した。なお、動作しなくなった静的IPマスカレードの設定を再び投入すると正常な状態に復帰する。
ISDNのPP Anonymousでの名前による認証で、pp auth usernameコマンドにclid句を指定して発番号認証を利用するようにしている場合に、ユーザ名は正しいが、発番号が正しくないという着信を受けた時には、通常ならば発番号認証を最初に行うために、ISDN回線自体が接続されることがない。しかし、PP Anonymous以外のPPにpp auth uesrnameコマンドが設定されていると、発番号認証が適切に行われず、ISDN回線が接続され、PPPのPAP/CHAPの手順まで処理が進んでしまうバグを修正した。
PPPのPAP/CHAPの手順まで処理が進んでしまっても、そこで改めて発番号認証がチェックされるので、通信できるようになることはない。
nat descriptor masquerade staticコマンドを実行するたびにメモリリークが発生するバグを修正した。設定を保存し、再起動すればメモリリークは起きないが、動作中にコマンドを実行したり、TFTPで設定を送り込んだりした時に発生する。
show configコマンドでファイルを指定して表示する場合に、管理パスワードを32文字設定したファイルがパスワード認証でエラーになり、表示できないバグを修正した。
また、ログインパスワードが32文字設定されているファイルでは、パスワード認証で先頭から31文字まで入力すれば認証を通ってしまうバグを修正した。
OSPFのunnumberedリンクで、隣接ルータに関するROUTER LSA中のunnumberedリンクのリンクデータの上位8ビットが0で無かった時に、その隣接ルータを宛先とするような経路を経路テーブルに追加できないバグを修正した。
隣接ルータがヤマハRTシリーズである時には、リンクデータの上位8ビットは必ず0になるため、この現象は発生しない。他メーカのルータとの相互接続の場合にのみ発生する可能性がある。
pingのパラメータ指定を誤って入力するとリブートすることがあるバグを修正した。
プロトコルのニーモニックにdomainを指定して動的フィルタを使用したときに、TCPのDNSメッセージがフィルタで破棄されるバグを修正した。DNSサーバ間のゾーン転送が行えない現象が発生していた。
フレームリレー回線で、PPインタフェースのIPアドレスを外側アドレスとするIPマスカレードを設定している時に、フレームリレー側からそのIPアドレスに対してpingを実行しても返事が返らないバグを修正した。
SIP-NAT機能において、ボディ部の最後にCRLFが無いSIPパケットを壊してしまうバグを修正した。
動的フィルタでFTPのコネクションを管理するとき、FTPの制御コネクションで通常のコマンドとは異なるデータを送受信すると、メモリを過剰に消費し、最悪のケースでは、ルータがリブートするバグを修正した。
ルータ自身宛のICMPv6パケットを受信した時に、まれにルータ内部のタイマの一部が停止してしまい、以下のような現象になるバグを修正した。
ipv6でtelnetを実行、あるいはipv6でtelnetアクセスを受けるとリブートするバグを修正した。Rev_8_02_28以降のファームで発生する。
SNMPホストに対して、LAN1のリンク速度を実際に設定されている速度に関わらず常に100Mで報告してしまうバグを修正した。
isdn remote addressコマンドで、callまたはarrive以外の文字列をキーワードに指定したときに、入力エラーにならず、callキーワードが指定されたものとして動作するバグを修正した。
no ipv6 I/F dad retry countコマンドで設定をデフォルト値に変更しても、変更なしと見なしてしまうバグを修正した。表面的な動作としては、上記コマンド実行後、コンソールからログアウトをしたり、restartコマンドを実行しても保存するか否かを聞かれないため、saveコマンドを実行しないまま再起動しても気づかない場合があった。
名前によるルーティング機能によりPP anonymousから発信する場合に、以下の条件が重なると、名前によるルーティングが正しく動作しなくなり、本来向けられるべき相手先とは違うところへパケットが転送されたり、名前によるルーティングで発呼できなくなったりするバグを修正した。一度現象が発生すると、再起動するまで回復できなかった。
SNMPで、BGPにより設定された経路に対するMIB変数ip.ipRouteTable.ipRouteEntry.ipRouteProtoが、14(BGP)ではなく、2(Local)になっていたバグを修正した。
SNMPで、ip.ipAddrTable.ipAddrEntry以下のMIB変数が、IPアドレスが付与されているインタフェースのリンク状態によって、値を返せないことがあるバグを修正した。以下の状況で値が返せず、エラーを返していた。
インタフェースの種類 | アクセス方法 | 値を返せないリンク状態 |
LANインタフェース | GetRequest | リンクアップしていると値が返せない |
GetNextRequest | リンクダウンしていると値が返せない | |
PPインタフェース | GetRequest GetNextRequest |
リンクダウンしていると値が返せない |
SNMPで、ip.ipAddrTable.ipAddrEntryとして、トンネルインタフェースに付与したIPアドレスの情報を返せないバグを修正した。
PPTPやTelnet等のTCPアプリケーションがルータに接続したときに、ルータの動作が不安定になったり、リブートすることがあるのを修正した。多くのTCP接続を同時に受けたときに起こりやすい。
帯域制御で、クラスに割り当てる帯域をパーセンテージ(%)で設定すると設定した帯域を保持できない場合があるバグを修正した。
NATで、下記の条件が揃うときに、NATの外側アドレスを終点アドレスとするパケットを受信すると、その終点アドレスを不特定の不正なIPアドレスに書き換えた上でルーティングを続行するバグを修正した。変換後のIPアドレスは不特定であり、事前に予想することはできない。
RTX1500で、高負荷状態が続くとWatchdog timeoutによりリブートすることがあるバグを修正した。
RTX1500で、nat descriptor sipコマンドのヘルプ文を修正した。
RTX1500で、管理パスワードを設定した状態でブラウザ設定ページを開くと、メモリの不正アクセスをしてリブートする可能性があったバグを修正した。
RTX1500で、専用線/フレームリレー接続がルーターの起動後に自動確立しない可能性を排除した。
RTX1500で、リンクダウン状態のLANインタフェースのMIB変数yrIfLanMediaTypeの値が100base-fdxとなるバグを修正した。修正後は10base-hdxとなる。
RTX1500で、SNMP経由でフラッシュROMのサイズを取得できないバグを修正した。
RTX1100で、MLDプロキシによるマルチキャストパケットの転送で、一部の出力インタフェースに対してファストパスで転送し、残りの出力インタフェースに対してノーマルパスで転送するときに、リブートする可能性を排除した。実際にリブートが発生する事象は見つかっていない。
RTX1100で、ipv6 multicast routing processコマンドの引数としてfastを設定している時に、設定が有効にならず、IPv6マルチキャストのファストパスが動作しないことがあるのを修正した。具体的には次の手順で発生する。
RTX1100で、PPTP接続で"暗号化なしでは接続拒否"(ppp ccp no-encryption reject)の設定の時に、IPCPなど、CCP以外のNetwork Control Protocolsのネゴシエーションが失敗しても接続を拒否しないようにした。これにより、ppp ccp no-encryption reject の設定のときにMac OS X 10.3でPPTP接続ができない問題が解消される。
RTX1100で、RFC2637で規定されていないPPTPメッセージを受信したときに、システムが不安定になることがあるバグを修正した。
RTX1100で、PPTPのコネクションを終了したときに、システムが不安定になることがあるバグを修正した。
RTX1100で、 PPTPで現在接続中の同じ相手から再びOutgoing-Call-RequestやIncoming-Call-Requestを受信したときに、強制的に接続を終了するようにした。修正前は正しく処理が行われずに、show status ppで接続中の表示のままになっていた。
RTX1100で、専用線/フレームリレー接続がルーターの起動後に自動確立しないバグを修正した。
RTX1100で、起動時にLAN3のリンクアップに時間がかかり、ColdStart/WarmStartのSNMPトラップがLAN3インタフェースから送出されないバグを修正した。
RTX1100で、PPTPメッセージの後ろにデータが含まれるIPパケットをPPTPパススルー機能で処理したときに、リブートすることがあるバグを修正した。複数のPPTPメッセージが1つのIPパケットに含まれている場合には、最初のPPTPメッセージのみが処理される。
RTX1100で、LAN2の速度を10-fdx固定設定にしている場合でもリンクアップ時のログで100BASE-TX Full Duplex と出るバグを修正した。
RTX1100で、IPv6マルチキャスト転送を行っているインタフェースにIPv6フィルタを設定するとリブートするバグを修正した。ただし、ノーマルパスで転送を行っているインタフェースが対象になる。
RTX1100で、LAN2とLAN3で3071Byte以上のロングサイズエラーパケットを受信するとLAN機能が停止してしまうバグを修正した。