ftp://ftp.rtpro.yamaha.co.jp/pub/rt/relnote/Rev.04.02/relnote_04_02_09.txt Revision : 04.02.09 Release : Oct 2001, ヤマハ株式会社 RT52pro Rev.4.02.09 リリースノート ========================================================================== ○ Rev.4.02.07からの変更点 ========================================================================== ■追加機能 [1] IPv6でDNSメッセージを送受信できるようにした。また、dns serverコマンドで IPv6アドレスを設定できるようにした。 [2] LCPキープアライブによる常時接続機能を追加した。 ○ 常時接続の設定 [入力形式] pp always-on SW [TIME] [パラメータ] SW on ... 常時接続する off ... 常時接続しない TIME ... 再接続を要求するまでの時間間隔 (60-21474836秒) [説明] 選択されている相手について常時接続するか否かを設定する。 また、常時接続での通信終了時に再接続を要求するまでの時間間隔を 指定する。常時接続に設定されている場合には、起動時に接続を起動 し、通信終了時には再接続を起動し、キープアライブ機能により接続 相手のダウン検出を行なう。接続失敗時あるいは通信の異常終了時に はTIMEに設定された時間間隔を待った後に再接続の要求を行ない、正 常な通信終了時には直ちに再接続の要求を行なう。SWがonに設定され ている場合には、TIMEの設定が有効となる。TIMEが設定されていない 場合には、TIMEは60になる。 [ノート] PP毎のコマンドである。 PPとしてleasedあるいはanonymousが選択されたときには無効である。 [デフォルト値] off ○ キープアライブの時間間隔の設定 [入力形式] pp keepalive interval INTERVAL [COUNT] [パラメータ] INTERVAL ... LCPのecho-requestを送出する時間間隔 (1..65535) COUNT ... この回数連続して応答がなければ相手側のルータをダウン したと判定する (3..100) [説明] 選択されている相手についてLCPのecho-requestの送出間隔とダウン検出 を判定する回数を設定する。 [ノート] PP毎のコマンドである。 一度LCPのecho-requestに対する応答が返って来ないのを検出したら、 その後の監視タイマは1秒に短縮される。 PPとしてleasedあるいはanonymousが選択されたときには無効である。 [デフォルト値] INTERVAL = 30 COUNT = 6 [3] IPマスカレードテーブルのTTLの扱いを制御する機能を追加した。 ○ IPマスカレードテーブルのTTLの制御方式の設定 [入力形式] nat descriptor masquerade ttl hold TYPE [パラメータ] TYPE ... TTLを同期させる方法 - 'all' ... すべてのコネクションを対象とする - 'ftp' ... FTPの制御チャネルのみを対象とする [説明] このコマンドによってIPマスカレードテーブルのTTLの扱いを制御す ることができる。通常、テーブルのTTLは単調に減少するが、FTPの ように制御チャネルとデータチャネルからなるアプリケーションでは 制御チャネルに対応するテーブルをデータ転送中に削除するべきでは ないため、制御チャネルとデータチャネルの両テーブルのTTLを同期 させている。ただし、現有の機能では、制御チャネルとデータチャネ ルの対応を把握することが難しいため、同じホスト間の通信について は、すべてのコネクションを関係づけ、TTLを同期させている。しか しながら、このような動作では、多くのテーブルのTTLが同期し、多 くのテーブルが長く残留するという現象が起きる。さらに、状況によ っては、ルータのメモリが枯渇する可能性もある。そこで、この処理 をFTPの制御チャネルに限定し、メモリの枯渇を予防する選択肢を提 供する。TTLの同期をFTPの制御チャネルに限定するときには、パラメ ータに'ftp'を設定する。FTPに限定せず、従来と同じように動作させ るためには、パラメータに'all'を設定する。 [デフォルト値] all [4] dns server selectコマンドにrejectオプションを追加した。これにより、DNS 問い合わせパケットを破棄することができる。 ○ DNS問い合わせの内容に応じたDNSサーバの選択 [入力形式] dns server select ID SERVER [TYPE] QUERY [ORIGINAL-SENDER] [restrict pp CONNECTION-PP ...] dns server select ID pp PP_NUM [DEFAULT-SERVER] [TYPE] QUERY [ORIGINAL-SENDER] [restrict pp CONNECTION-PP ...] dns server select ID dhcp LAN [DEFAULT-SERVER] [TYPE] QUERY [ORIGINAL-SENDER] [restrict pp CONNECTION-PP ...] dns server select ID reject [TYPE] QUERY [ORIGINAL-SENDER] dns server select delete ID [パラメータ] ID ... DNSサーバ選択テーブルの番号 SERVER ... DNSサーバのIPアドレス PP_NUM ... IPCPにより接続相手から通知されるDNSサーバを使う場合 の接続相手先番号 LAN ... DHCPサーバより取得するDNSサーバを使う場合のLANインタフ ェース DEFAULT-SERVER ... PP_NUMで指定した接続相手からDNSサーバを獲得 できなかったときに使うDNSサーバのIPアドレス TYPE ... DNSレコードタイプ a、ptr、mx、ns、cname、anyを取る。省略したときは'a'と なる。 'any'を選択した場合にはすべてのタイプにマッチする。 QUERY ... DNS問い合わせの内容 - TYPEがa、mx、ns、cnameの場合 QUERYはドメイン名を表す文字列であり、後方一致と する。例えば、"yamaha.co.jp"であれば、 comm.yamaha.co.jp、rtpro.yamaha.co.jpなどにマッ チする。 ただし、dns server select rejectの場合は完全一致 とし、前方一致、及び後方一致には"*"を用いる。つ まり、前方一致では、"NetVolante.*"であれば、 NetVolante.jp、NetVolante.rtpro.yamaha.co.jpなど にマッチする。 また、後方一致では、"*yamaha.co.jp"と記述する。 - TYPEがptrの場合 QUERYはIPアドレス(IP_ADDRESS[/MASKLEN])であり、 MASKLENを省略したときはIPアドレスにのみマッチし、 MASKLENを指定したときはネットワークアドレスに含 まれるすべてのIPアドレスにマッチする。 DNS問い合わせに含まれる.in-addr.arpaドメインで記 述されたFQDNは、IPアドレスへ変換された後に比較さ れる。 ORIGINAL-SENDER ... DNS問い合わせの送信元のIPアドレスの範囲 CONNECTION-PP ... DNSサーバを選択するとき、接続状態を確認する 接続相手先番号 [説明] DNS問い合わせの解決を依頼するDNSサーバとして、DNS問い合わせの 内容およびDNS問い合わせの送信元および回線の接続状態を確認する 接続先相手先番号とDNSサーバとの組合せを複数登録しておき、DNS問 い合わせに応じてその組合せから適切なDNSサーバを選択できるよう にする。テーブルは若番から検索され、DNS問い合わせの内容にQUERY がマッチしたらそのDNSサーバを用いてDNS問い合わせを解決しようと する。一度マッチしたら、それ以降のテーブルは検索しない。すべて のテーブルを検索してマッチするものがないときは、dns serverコマ ンドで指定されたDNSサーバを用いる。 dns server select rejectにQUERYがマッチしたら、そのDNS問い合わ せパケットを破棄し、DNS問い合わせを解決しない。 [5] トンネルインタフェースをISDN回線でバックアップする機能を追加した。この 機能を使用するためには、該当するトンネルインタフェースにおける障害の発 生と復旧を検出するために「IKEキープアライブ」を設定する必要がある。 ○ トンネルインタフェースのバックアップの設定 [入力形式] tunnel backup PP_NUM [パラメータ] PP_NUM ... 相手先情報番号 [説明] トンネルインタフェースがダウンしたときにバックアップとして使用 するPPインタフェースを指定する。 [デフォルト値] none ○ IKEキープアライブの設定 [入力形式] ipsec ike keepalive use GATEWAY SW [パラメータ] GATEWAY ... セキュリティゲートウェイの識別子 SW - on ... キープアライブを使用する - off ... キープアライブを使用しない [説明] IKEでキープアライブパケットを送信し、トンネルインタフェースの 障害の発生と復旧を検出する。 [デフォルト値] off [6] ステルス機能を追加した。 通常、サポートしていないプロトコル番号や、TCP/UDPの開いていないポート にパケットが来た場合には、RTはTCP RSTやICMP port unreachableを返すが、 これが攻撃者への手がかりになることを防ぐために、一切何も返さないという 設定ができるのが望ましい。このような動作をステルス(stealth)機能と呼ぶ ことにする。 ○ ステルス機能の設定 [入力形式] ip stealth clear ipv6 stealth clear ip stealth all ipv6 stealth all ip stealth INTERFACE [INTERFACE...] ipv6 stealth INTERFACE [INTERFACE...] [パラメータ] all ... すべてのインタフェースからのパケットに対してステルス動 作を行う INTERFACE ... インタフェース名 指定したインタフェースからのパケットに対してステ ルス動作を行う clear ... すべてのインタフェースでステルス動作を行わない [説明] このコマンドを設定すると、指定されたインタフェースから自分宛に 来たパケットが原因で発生するICMPおよびTCPリセットを返さないよ うになる。 自分がサポートしていないプロトコルやIPv6ヘッダ、あるいはオー プンしていないTCP/UDPポートに対して指定されたインタフェースか らパケットを受信したときに、通常であればICMP unreachableやTCPリ セットを返送する。しかし、このコマンドを設定しておくとそれを禁 止することができ、ポートスキャナーなどによる攻撃を受けたときに ルータの存在を隠すことができる。 [デフォルト値] clear [ノート] 指定されたインタフェースからのpingにも答えなくなるので注意が必 要である。 自分宛ではないパケットが原因で発生するICMPはこのコマンドでは制 御できない。それらを送信しないようにするには、ip icmpコマンド を用いる必要がある。 [7] IPv6 ICMP送信制御機能を追加した。 ○ 受信したICMPのログを記録するか否かの設定 [入力形式] ipv6 icmp log LOG [パラメータ] LOG on ... 記録する off ... 記録しない [説明] 受信したICMPをDEBUGタイプのログに記録するか否かを設定する。 [デフォルト値] on ○ ICMPを送信するか否かの設定 [入力形式] ipv6 icmp TYPE send SEND [パラメータ] TYPE echo-reply ... ICMP Echo Reply parameter-problem ... ICMP Parameter Problem time-exceeded ... ICMP Time Exceeded unreachable ... ICMP Destination Unreachable packet-too-big ... ICMP Packet Too Big SEND on ... 送信する off ... 送信しない [説明] 受信したIPv6パケットに対してICMPを送信するか否かを設定する。 [デフォルト値] parameter-problem ... off その他 ... on [8] IP over IPトンネルの仕様を整理し、IPv4 over IPv4、IPv6 over IPv6トンネ ルの機能を追加した。IPv4 over IPv4トンネルは、*BSDのgif、Ciscoのtunnel インタフェース(tunnel mode ipip)と互換性がある。 - tunnel encapsulationコマンドのパラメータは'6over4'、'4over6'を廃 止し、'ipip'に統一 - トンネル端点のIPアドレスを設定するコマンドはtunnel endpoint address に統一し、ip/ipv6 tunnel local/remote addressコマンドは廃止 ■仕様変更 [1] ip icmp parameter-problem sendコマンドのデフォルト値をoffに変更した。 [2] leased keepalive logコマンドのデフォルト値をoffに変更した。 [3] clear analog accountコマンドを実行したときに、その記録をINFOレベルの syslogに出力するようにした。 ■バグ修正 [1] 以下のコマンドで、IPv6アドレスが指定できないのを修正した。 radius server radius auth server radius account server [2] Bチャネルが2つ接続されている状態でデータ呼の着信を受けると、その後の発 着信が行えなくなることがあるバグを修正した。 [3] ダイアルアップVPNで、アドレスが変化してIKEを再起動するときに、 'can't initiate key exchange'というログが不必要に多く出力されることが あるのを修正した。 [4] IPsecのダイアルアップVPNで、ダイアルアップ側のルータが複数のPPを収容す る構成で、IPCPで割りあてられるアドレスが変化したときに、SAを初期化せず、 IPsecの通信が途絶してしまうことがあるのを修正した。 [5] 以下の設定の組合せで、回線を切断したときに、経路が変化しないにもかかわ らずPPインタフェースに対してRIPngが送信されるバグを修正した。 ipv6 pp rip disconnect send update ipv6 pp rip hold routing on [6] 相手から通話を切断されたときに、そのままオフフックした状態で30秒以上経 過すると発生する以下のバグを修正した。 ・PIAFSの着信があると着信できなくなる。 ・他のアナログポートで外線通話するとその外線通話と通話ができてしまう (混線)。 [7] show configコマンドで、ipsec ike local/remote idコマンドの設定が正しく 表示されないのを修正した。 [8] IKEでquick modeの応答側として動作するときに、IDを設定しているにもかか わらずIDを送信しないバグを修正した。対向がRTシリーズの場合にはIDを使用 しないので、問題にならない。 [9] ダイアルアップVPNの拠点側で、IPCPで割りあてられたアドレスが変化しない ときでもSAを削除するのを修正した。本来は削除しても、SAが更新されるだけ で、動作に問題はないはずであるが、実際は、タイミングによって、センター 側のSAが消えずに残ることがある。 [10] 以下のコマンドをTFTPで設定するときに、"ISDN番号/"と指定したISDNアドレ スを設定できないバグを修正した。 isdn local address isdn remote address call isdn remote address arrive remote setup accept analog local address [11] 認証失敗回数オーバー、MP失敗回数オーバーでのエラー文字列の誤記を修正 した。 [12] NATで、データ部分に設定されたIPヘッダの内容が不正なICMPメッセージを受 信したときにリブートすることがあるバグを修正した。 [13] PP anonymousの名前によるルーティングを指定したときに、発着信の衝突が 発生するとPP anonymousへ着信できなくなることがあるのを修正した。 [14] オンラインヘルプなどで長い文字列を折り返して表示させるときに、2バイト 文字の途中で折り返してしまうことがあり、文字化けを起こしていたのを修正 した。 [15] LEASEDインタフェースに動的フィルタを設定して再起動すると、設定が無効に なるバグを修正した。 [16] 起動直後にLANインタフェースからの送信ができなくなってしまうバグを修正 した。起動のタイミングの問題であり、必ず発生するとは限らない。 ========================================================================== ○ 既知の問題点 ========================================================================== [1] 設定したRADIUSサーバアドレスがshow radiusコマンドで正しく表示されない。 動作上は問題ない。 [2] ip icmp parameter-problem sendコマンドのデフォルト値はoffであるが、ヘ ルプ文ではそれがonと表示されている。 以上