http://www.rtpro.yamaha.co.jp/RT/docs/relnote/Rev.08.02/relnote_08_02_50.html
Revision : 08.02.50
Release : Aug. 2009, ヤマハ株式会社

Rev.8.02.50リリースノート


RT250i Rev.8.02.48からの変更点


■機能追加

  1. 他のPP経由のホスト経路が既に存在しているIPアドレスをPP接続時に相手側IPアドレスとして通知されたときに、そのIPアドレスを受け入れることができるようにした。
    これまでは、そのようなIPアドレスを通知された場合には、PPP/IPCPネゴシエーションで拒否していた。

    ○ホスト経路が存在する相手側IPアドレスを受け入れるか否かの設定

    [書式]
    ppp ipcp remote address check SW
    no ppp ipcp remote address check [SW]
    [設定値]
    SW
    on ... 通知された相手のPP側IPアドレスを拒否する
    off ... 通知された相手のPP側IPアドレスを受け入れる
    [説明]
    他のPP経由のホスト経路が既に存在しているIPアドレスをPP接続時に相手側IPアドレスとして通知されたときに、そのIPアドレスを受け入れるか否かを設定する。
    [初期値]
    on
  2. DNSサーバーへアクセスできるホストのIPアドレスを設定できるようにした。

    外部からのDNS問い合わせに対してはサービスを提供しないように設定することにより、外部へのDDoS攻撃の踏み台として使われることを防止できる。

    ○DNSサーバーへアクセスできるホストのIPアドレス設定

    [書式]
    dns host HOST [HOST [...]]
    no dns host
    [設定値]
    HOST
    any ... すべてのホストからのアクセスを許可する
    lan ... すべてのLANポート側ネットワーク内ならば許可する
    lanN ... ひとつの任意のLANポート側ネットワーク内ならば許可する(Nはインタフェース番号)
    none ... すべてのホストからのアクセスを禁止する
    DNSサーバーへアクセスを許可するホストのIPアドレス
    DNSサーバーへアクセスを許可するホストのIPアドレスの範囲(ip_address-ip_address)
    [説明]
    DNSサーバーへのアクセスを許可するホストを設定する。
    [ノート]
    このコマンドでLANインタフェースを指定した場合には、ネットワークアドレスとlimited broadcast addressを除くIPアドレスからのアクセスを許可する。指定したLAN インタフェースにプライマリアドレスもセカンダリアドレスも設定していなければ、アクセスを許可しない。
    [初期値]
    any
  3. RAプロキシでDADをトリガにNSを送信する機能を追加した。

    IPv6 RAプロキシ機能を利用する際、ルーターの機器交換が発生すると、上流の機器で下流の機器のグローバルアドレスに対する近隣キャッシュが更新されず、それによって通信できなくなる現象が発生することがある。
    それを解決するために、上流の機器に対して下流の機器のグローバルアドレスを送信元とした近隣要請(NS)を送信することによって、上流の機器が近隣キャッシュを更新するように促す、という機能を追加した。このとき、NSを送信するタイミングとしては、下流の機器からアドレス重複チェックを受けたときがトリガとなる。
    また、上流の機器に近隣要請(NS)を送信した場合、上流の機器から近隣広告(NA)が返されることになるが、このNAの宛先は、NSの送信元、つまり下流の機器となる可能性があり、下流の機器としては送信していないNSに対するNAを受け取ることになるので、このNAをプロキシしないように変更できる設定も追加した。

    ○アドレス重複チェックをトリガに近隣要請を行うか否かの設定

    [書式]
    ipv6 nd ns-trigger-dad on [option=value]
    ipv6 nd ns-trigger-dad off
    no ipv6 nd ns-trigger-dad [...]
    [設定値]
    on... 近隣要請を行う
    off... 近隣要請を行わない
    OPTION=VALUE列
    na-proxy
    all ... 近隣要請を行った後で、アドレス重複チェックの送信元への近隣広告はすべてプロキシする
    discard-one-time ... 近隣要請を行った後で、アドレス重複チェックの送信元への近隣広告を一回のみ破棄し、その後はプロキシする
    [説明]
    RAプロキシにおいて、下流よりアドレス重複チェックの近隣要請を受信した際に、そのグローバルアドレスを送信元とした近隣要請を上流に送信するか否かを設定する。
    [初期値]
    off
    na-proxy=all
  4. IPv6で、RAによりインタフェースに自動的に設定されるIPv6アドレスの数を最大16に制限するようにした。

    また、最大数を変更することができるコマンドを新設した。

    ○自動的に設定されるIPv6アドレスの最大数

    [書式]
    ipv6 max auto address MAX
    no ipv6 max auto address [MAX]
    [設定値]
    MAX ... 自動的に設定されるIPv6アドレスの1インタフェースあたりの最大数 (1〜256)
    [説明]
    RAによりインタフェースに自動的に設定されるIPv6アドレスの1インタフェースあたりの最大数を設定する。
    [初期値]
    16

■仕様変更

  1. RAの受信によりインタフェースに付与される、IPv6アドレスの寿命について仕様を変更した。

    正の寿命のIPv6プレフィックスを含むRAの受信により、インタフェースにIPv6アドレスが付与されるとき、そのIPv6アドレスの寿命は、従来受信したRAのプレフィックスの寿命に関係なく無限としていたが、これをRAのプレフィックスの寿命が反映されるように変更した。

  2. OSPFでタイプ5(AS External) LSAのLink State IDの決定方法を、RFC2328 Appendix Eに記載されているアルゴリズムに変更した。

    従来はネットワークアドレスのネットワーク部の下位1ビットが1であるときはホスト部はすべて0、ネットワーク部の下位1ビットが0であるときはホスト部はすべて1としていた。また、この決め方の場合でもホスト経路とバッティングすることがあるが、その時には後から追加しようとした経路が広告されなかった。

  3. show status bootコマンドで機種名とリビジョン番号を表示するようにした。

        表示例:
        # show status boot
        RT250i Rev.8.02.50 (Tue Jul 28 15:37:43 2009)
        Power-on boot
    
  4. description INTERFACEコマンドで設定できる文字列の長さを64文字に制限するようにした。これを超える長さの文字列を設定したときには、先頭から64文字を登録し、それ以降の部分を無視する。

  5. show configコマンドでconfigを表示したとき、bgp importコマンドおよびbgp exportコマンドにおいてネットワークアドレスを表示する場合、"all"ではなく"0.0.0.0/0"と表示するように変更した。なお、入力時には従来通り"all"を入力できる。

  6. snmp local addressコマンドが設定されているときには、SNMPトラップを運ぶUDPパケットの始点IPアドレスに使うだけだったのを、SNMPトラップデータのペイロード内のIPアドレスにも設定されたアドレスを使うように変更した。

  7. SNMPで、受信したPDU中のINTEGER型の値に対して、ITU-T X.690 8.3.2節に記述されている規則のチェックを行わないようにした。

    その規則を守らないSNMPマネージャーとの間で通信ができるようになる。

  8. ARP受信時の動作を以下のように変更した。

  9. IPアドレスの設定またはIPv6アドレスの設定、IPv6プレフィックスの設定を行う以下のコマンドにおいて、それぞれの設定でIPアドレスが重複した場合は、エラーとするように変更した。
    ただし、IPv6リンクローカルアドレスは重複して設定できる。

    IPアドレスの設定
    ip INTERFACE address
    ip pp address
    IPv6アドレスの設定
    ipv6 INTERFACE address
    ipv6 pp address
    IPv6プレフィックスの設定
    ipv6 INTERFACE prefix
    ipv6 pp prefix
  10. security class コマンドのオンラインヘルプをコマンドリファレンスの表記に合わせた。
    show environmentの表示について、セキュリティクラスの二つめの項目をFORGETに変更した。

  11. ip INTERFACE secure filter name が設定されている状態で、ip INTERFACE secure filter in または out を新たに設定したときに、nameの設定が消えて in または out の設定が反映されるように変更した。

  12. コマンドのIPアドレス指定で、降順に範囲指定を設定した場合は、昇順に変換して設定を保存するように修正した。
    降順で指定した場合は、範囲指定の始点アドレスしか有効とされなかったため。

    (例)
    コマンドで「httpd host 192.168.100.191-192.168.100.2」 を実行
    → 内部的には「httpd host 192.168.100.2-192.168.100.191」で保存する。
    対象となるコマンドは以下。
    dhcp scope
    dns host
    dns server select
    ip filter
    ip pp remote address pool
    ipv6 filter
    nat descriptor address inner
    nat descriptor address outer
    telnetd host

  13. 以下のコマンドにおいて設定可能なネットワークアドレスの仕様を変更した。

    ネットワークアドレスの設定の可否は以下の通りである。

    *.*.*.* =====> エラー
    *.*.*.*/ =====> エラー
    *.*.*.*/* =====> 入力可(ただしホスト部が0でないものはエラー)

    起動時にホスト部が0でない設定を読み込んだときはホスト部を0に変換する。

■バグ修正

  1. TCPで、受信したTCPセグメントにTimeStampオプションがついている場合、TSecrの値が本来想定される範囲内から外れていると、TCPの再送機構が正しく動作しなくなり、再送を全くしなくなってしまうことがあるバグを修正した。

  2. 長さが0にセットされているTCPオプションを受信するとリブートするバグを修正した。

  3. tcp log コマンドを設定することでsyslogに記録されるTCPのコネクションログのうち、受信方向のログにおいて、送信元IPアドレスと宛先IPアドレスが逆になって記録されるバグを修正した。

  4. 長さが0にセットされているTCPオプションを受信したときに出力されるSYSLOG"Invalid TCP option length(0)" で、IPv6アドレスが正しく表示されないバグを修正した。

  5. UDPパケットがノーマルパス経由でNAT/IPマスカレード変換されると、変換後のUDPチェックサムが0x0000になることがあるバグを修正した。UDPチェックサムの0x0000は「チェックサム無し」を表す特別な値なので、UDPチェックサムの計算結果が0x0000になった場合は0xFFFFに変換しなければならない。

  6. 以下のIPオプションを持つルーター宛のパケットを受信したときに、不要なログが表示されるバグを修正した。

  7. ルーター自身から送信するパケットにおいて、送信元IPアドレスが正しく選択されないことがあったバグを修正した。

  8. フラグメントされたパケットの最初のパケットより先に2番目以降のいずれかのパケットを受信すると、そのフラグメントされたパケットを再構築できずに廃棄、またはリブートすることがあるバグを修正した。

  9. ISDNで呼番号長が1である着呼の呼番号チェックが正しく行われないバグを修正した。

  10. 着ユーザビジー(#17 user busy)以外の理由でISDNの着信を拒否すると、その後、すべてのISDN Bチャネルを使用中に通信中着信ができなくなるバグを修正した。

  11. PPPのMPで通信中に、MPリンクを減らす場合には通常は最後に接続したMPリンクを切断するが、何らかの原因でそれ以外のMPリンクが切断されると、その後、MPリンクの増減が正常に行えなくなってしまうバグを修正した。具体的には、以下のような問題が起きていた。

    この問題が発生している間でも、MPによる通信自体は行える場合が多い。また、いったんすべてのMPリンクが切断されると、それ以降の通信はまた正常な動作に戻る。

  12. 複数の専用線でMP接続を行なっているときに専用線のケーブルを抜き差しすると、

    という現象が発生するバグを修正した。

  13. 複数のISDN回線でMP接続を行なっているときに、MPのプライマリリンクに対応するケーブルを抜き差しすると、通信できなくなるバグを修正した。

  14. 以下の場合に、ルーター内部の処理で無限ループが発生し、通信ができなくなったり、リソースが枯渇してハングアップするなどの症状になることがあるバグを修正した。

  15. 専用線に接続して使用したときに、何らかの理由により相手機器がパケットを受信できない状態になりPPP/LCPネゴシエーションが失敗すると、その異常な状態が解消しても専用線経由でパケットを送受信できなくなり、その後ハングアップするバグを修正した。

  16. ISDN で、相手からの着信が完了する前に送信したパケットが破棄されるバグを修正した。

    送信したパケットを契機として発信したときは接続完了後に正しく送信していたが、着信処理中に送信したパケットは接続完了後に送信せず破棄していた。

  17. ISDN回線で帯域制御を使用したときに、データを高負荷で転送しようとするとデータを送信できなくなることがあるバグを修正した。

  18. フレームリレーで接続している状態で、restartコマンドやリビジョンアップをして再起動をすると、リブートやハングアップしてしまうことがあるバグを修正した。

  19. フレームリレーの設定を行った後、回線未接続の状態で"pp bind"コマンドを削除すると、メモリの不正アクセスをして、ハングアップすることがあるバグを修正した。

  20. PRI専用線に接続しているときに、短時間にケーブルの抜き挿しを繰り返すと、ケーブルが抜けている状態でもPPP/LCPのネゴシエーションを起動してしまい、ケーブルを挿し直しただけでは接続が復旧しないことがあるバグを修正した。

    専用線接続時に相手から何も受信できずにPPP/LCPのネゴシエーションが失敗した場合には、自動的にPPP/LCPのネゴシエーションを再起動するようにした。

  21. 専用線に接続して使用したとき、相手機器からのLCPパケットを受信しないためにLCPネゴシエーションが完了できない場合には、回線インタフェースをリセットしてLCPネゴシエーションを再起動するはずが、接続回線がPRI専用線のときに回線インタフェースをリセットしないバグを修正した。

  22. PRI専用線に接続して使用したときに、コネクタとケーブルの接触状態が悪く、回線からの同期信号と無信号の繰り返しが短時間に頻発すると、その後、回線から受信したデータを処理できなくなるバグを修正した。
    show status priコマンドの表示結果で、「受信Ownerビットエラー」が記録されているときに現象が発生していた。

  23. PRI専用線に接続しているときに、短時間にケーブルの抜き差しを繰り返すと、専用線の起動処理を複数回連続して実行して、2リンクをMP接続している状態と認識してしまうバグを修正した。

  24. 多数の相手先に対してランダムに発着信を行うと、不特定の相手先とその後、自動発信できなくなったり、メモリリークすることがあるバグを修正した。

  25. PPP接続状態から切断状態になった直後に、PPP経由でデータを送信しようとするとリブートすることがあるバグを修正した。
    また、MPのリンクを追加または削除するときにリブートすることがあるバグも修正した。
    PPP接続状態から切断状態になったときに、リブートすることがあるバグも修正した。

  26. anonymous着信でpp auth usernameコマンドによる双方向でのCHAP認証を行うとき、送信するCHAPチャレンジのNameフィールドが常にLAN1のIPアドレスであったのを、clidキーワードで発番号認証を併用することにより接続相手が特定できる場合にはpp auth usernameコマンドで設定されている自分側のユーザ名とするようにした。

  27. PPのanonymous接続においてpp auth usernameコマンドで相手に割り当てるIPアドレスが設定してあっても、ip routeコマンドでPAP/CHAPの名前を使って同じ相手に対する静的経路が設定してあると、2番目以降に接続した相手に対してはpp auth usernameコマンドの設定どおりのIPアドレスが割り当てられないバグを修正した。

  28. RAS(Anonymous) 接続で複数の拠点から同じユーザー名で MP 1リンク接続すると、後から接続した拠点を最初に接続した拠点の MP リンクにバインドしてしまうバグを修正した。

  29. ARP情報が変わってもパケットの送信先が最大30秒程度変わらないことがあるバグを修正した。

  30. LANインタフェースのアドレスが変更されたときには、そのLANインタフェースで記憶しているARP情報を消去するようにした。LANインタフェースのアドレスを変更するときに、不要なARP情報が残ることによるトラブルを排除する。

  31. ipv6 interface address auto設定から自動構成したIPv6アドレスについて、その寿命が切れた後も、そのアドレスに対する経路が存在するバグを修正した。
    また同時に、寿命が切れたアドレスに対するICMPv6エコー要求を受信した場合に、応答を返さないように修正した。

  32. ルーターからルーターを起点とするIPv6のTCPセッションを多数張ると動作が不安定になる場合があるバグを修正した。

  33. CPU使用率100%が継続する程処理負荷の高い状態で、ルーター宛のIPv6 TCPパケットを受信し続けると、使用可能なパケットバッファが減っていき、負荷が無くなった後でも送受信性能が落ちる、または送受信不能になってしまう場合があるバグを修正した。

  34. タイプ0のルーティングヘッダが付いたIPv6パケットがDoS攻撃に悪用され得る脆弱性を修正した。
    自分宛でタイプ0のルーティングヘッダが付いたIPv6パケットは処理せずに破棄するようにした。さらに、このときipv6 icmp parameter-problem send onが設定されていれば、送信元へICMPv6(Parameter Problem)を返すようにした。

    なお、以下のコマンドでこれまで通りにタイプ0のルーティングヘッダが付いたIPv6パケットを処理するように設定できる。

    ○タイプ0のルーティングヘッダ付きIPv6パケットを破棄するか否かの設定

    [書式]
    ipv6 rh0 discard SWITCH
    no ipv6 rh0 discard
    [設定値]
    SWITCH
    on ... 破棄する
    off ... 破棄しない
    [説明]
    タイプ0のルーティングヘッダ付きIPv6パケットを破棄するか否かを選択します。
    [初期値]
    on
  35. IPv6 RAプロキシ機能で、上位ルーターから受信したRAのなかに未対応オプションが含まれていると、それが中継されないバグを修正した。

    また、上位ルーターから受信したRAに複数のプレフィクスが含まれていても、そのうちの一つしか中継されないバグを修正した。

  36. RAプロキシにおいて、上流のルーターから配布するプレフィックスを削除せず変更すると、変更前のプレフィックスから構成されたアドレスが、プレフィックスの寿命が切れても削除されないバグを修正した。

    標記の問題に対し、RAプロキシ機能でRAプレフィックスから構成されたアドレスの寿命について、ipv6 interface address auto設定から自動構成されたアドレスと同様に、寿命をアドレス毎の寿命としてカウントするように変更した。

  37. ipv6 lan1 prefix ra-prefix@lan1::/64のように、RA proxyの親インタフェースと設定先インタフェースを一致させると、IPv6のNSおよびRSを受信したのと同じインタフェースに転送し、2台以上のルーター間で互いに転送しあった場合にCPU使用率100%の状態が続くバグを修正した。

  38. 名前解決などルーター発のIPv6パケットを送信する設定で、RAを受け取るインタフェースがリンクダウンしていてデフォルトゲートウェイが無いなど、そのパケットの経路の無い状態がしばらく継続すると、その他の経路に対するパケットも含め、パケットの送受信性能が落ちるまたは送受信不能になってしまう場合があるバグを修正した。

  39. IPv6アドレスを削除すると、残っているアドレスに対応する要請ノードマルチキャストアドレスが削除される場合があるバグを修正した。

  40. RA proxyでプレフィックスを配布する設定のとき、その同じプレフィックスからIPv6アドレスが自動構成された後、同一インタフェースにリンクローカルアドレスが割り振られ、それらの要請ノードマルチキャストアドレスが一致していた場合に、RA proxyで配布するプレフィックスの寿命切れの後、リブートが発生するバグを修正した。

  41. 自動構成されたIPv6アドレスとそうでないアドレスの要請ノードマルチキャストアドレスが一致していた場合に、非自動構成アドレスがあるにも関わらず要請ノードマルチキャストアドレスが invalid と表示されてしまうバグを修正した。

  42. ip routeコマンドで、hideと設定された経路について、以下の条件が重なると回線がアップして通信できる状態になっても利用できないバグを修正した。

    このような場合に、動的経路制御プロトコルにより受け取っていた経路が消滅したときでも、静的経路はshow ip routeコマンドで「(hidden)」と表示されたままで利用できなくなっていた。

  43. pp enableコマンドでANONYMOUSインタフェースを有効にした場合、2つ目以降に使用されるANONYMOUSでRIPによる経路通知が行われないバグを修正した。

  44. RIPで通知された経路が隠し経路 (hidden) としてルーティングテーブルに登録された場合、rip use offでRIPを停止してもその経路が削除されないバグを修正した。

  45. RIPよりもプリファレンス値の低い他のプロトコル(静的経路含む)からとRIPからとで同じネットワーク宛の経路をほぼ同時に受信したときに、ごくまれにshow ip routeコマンドでは経路がRIPによるものと表示されるのに、show ip rip tableコマンドでは経路が"other protocol"と表示され、その後RIPからの経路の受信が無くなっても経路が消えなくなることがあるバグを修正した。

  46. 同じ宛先に対して、OSPFあるいはBGPで受信した経路(経路Aとする)と、ip routeコマンドによる静的経路あるいはRIPで受信した経路(経路Bとする)があり、経路Aよりも経路Bの方がプレフィクス値が高く、優先されている状態のときに、経路Aが先に消え、その後経路Bが消えた場合に、show ip routeコマンドで消えたはずの経路Aが表示され、パケットも転送されてしまうバグを修正した。

  47. OSPFで、経路のネクストホップは変わらないが、経路のコストやメトリックだけが変わったという場合に、show ip routeコマンドで表示される経路のコストやメトリックが更新されずに、変更前のままになってしまうバグを修正した。

    show ip routeコマンドの表示だけの問題で、経路の選択ルールなどへの影響は無い。

  48. OSPFで、POINT-TO-POINTタイプのインタフェースの先のOSPFルーターが、ルーターIDおよびOSPFパケットの始点IPアドレスのいずれもが異なるOSPFルーターに変更されるときに、インタフェースのダウンや、OSPFのネイバ状態のDOWNを経ないまま入れ換えられると、新しいOSPFルーターと隣接関係は確立できるものの、新しいOSPFルーターが広告する経路を取り込めないバグを修正した。

  49. OSPFで、下記の両方の条件を満たす2つのLSAを受信したときに、それらを区別できず、ただ1つのLSAだけを受理するバグを修正した。なお、このような状況では、ルーターの動作が不安定になり、不特定のタイミングでリブートする可能性が高い。

    1. LS typeが同じであり、その値が3か5である。
    2. Link State IDが同じで、マスク長が異なる。

    2.の例としては、192.168.0.0/24と192.168.0.255/32などがある。

  50. OSPFで、以下のいずれかの条件に該当する複数の外部経路を取り込もうとすると、その後のルーターの動作が不安定になり、不特定のタイミングでリブートすることがあるバグを修正した。

    1. マスク長が31ビット以下であるネットワーク経路と、そのネットワークのネットワークアドレスと同じ値をもつマスク長が32ビットであるホスト経路
    2. マスク長が31ビット以下であるネットワーク経路と、そのネットワークのブロードキャストアドレスと同じ値をもつマスク長が32ビットであるホスト経路
  51. OSPFで、タイプ5(AS External) LSAとして受け取っている外部経路について、Link State IDが同じままネットワークマスクだけが変更されたときに、ルーティングテーブルを変更できないバグを修正した。

    タイプ5(AS External) LSAのLink State IDの決め方としてRFC2328 Appenix E記載のアルゴリズムを採用しているOSPFルーターと相互接続するときに問題が発生する。

  52. OSPFで、LS-RequestでLSAの情報を送信するよう要求された場合、以下の2つの条件のいずれにも合致するときに間違ったLSAをLS-Updateで送信するバグを修正した。

    これらの条件が満たされると、LS-Requestを受信した側は本来であればBadLSReqイベントとして処理しなければいけないところを、自身のLSデータベースにある、異なる広告ルーターを持つLSAをLS-Updateで送信してしまっていた。

    このバグが発生すると、LS-Requestを送信している側では、show status ospf neighborコマンドで表示できる隣接ルーターの状態がLOADから先に進まなくなり、LS-Requestの送信を定期的に繰り返すようになる。逆に、LS-Requestを受信している側は、隣接ルーターの状態はFULLになる。

  53. OSPFで、経路のdownとupが短い時間で連続したときに、経路を広告できなくなることがあるバグを修正した。

  54. OSPFが有効な設定でルーターを起動(再起動)すると、1度 ospf configure refresh コマンドを実行するまでLSDBに意図しない経路が登録されてしまう可能性のあるバグを修正した。

  55. OSPFで外部経路を取り込んでいるとき、対象となる静的経路のゲートウェイが変化してもTYPE 5 LSAのForwarding Addressが変化しないバグを修正した。

  56. OSPFで、TYPE2の外部経路について、経路の変更がまったくない場合でも、SPF再計算のタイミングで経路の削除/追加イベントが発生することがあるバグを修正した。
    問題が発生したときに、ip route change logコマンドをonに設定しておくと、"Delete IP route"/"Add IP route"のログが続けて記録されるがその前後で経路の変更は起きていない。

  57. パス属性のタイプコードが0であるUPDATEメッセージを受信すると、そのBGPスピーカーとのBGPセッションを閉じてしまうバグを修正した。

  58. show status bgp neighbor NEIGHBOR advertised-routesコマンドで集約経路を表示するとき、Next Hop欄に異常なIPアドレスが表示されたり、リブートすることがあるバグを修正した。

  59. bgp aggregate filterコマンドで、本来は指定したプロトコルの経路だけが集約の対象になるところが、同じネットワークでプロトコルの異なる経路も集約の対象になるバグを修正した。

  60. bgp aggregateコマンドで同じ集約経路に対する設定を複数個設定することができてしまうバグを修正した。

  61. BGPピアの設定があり、その設定をまったく変更していない状態で、show status bgp neighborコマンドで表示される状態がIdleまたはActiveのときにbgp configure refreshコマンドを実行すると、そのBGPピアがそれ以降、bgp configure refreshコマンドに反応しなくなるバグを修正した。この状態になると、ルーターを再起動するしか復旧の方法はない。

    Idle状態とはBGPの初期化中の状態であり、ごく短時間で他の状態に遷移するため、現実的には、Idle状態中にbgp configure refreshコマンドを実行するのは困難である。

    Active状態とは、BGPピアからの接続を待っている状態である。bgp neighborコマンドでpassiveオプションをonに設定していると、BGPピアから接続されるまでActive状態になる。また、passiveオプションがoffの場合でも、BGPピアとの接続がいったん切断されると、少なくともIdelHoldTimer(=12秒)の間はActive状態になる。そのため、bgp configure refreshコマンドを12秒以内に2回以上実行すると、この問題に遭遇することになる。

  62. BGPで、bgp configure refreshコマンドを実行したときに、本来であればBGPピアから受信していた経路はいったんすべて削除されるが、それが削除されずに残ってしまうことがあるバグを修正した。

  63. BGPでピアから経路情報を受信している状態で、bgp configure refreshまたはospf configure refreshコマンドを入力すると、稀にリブートする問題を修正した。

  64. OSPFまたはBGPを使用しているときに、次の操作を行うとメモリリークが発生するバグを修正した。

    なお、上記コマンドを入力・保存した後にrestartした場合、このバグは顕在化しない。

  65. ospf/bgp configure refresh でメモリリークするバグを修正した。

  66. SPF計算で同コストなスタブリンクを評価したとき、スタブ経路の計算結果に基づいてルーティングテーブルを更新できない場合があるバグを修正した。

    具体的には、あるスタブ経路に関するスタブリンクを評価したとき、最後に評価したスタブリンクにおいてネクストホップ情報の更新が発生しなかったとき、ルーティングテーブルにそのスタブ経路の計算結果が反映されなくなる。

  67. フローティングスタティックのとき、OSPF・BGPで経路の生成元の切り替わりを検知できないバグを修正した。

    最初にOSPF・BGPのルーティングテーブルに取り込んだプロトコルでその後の動作が決まってしまい、import できたりできなかったりしていた。

  68. NATディスクリプタ機能で、全ての外側アドレスを静的NATの対象として個数で設定している場合、外側アドレスの範囲外のアドレスの通信が発生するとリブートすることがあるバグを修正した。

  69. IPマスカレードで変換したパケットに対するICMPエラーパケットを受信したとき、その原因となったパケットのエントリのTTLを60にしてしまうバグを修正した。

    ICMPエラーパケットのデータ部にはセットされていないTCPフラグの領域を参照して RST = 1 あるいは FIN = 1 と誤判定してTTLを変更していた。

  70. PPインタフェースに複数のNATディスクリプタを適用してNAT/IPマスカレード機能を使用する場合、2番目以降のNATディスクリプタの外側IPアドレス(nat descriptor address outer)に"ipcp"を指定すると、そのNATディスクリプタを使用する通信のNAT変換が正しく行われないバグを修正した。

  71. DHCPクライアント機能で、サーバーから通知されるゲートウェイ情報が変わった場合、それが経路情報に反映されないことがあるバグを修正した。

  72. DHCPサーバーからDHCPクライアントにセカンダリネットワークのアドレスを付与するパケットをブロードキャストで送出する場合に、送信元IPアドレスとしてセカンダリアドレスではなくプライマリアドレスを使用するバグを修正した。

  73. DHCPリレーエージェント機能で、リレー対象となるパケットサイズのチェックをDHCPサーバー機能と同様に緩めた。

  74. DHCPサーバー機能で、大量のDHCPクライアントから同時にDHCPメッセージを受信すると、リブートするなどルーターの動作が不安定になるバグを修正した。

  75. DHCPサーバー機能で、show status dhcpコマンドで"つづく"表示のまま放置した場合、DHCPサーバー機能が正しく動作しないバグを修正した。

  76. dns server selectコマンドでDNSサーバーを二つ指定しても、二つ目に指定したDNSサーバーが選択されることがないことを修正した。

  77. DNSリカーシブサーバー機能で、EDNS0に対応したクライアントからの問い合わせに正しく応答しないバグを修正した。

    OPT RRを含むDNS問い合わせに対して、DNS responseではなくDNS requestを返すようになっていた。

  78. VRRPで、マスター側のVRRPを設定してあるインタフェースがリンクダウンすると再度リンクアップしたときに優先度が0であるVRRP広告を送信するバグを修正した。

  79. VRRPで、マスターがダウンしたと判定するまでの時間を長くしているとき、または、多くのVRRPグループを使用しているときに、VRRPに関する内部のタイマが起動できなくなり、以下の状態になることがあるバグを修正した。

    なお、後者は現象としては確認されていないが、理論的に発生しうるため記載した。

  80. VRRPで、仮想IPアドレスと実IPアドレスが異なる場合でマスターとして動作しているときに、受信したIPパケットに対してICMPエラーパケットを送信するときに、エラーの原因となったIPパケットの終点MACアドレスが仮想MACアドレスであった場合でも、ICMPエラーパケットの始点MACアドレスを実MACアドレスとして送信するバグを修正した。

    Windows PCだと、自分が送信したIPパケットに対して、異なるMACアドレスからICMPリダイレクトを受信してもそれを処理しないために、ICMPリダイレクトの効果がなかった。

  81. speed コマンドで 1k を設定した場合に帯域制限がなされないバグを修正した。

  82. ip lanN address dhcpコマンドを設定しても、コマンドを再設定、または再起動をしないとDNSの名前解決ができないことがあったバグを修正した。

  83. LAN経由のキープアライブでICMP Echoを利用し、確認先のIPアドレスにIPv6アドレスを指定した場合、キープアライブが正常に動作せず、常にダウン検知されるバグを修正した。

  84. ip keepaliveコマンドで以下のバグを修正した。

  85. SNMP機能で、専用線のLinkDown/LinkUpのトラップがその回線の対向側にあるSNMPマネージャーに送出されないバグを修正した。

    専用線経由でパケットを送出するときにPPPがダウンしている場合、パケットを破棄するのではなくキューにためてPPP接続を試みることとした。PPP接続が成功するとパケットは送出される。

  86. 起動時に以下のSNMPトラップが送出されないことがあるバグを修正した。

    専用線設定時
    yrIfPpLinkUp
  87. SNMPのプライベートMIBで、yrIpKeepaliveStatus変数の値として実際の状態とは異なる値を返すバグを修正した。

    具体的には、show status ip keepaliveコマンドの表示で'up'または'down?'と表示されているときに2(down)を、'down'または'up?'と表示されているときに3(up-wait)を返していた。本来は、以下のようになるべきである。

    show status ip keepaliveyrIpKeepaliveStatus
    up1(up)
    down2(down)
    up?3(up-wait)
    down?4(down-wait)
  88. プライベートMIBで規定するトラップyrhCpuUtil5sec, yrhCpuUtil1min, yrhCpuUtil5min, yrhMemoryUtil, yrhInboxTemperatureのデータの型はMIBファイルはGAUGE型として定義されているにも関わらず、ルーターが送信するトラップではデータの型がINTEGER型になっているバグを修正した。

  89. FR MIBで、frErrIfIndexを取得すると、その後の動作が不安定になる可能性があったバグを修正した。

  90. SNMPで、sysUpTime変数が49日あまりで0に戻ってしまうバグを修正した。
    sysUpTime変数は1/100秒単位の符号無し32ビット整数なので、497日あまりで0に戻るのが本来の仕様である。

    Rev.8.02.42以降で発生する。

  91. 接続先PPにフレームリレーが設定されているとき、そのPPに対してSNMPマネージャーからSNMPGETコマンドでフレームリレーのインタフェース番号 (mib2.transmission.frDlcmiTable.frDlcmiEntry.frDlcmiIfIndex) を取得すると、不当な値が返ってくるバグを修正した。

  92. 接続先PPにフレームリレーが設定されているとき、SNMPでフレームリレーのPVC状態確認手順の設定値(mib2.transmission.frDlcmiTable.frDlcmiEntry.frDlcmiState)が取得できなかったり、取得できても不当な値が返ってくるバグを修正した。
    また、frDlcmiEntryに対してSNMPWALKコマンドを実行しても、同原因によりfrDlcmiStateより前のオブジェクト(frDlcmiIfIndex)しか取得できていなかった。この問題も本修正により改善される。

  93. フレームリレーが設定されているPPにおいて、次に示す条件のいずれかが該当する場合、SNMPでフレームリレー関連のオブジェクト(mib2.transmission)が正しく取得できないバグを修正した。

    (*) mib2.interfaces.ifTable.ifEntry.ifIndexに示される全インタフェースの通し番号で128以上になるPPインタフェースが該当する。

    また、mib2テーブル全体に対してSNMPWALKコマンドを実行しても、上記条件に該当するPPが存在する場合はフレームリレー関連のオブジェクト(mib2.transmission)の取得中にSNMPマネージャーでエラーが発生してしまうため、transmissionより後のオブジェクトを取得することができなかった。この問題も本修正により改善される。

  94. フレームリレー関連のMIBオブジェクト(mib-2.transmission)に対して、SNMPマネージャーからSNMPGETNEXTやSNMPWALKコマンドが実行されたとき、QoSの設定がある場合でもQoSのクラスごとに設定されているMIBインタフェースを見せないようにした。

    なお、フレームリレーの設定がない場合も、同オブジェクト(mib-2.transmission)に対してSNMPマネージャーからSNMPGETNEXTやSNMPWALKコマンドが実行されたときは、応答する情報がないということを調べるために検索処理が発生する。いずれかのインタフェースにQoSの設定があるとMIBインタフェース数が増えることでこの検索処理にかかる時間が長くなり、ルーターから何らかの応答を返す前にSNMPマネージャーでタイムアウトが発生してしまうことがあった。また、その結果、SNMPマネージャーはコマンドの再送を繰り返すことがあり、その間ルーターの負荷が上がったまま下がらないという問題も発生する可能性があった。この問題は本修正により改善される。

  95. YAMAHA private MIBのyrIfPpAccumulatedConnTimeで表示されるPPの累積接続時間が正しく表示されないことがあるバグを修正した。

  96. SNMP機能で、専用線のLinkDown/LinkUpのトラップがその回線の対向側にあるSNMPマネージャに送出されないバグを修正した。

  97. TFTPでconfigファイルをルーターにアップロードする場合に、configファイル中にrestartコマンドが記述してあっても、以下の条件に合致する場合にはルーターの再起動が行われないバグを修正した。

    または、

    configファイル中のrestartコマンドの直前にsaveコマンドが記述されていればこの問題は発生しない。

  98. 長いログを保持した状態で、コンソールとtelnetなど、複数の方法で同時にSYSLOGを表示させようとすると、正しく表示されないことがあるバグを修正した。

  99. telnet経由で長いconfigをペーストすると表示が途中で止まってしまい、任意のキーを入力しないと、続きの処理が実行されないバグを修正した。

  100. TELNET EC(Erase Character)、またはTELNET EL(Erase Line)シーケンスのパケットを受信するとメモリの不正アクセスをし、リブートすることがあるバグを修正した。

  101. セキュリティクラスの設定によりTELNET接続が失敗したときのログ表示について、正しくIPアドレスが表示されていなかったバグを修正した。

  102. 他のルーターからremote setupでログインして、telnetクライアントで他の機器にログインしようとすると、メモリリークするバグを修正した。

  103. 複数のISDN回線インタフェースを同時に使用したときに、専用線に接続している回線インタフェースのアップダウンが発生すると、他の回線経由で接続されているリモートセットアップを誤って切断するバグを修正した。

  104. remote setupを実行すると、"Idle timer is expired"という間違ったログが出力されることがあったバグを修正した。

  105. ルーターにログインする際、パスワードを入力後、Enterキーを押すと、入力した文字数分だけ、カーソルが一瞬右に移動するバグを修正した。

  106. 256文字以上のパラメータ、またはスペースを含むパラメータを入力した後、以降のパラメータのタブ補完が効かないバグを修正した。

    「"」や「'」で囲ったパラメータ、またはエスケープ文字「\」を使用する特殊文字を含むパラメータを入力した後、タブキーを押すとパラメータを囲っていた「"」「'」やエスケープ文字が消えるバグを修正した。

  107. 設定・状態表示で「つづく」が表示された状態でタイムアウトすると、メモリリークするバグを修正した。

  108. 入力したコマンドのパラメータヘルプを表示させたときに、別のコマンドになるキーワードが存在する場合に、文字化けやリブートしてしまうバグを修正した。

  109. no console character, no console columns コマンドを実行後、Administratorから抜ける際に、設定変更を保存するかどうかの確認メッセージがでないバグを修正した。

    以下のnoコマンドを実行後、Administratorから抜ける際に、設定変更を保存するかどうかの確認メッセージがでないバグを修正した。

    no security class
    no timezone
    no system temperature threshold
    

    no telnetd sessionコマンドを実行後、Administratorから抜ける際に、設定変更を保存するかどうかの確認メッセージがでないバグを修正した。

  110. copy configコマンドでコピーに失敗したときに設定ファイルが消えるバグを修正した。

  111. ip hostコマンド、dns staticコマンドで、ホスト名やFQDNに空文字列が設定できてしまうバグを修正した。空文字列を設定した場合、コマンドがエラー無く受け付けられてしまうが、show configコマンドやTFTPでの設定取得では、空文字列のホスト名は表示されず、不完全なコマンドとして表示される。また、設定を保存することもできない。

    ip hostコマンド、dns staticコマンドで、ホスト名やFQDNにDNSルートを表すドット(.)を設定しても、DNSルートに関する問い合わせに対して返事を返せないバグを修正した。

    この修正に伴い、ip hostコマンド、dns staticコマンドではホスト名やFQDNの末尾にドットがあっても無くても同じ名前として扱うようになった。
    つまり、以下の2つのコマンドは同じ意味になる。

    ip host a.com 192.168.0.1
    ip host a.com. 192.168.0.1
    

    show configなどの表示では、ドット一文字だけであるルートの場合を除き、末尾のドットは表示しない。

  112. 以下のコマンドを用いて、ルーターのサーバー機能へアクセスできるホストをIPアドレス (IPv4またはIPv6) の範囲指定で制限したとき、異なるバージョンのIPアドレスを持つホストからはアクセスできてしまうバグを修正した。

  113. show ip connection | less と入力して、動的フィルタのコネクションをless表示したときに、無駄な空行が入るバグを修正した。

  114. pp enable allを設定してもshow ipv6 addressでppの情報が表示されないバグを修正した。

  115. ip INTERFACE addressコマンドで、LANインタフェース、または、PPインタフェースのIPアドレスを設定するときに、ブロードキャストIPアドレスを指定できないバグを修正した。

  116. 以下のコマンドをno形式で削除しようとするときに、コマンドの後ろにインタフェース名以外のパラメータが付いているとエラーになるバグを修正した。

  117. nat descriptor timerコマンドで、no形式で設定を削除する場合に、本来不要なパラメータを指定しないとエラーになることがあるバグを修正した。

  118. 以下に示すコマンドのパラメータで、不正な形式であってもエラーを表示しないことがあるバグを修正した。

    不正な形式でもエラーにならない例は以下のとおり。

  119. nat descriptor staticコマンドの外側アドレスと内側アドレスにIPアドレス以外の文字列を入力してもエラーとならず、不正な設定となってしまうバグを修正した。

  120. nat descriptor address outer コマンドで外側IPアドレスに ipcp/primary/secondaryを指定したとき、その後に任意の文字列を記述してもコマンドエラーにならないバグを修正した。

  121. snmp local addressコマンドで、0.0.0.0または::0を設定してもエラーにならないが、コマンド自体は設定されないバグを修正した。

  122. bgp export filterコマンドおよびbgp import filterコマンドで、以下のバグを修正した。

    また、それぞれのコマンドのオンラインヘルプの記述を整理した。

  123. 以下のコマンドについて、IPアドレスとして0.0.0.0を入力してもエラーにならないバグを修正した。

  124. 以下2点を修正した。

  125. 以下のコマンドの引数として *.*.*.*/0 を指定できなくなっていたのを修正した。

    *.*.*.*/0 を指定したときは 0.0.0.0/0 として認識される。

  126. telnetでルーターにログインし、以下のコマンドを実行後、すぐに任意のキーを入力すると、実行中の処理が中止されてしまうバグを修正した。

  127. 以下の3点を修正した。

  128. show config pp、show config listコマンドで、それぞれpp、listがTAB補完されないバグを修正した。

  129. dns server selectコマンドで、入力キーワードが不十分な状態で設定しようとすると、リブートすることがあるバグを修正した。
    コマンド入力エラーになったとき、一部のエラー内容が間違っているバグを修正した。

  130. dhcp scopeコマンドについて、以下のバグを修正した。

  131. dhcp scopeコマンドのexpireとmaxexpireの設定で、設定可能な最大値より大きな値を設定してもエラーにならなかったり、ある値以上が設定できない場合があるバグを修正した。

  132. dhcp scopeコマンドで、expire/maxexpireオプションで0を入力してもエラーとならないバグを修正した。またヘルプ文で同オプションの最大値の表記が間違っているバグを修正した。

  133. ip rip auth keyコマンドで十六進数列を設定するとき、不正な入力でもエラーとならないことがあるバグを修正した。

  134. no ip I/F intrusion detectionコマンドで以下のバグを修正した。

  135. ipv6 filterコマンドで以下のバグを修正した。

  136. ip/ipv6 filter dynamic コマンドのsyslogオプションの設定でon/offの後に文字を続けてもエラーにならないバグを修正した。

  137. no lan typeコマンドで、パラメータが多いとコマンドがエラーになるバグを修正した。

  138. nat descriptor staticコマンドでIPアドレスの指定で"-"や"="を不正に入力してもエラーとならないバグを修正した。

  139. 以下のコマンドで、プロトコル番号に256以上の値を指定してもエラーにならないバグを修正した。

  140. no lan backup lanNコマンドで、後ろにLANインタフェース名やゲートウェイIPアドレスなどのパラメータを入力するとエラーになり、コマンドを削除できないバグを修正した。

  141. ipv6 INTERFACE rip filterコマンドにおいて、入力時には100個のフィルタIDを受け付けるが、実際には10個しか設定されないバグを修正した。
    この修正の後、IPv6のRIPフィルタは100個まで設定ができるようになる。

  142. ip lanN dhcp retryコマンドで、回数と時間の2つ必要である引数のうち、回数だけ指定して時間を指定しないと、本来であればパラメータの数が不適当である旨のエラーメッセージを出力してエラーにしなければいけないところを、他の理由のエラーにしたり、あるいはコマンド入力でリブートしてしまうバグを修正した。

  143. dhcp client client-identifierコマンドの不完全入力でリブートすることがあるバグを修正した

  144. lan typeコマンドで、スイッチングハブのないLANインタフェースに対して、ポート番号を指定できるバグを修正した。

  145. lan type コマンド入力後、ip lan address コマンドを入力して直ぐにsaveコマンドを入力するとip lan addressの設定が保存されない場合があるバグを修正した。

    キーボードからの手入力では発生しづらいが以下の設定をコピー&ペーストした場合やターミナルソフトなどでconfigをルーターに流し込むなどした場合にip lan addressの設定が保存されない。

    lan type
    ip lan address
    save
    
  146. system temperature thresholdコマンドが一般ユーザで使用できてしまうバグを修正した。

  147. schedule atコマンドで、ppの相手先としてanonymousを入力するときに、そのanonymousキーワードに対してTAB補完が効かないバグを修正した。

  148. スケジュールの設定を削除するとき、no schedule atコマンドでcommandパラメータまで入力するとエラーとなって削除できない場合があるのを修正した。
    また、tftpでclear configurationコマンドを用いてすべてのconfigを削除しようとしてもschedule atコマンドだけが削除できずに残ってしまう場合があるのを修正した。

  149. timezoneコマンドで -00:01 〜 -00:59 の範囲を指定したときに、符号が反転してしまうバグを修正した

    例えば "timezone -00:30" と入力した場合に "timezone +00:30" と設定されてしまう。

  150. syslog hostコマンドで、IPv6アドレスを指定するときにスコープIDを同時に指定すると、IPv6アドレスではなくFQDNとして扱われてしまうバグを修正した。

  151. syslog hostコマンドで、スコープIDを指定していないIPv6リンクローカルアドレスを設定できないようにした。

  152. bgp router idコマンドで、ルーターIDに0.0.0.0を指定してもエラーにならないバグを修正した。

  153. ip/ipv6 filter dynamic コマンドのヘルプ文において、コマンドリファレンスでプロトコルと表記している部分がアプリケーションとなっていたのを修正した。

  154. ipv6 routeコマンド設定において、networkが0::0となるような入力ができてしまうバグを修正した。

  155. ip lanN vrrp shutdown triggerコマンドで、シャットダウントリガとしてフレームリレーのDLCIを指定するときに、dlci=引数のTAB補完ができないバグを修正した。

  156. queue class property コマンドの帯域の設定値およびspeed ppコマンドの速度の設定値について、上限を100Mまでとした。

  157. queue class propertyコマンドのbandwidthパラメータについて、以下の変更とバグ修正を行った。

  158. queue INTERFACE/pp class property コマンドについて以下を修正した。

  159. ip/ipv6 filter dynamic コマンド設定の入力時に、プロトコルを不正な文字列で設定を行うとパラメータの数が不適当ですと表示していたが、正しくパラメータのキーワードが認識できませんと表示するように修正した。

  160. ping6コマンドでPPインタフェースを指定するとき、PP番号に登録可能な (相手先情報番号+1) を指定できてしまうバグを修正した。

  161. console character sjis/eucに設定されているとき、no pp selectコマンドのコマンドヘルプで [ ] を閉じていなかったバグを修正した。

  162. dns serverコマンドのヘルプにおいて、指定可能なタイプとして"aaaa"の表記がないバグを修正した。

  163. helpコマンドのヘルプ文で、ctrl-Cの説明が誤っているバグを修正した。

  164. isdn auto connectコマンドのヘルプ文で、ctrl-Cの説明が誤っているバグを修正した。

  165. queue INTERFACE default class コマンドのヘルプ文の誤記を修正した。

    ヘルプ文の日本語表示で『クラス』の後ろに『...』が付いていて複数の入力ができるように見えていた。

  166. no snmp trap hostコマンドのヘルプ誤記を修正した。

  167. ospf area network コマンドのヘルプ表記を修正した。

  168. no ospf import fromコマンドのコマンドヘルプの誤記を修正した。

  169. no nat descriptor timerコマンドのコマンドヘルプの誤記を修正した。

  170. dns cache max entryコマンドのコマンドヘルプの誤記を修正した。

    正) MAX_ENTRY
    誤) ENTRY
  171. ipv6 INTERFACE secure filterコマンドのコマンドヘルプの誤記を修正した。

  172. tcp logコマンドのコマンドヘルプの誤記を修正した。

  173. no tcp logコマンドのコマンドヘルプが表示されないバグを修正した。

  174. show status pri1マンドを実行すると、メモリリークが発生するバグを修正した。
    show accountでも同様にメモリリークが発生するバグを修正した。

    Rev.8.02.37以降で発生する。

■更新履歴

Aug. 2009, Rev.8.02.50 リリース


以上