7-6. キャッシュサ−バを利用する `23/04 (1) NetCache C1100 を使う * NetCache C1100 の使い初め 付属の RS-232C ケ−ブルをパソコンに接続し、Windows OS添付の "HyperTerminal" で 初期設定する。ケ−ブルをつないでおいて NetCache の電源スイッチをいれる。だ−っと 出てきて cache> プロンプトがでたら、cache> setup と入れる。 いろいろ尋ねてくるの で、ホスト名とIPアドレスぐらいをとりあえず入れておく。その後はWebブラウザか ら NetCache に例えば http://192.168.1.5:3132/ と管理画面へアクセスする。ネ−ムサ −バのIPアドレス、社内ネットワ−クの静的経路情報、デフォルトゲ−トウェイなどを 設定する。C1100 にはイ−サネットのポ−ト、e0a と e0b がある。 e0a だけ有効にして、 上下あるポ−トの下にネットワ−ク・ケ−ブルをつなぐ。設定にあたっての用語について。 ICP は階層化キャッシュのこと、NetCache 1台だけの利用では関係ない。 透過型プロキ シ設定のための Layer 4 or 7 スイッチ、Cisco WCCPサポ−トのル−タ、Webアクセラ レ−タ、これらも関係ない。autosupport は管理者にメ−ルで知らせる機能である。 NetCache にIPアドレスを振った後は telnet アクセスもできる。 実はWeb画面での 設定をやっていて、どうも設定変更したはずが変わってないなど、動作がおかしい場合が ある。ともかくWebで設定する際は、画面下の [Commit Changes] をクリックすること。 さらに telnet でも確認した方がいいだろう。 NetCache の設定は基本的にはそう設定す ることはないはずと思ったのが、実際 NetCache を内部ネットワ−クにおいてみたところ、 どうもいけない。どういうようにファイルをキャッシュするのか、動きがよく分からない のである。個々の Windows パソコンに、ウィルスチェック・ソフトを入れ、 ウィルスパ タ−ンのファイルを取りに行く。何と一度そのパタ−ンを NetCache のキャッシュに溜め てしまうと、新しいパタ−ンを取りに行かない場合もあるようなのだ。これでは本当に最 新のパタ−ンなのか不安で、ちょっとこのままでは使って下さいとは言えない。 * NetCache C1100 の設定 以下の例では、FireWall-1 で 192.168.1.5 からの DNS のパケット、HTTP の 80 と 443 パケットなどの通過を許可する。社内のパソコンの Netscape や IE でのプロキシの設定 は、HTTP と HTTPS パケットは Proxy Server 192.168.1.5:80 にしておく。NetCache の キャッシュ機能についてはデフォルトのままとし、ここでは特に設定しない。キャッシュ のメカニズムを調べた上で設定することにする。 □ WWW/DNS |202.241.128.3 -------------------- Mail-Server | NetCache □ □ FireWall-1 □ |.1 |.2 |.5 --------------------------------- 192.168.1.0 |.8 |.9 |.201 |192.9.202 ------------- ----------------- % telnet 192.168.1.5 cache> show config.http.ports << HTTP の Proxy ポ−トはデフォルトが 3128 config.http.ports = 3128 になっている。ここでは 80 とする。 cache> set config.http.ports 80 Thu Nov 29 02:38:10 GMT [rc:info]: Closing listen socket for 0.0.0.0:3128 Thu Nov 29 02:38:10 GMT [rc:info]: Listening for HTTP requests on 0.0.0.0:80 cache> ping 192.168.1.1 192.168.1.1 is alive cache> set config.system.timezone Japan cache> show status.system_current_time status.system_current_time = \\ Nov 29 11:49 AM JST 2001 \\ cache> show config.system.dns.* config.system.dns.search = on config.system.dns.domain_tree_search_enable = off config.system.dns.domainname = nix.co.jj cache> date 02081555 << 時刻を合わせる。2月8日の15時55分。 cache> set config.system.routes "net 192.9.201 192.168.1.8 1" 1つ目の静的経路。 cache> add config.system.routes "net 192.9.202 192.168.1.9 1" 経路を追加する。 cache> show config.system.routes << netstat -rn でも経路情報を表示する。 config.system.routes = \\ net 192.9.201 192.168.1.8 1 net 192.9.202 192.168.1.9 1 cache> Ctrl+D で抜ける。 NetCache をル−タ単体として利用することはできないようである。 スタティックル−ト やデフォルトル−トを設定できるので、ル−タとみなせるような気がするが。あくまでも プロキシとして利用する場合に、パケットが経路制御される。Windows パソコンのTCP/IP の設定でデフォルトル−トを NetCache にし、DOS 窓から FTP コマンドを叩く。 どこか インタ−ネット上の ftp サ−バのIPアドレスを叩いても反応はない。 この場合の経路 制御は NetCache はやってくれないのである。 時刻をWWWブラウザで設定する場合。 http://192.168.1.5:3132/ で NetCache の管理 画面へアクセスする。 [Setup]->[System]->[Clock] メニュ−で日付と時刻の設定をする。 NetCache Time Zone: Japan にする。Synchronization Protocol: の設定で、時刻を同期 させることもできる。デフォルトは ntp になっている、他 sntp, rdate, rfc868 が選択 できる。設定はほとんどブラウザでできる。説明も ? をクリックすると出て来る。 製品 には今時、珍しくマニュアルが付いている。何と800ペ−ジもある。 * 時刻を合わせ直した `24/11 cache> date Thu Nov 18 15:51:55 JST 2004 だいぶ狂ってきているみたい。 cache> date 11181534 Thu Nov 18 15:34:00 JST [rc:info]: Time changed ... Thu Nov 18 15:34:00 JST 2004 Thu Nov 18 15:34:00 JST 2004 cache> date Thu Nov 18 15:34:02 JST 2004 * 久々のメンテナンス `28/07 ちょっとトラブルが起きて装置の電源を入れ直すことになった。何が起きたかは下の方の 記述で分かるのだが。この際だからラックにガイドレ−ルを入れて装置を収めようとも思 った。ラックマウントの金具を探したらあったが、 Sun V210 のようにガイドレ−ルはな かった。改めて製品マニュアルも見てみた。紙のマニュアルのぶ厚い808ペ−ジの他に も幾つかのマニュアルがあった。フロッピ−ディスク3枚 NetCache 5.01R2 System Boot Disk1,2,3 とCD−ROM1枚もあった。マニュアル"NetCache Appliance C1100 Series Hardware Guide" に金具の取り付けの事も書いてあった。 cache> show config.* << 今の設定状態を全部表示し、念のためとっておく。 cache> halt << stop the appliance、これで装置を停止する。 パソコンから NetCache に http://192.168.1.5:3132/ アクセスして制御画面にはいって [Maintenance]->[System Control]->[Halt/Reboot] で {Halt} をクリック。 もうすぐに プロキシが有効でなくなった。パソコンでプロキシ設定したWebで確認。 NetCache の Power ランプは緑のままで、20秒ぐらい待ってもそのままだったので、前面の電源ボタ ンを押し電源を切った。それから装置を移動して設置。電源ボタンを押した。有効になっ たかWebで確認して行って1分位して、Google なんかにアクセスできるようになった。 21:20:18 -- NetCache halted by host 192.168.1.10, user admin 21:20:18 -- System shut down with "halt" command. | この間停止 装置の停止と電源オフ、そ 21:24:03 -- Firmware is up-to-date on all disk drives して電源オンでこんな感じ 21:24:03 -- Ethernet e0a: Link up のログが出る。 21:24:04 -- NetApp Release 5.0.1R2 boot complete. (2) NetCache のキャッシュの働き方 * キャッシュの働き方 英文の分厚いマニュアル「NetCache Appliance 5.0 Administration Guide」 の161ペ −ジあたり "How long objects remain in the cache" を読んでみる。それによると、以 下の順番でキャッシュの状態が決められる。"For nonaccelerated requests:"の所である。 0) ファイルにキャッシュしない指示がある。 1) ファイルに明示的に有効期限がある。 2) TTL パ−タンを設定した。TTL( Time-To-Live: 生存時間 ) 3) 適応アルゴリズムによるデフォルトの TTL。 しかし実際の動作を検証してみようとしたのだが、どうもよく分からない。何が今キャッ シュされていて、有効期限はどう付いているのか知る手だてがないのだ。しかも、最初も っとひどいことに、NetCacheをリブ−トしてもキャッシュはクリアされないのかと思った。 [DATA]->[System Status] の表示で、 "Number of objects in the cache 9,332" という ように出て、リブ−トしても0にならないからである。 [DATA]->[HTTP]-> "Cache Hits" や "Cache Misses" が0になるので、ああクリアされているのかと分かった次第である。 0) ファイルにキャッシュしない指示がある 具体的には HTML ファイルしかない。HTMLのヘッダ−部にキャッシュしない指示が記述さ れていれば、キャッシュサ−バにはキャッシュされない。 Netscape などのブラウザにも 同様キャッシュされなくなる。 または 、CONTENT は "no-store" あるいは "private" でもいい。 1) ファイルに明示的に有効期限がある これも HTML ファイルが対象である。NetCache で TTL 値を決めるパタ−ンが設定されて いても、こちらが優先される。ただし、NetCache の "Force Refresh Rate"の値は越える ことができないと英文マニュアルを小生は読んだが。"Force Refresh Rate"は1年に設定 されていて、しかもいじらないようにとも書かれている。HTMLファイルの有効期限は、以 下のように Expires と日付けで指示する。ただし世界標準時 GMT で記述する。またHTTP の CGI 環境変数にも "HTTP_IF_MODIFIED_SINCE", "Weekday, dd-mon-yy hh:mm:ss GMT" という指示ができるそうな。 指定は GMT 時刻でないとだめ。この日本時間は18日の18時である。 2) TTL パ−タンを設定した TTL パ−タンの例、^http:// 1440 が先ず載っている。HTTPアクセスによるキャッシュし たファイルのキャッシュする絶対的な時間を 1440 分とする。時間が経過していき、0に なったら IMS 要求をする。ということは、自動的にファイルをチェックしにいき、 変更 があれば新しいファイルを取るということか。次の例、^http:// 0 20% 4320。 20%で 計算される時間とマックスの時間 4320 分のどちらか小さい方をとる。P.164 の説明では 午後の7時に最後にファイルを修正して、次の朝の9時にファイルをアクセスし、そこで キャッシュされる。この間14時間である。4320 分というのは 72 時間、3日間である。 例えばたった今、昼の1時としよう。どこかのWWWサ−バにアクセスして、HTMLファイ ルを読み込んだ。そのファイルの最終更新日時は5時間前だとすると、その20%は1時 間である。つまり昼の2時まではキャッシュされることになる。その間に、同じファイル をアクセスすると NetCache のログには HIT と出ることになる。 2時を過ぎると元ファ イルをチェックしにいき、ファイルの最終更新日時がキャッシュのと比べて、変更されて いなければ HIT_VERIFY となり、キャッシュからファイルを返すことになる。 TTL パ−タンの書式 = <正規表現 絶対TTL時間 %TTL時間 最大TTL時間> 絶対TTL時間は、ファイルに最終更新日時が定義されていないか、TTL パタ−ンで%TTL時 間が定義されていないか0の場合に使われる。しかし squid の説明をみると、絶対TTL時 間にあたるところは最小TTL時間となっている、 それに適応アルゴリズムによるデフォル トの TTL 時間というのは、説明に見当たらない。 3) 適応アルゴリズムによるデフォルトの TTL 適応アルゴリズムとは、現在時刻からファイルの最終更新日時を引いた時間の半分を、キ ャッシュ時間とする。TTL パタ−ンが設定されていない、ファイルに有効期限が記述され ていない場合 NetCache はデフォルトとして、このキャッシュ時間をとる。例えば、午後 1時にファイルを修正して、3時にアクセスしたとする。その間の経過時間は2時間であ る。キャッシュ時間は1時間となり、4時までは NetCache からキャッシュしたファイル を返すことになる。4時を過ぎて例えば5時にアクセスすると、ファイルの最終更新日時 に変更がないかチェックし、変更がなければキャッシュから返し、更に TTL時間を再計算 する。5時から1時で4時間経過している。その半分の2時間を、新たな TTL値とするの である。つまり変化のないファイルはどんどん TTL 値が大きくなっていくことになる。 ___Default Maximum Age ____ ↓ここでキャッ PM1 PM3 / PM4 \ シュは消える? |------------------------|-------------|------------------------|------------- 修正 キャッシュ 有効期限 最大限界 \_____/\__________/ この間にアクセスす この間になると元ファ れば HITで、無条件 イルに変更がなければ にキャッシュを返す キャッシュを返す。HIT_VERIFY * それでどうキャッシュさせるか 先ずは、キャッシュの対象にしないサイトをあげて NetCache に設定したい。自社の内部 用と外部用WWWサ−バ、個々のパソコンのウィルス・パタ−ンのサイトはキャッシュが 効かないようにしたい。しかし NetCache でどう設定するのか分からないのだ。squid だ と no-cache とか記述するようだが。分からんので、どうしてもならWWWブラウザでキ ャッシュしない URL を、個々に指定してもらおうか。ともかく HTTPに関して、次のよう な TTL パタ−ンを設定したらどうか。 適応アルゴリズムで12時間ぐらいとしてもいい かなと思ったが、せっかくキャッシュサ−バを使うのだから、それらしく使ってみたい。 [Setup]->[HTTP]->[Caching Behavior]->"TTL Patterns:" [ ^http:// 0 20% 4320 ] yahoo や fresheye など皆が多分、頻繁に見にいくサイト。例えば5時間ぐらいで更新さ れているとすれば、その20%で1時間はキャッシュが有効に働く。1週間に1回ぐらい 更新するサイトなら、1日強キャッシュされる。即ちこれら1時間、1日の間に更に変更 される可能性は究めて低いと判断すれば、20%の値は妥当だといえる。いやいや30分、 半日で変更される場合が多々あると判断すれば、10%にするという具合になる。これら の時間を過ぎると、ファイルに変更がないか元にチェックしにいく。%が小さいと頻繁に チェックしにいくことになり、キャッシュサ−バとしての働きは低下する。 (3) NetCache の使い方いろいろ * HTTP に関する設定変数をリストする cache> show config.http.* config.http.ttl.patterns = \\ ^http:// 0 20% 4320 << 最初は何も定義されていない。NetCache のWeb \\ 画面で試しに設定してみた。 config.http.ttl.enable = on config.http.rewrite_uri.prefix = config.http.tunnel.allow_ports = +all config.http.acceleration.acl = config.http.acceleration.rules = config.http.acceleration.enable = off config.http.persistence.server = on config.http.persistence.client = on config.http.tunnel.acl = config.http.acl = config.http.logs.access.format = \\ # (for input details, type "help config.http.logs.access.format") x-timestamp time-taken c-ip x-transaction bytes ... rs(Content-Type) x-note \\ config.http.logs.access.enable = on config.http.stealth_mode = off config.http.force_refresh_rate = 31536000 << 8760時間=365日 デフォルト。 config.http.default_max_age = 2592000 << 720時間=30日 デフォルト。 config.http.transparency = off config.http.privacy = off Default Maximum Age は、元のサ−バが最大限界 config.http.novia = off 時間を定義してない場合のデフォルトの TTL時間 config.http.ip_spoofing = off である。Force Refresh Rateは元のサ−バが最大 config.http.complete_fetch = off 限界時間を定義していても越えることができない config.http.enable = on 時間である。 config.http.cacheability.headers = config.http.cacheability.substring = \\ /cgi << cgi プログラムはキャッシュしない。 .cgi ? \\ config.http.cacheability.cookie_cheat = \\ jpg << 拡張子が jpg などのファイルはキャッシュする。 jpeg gif \\ config.http.ports = 80 * 特定の場所をキャッシュしない [Setup]->[HTTP]->[Caching Behavior] こんな設定でいいのかな?。 Uncacheable Objects by Content Type: 社内のネットワ−クIPは 192.168.1.0 -------------------------------------- で、社内用WWWサ−バは 192.168.1.3。 |acl QQQ dst 192.168.1.0/255.255.255.0 192.168.1.0 上にWWWサ−バがあれば、 |no-cache deny QQQ それらは、全部キャッシュしないように |acl PPP url "http://www.yahoo.co.jp" する。それに Yahooもキャッシュしない |no-cache deny PPP ようにしてみる。この設定の記述のし方 は Squid と同じである。QQQ, PPP とい cache> show config.http.* うのは単なる設定ル−ルの識別子である。 | config.http.cacheability.headers = \\ acl QQQ dst 192.168.1.0/255.255.255.0 no-cache deny QQQ acl PPP url "http://www.yahoo.co.jp" no-cache deny PPP \\ The requested object is proxied but | not cached because of an entry in the stop list. という説明である。 キャッシュしない設定にした場合のログ ↓ 1017193031.1 0.010 192.168.1.7 MISS_PRIVATE_ON_STOP_LIST/200 705 GET "http://192.168.1.3/katou.html" - DIRECT/192.168.1.3 "text/html" - 1017193031.2 0.010 192.168.1.7 MISS_PRIVATE_ON_STOP_LIST/200 5252 GET "http://192.168.1.3/images/top.gif" - DIRECT/192.168.1.3 "image/gif" - キャッシュをした場合のログのある出方 1017193593.6 0.001 192.168.1.7 HIT/200 736 GET "http://192.168.1.3/katou.html" - - "text/html" - 1017193593.6 0.001 192.168.1.7 HIT/200 5283 GET "http://192.168.1.3/images/top.gif" - - "image/gif" - * 特定の場所へのアクセスをできなくする [Setup]->[HTTP]->[General] これで Netscape などで、NetCacheをプ ロキシに指定すると、Yahoo には見にい HTTP ACL: けなくなる。 ----------------------------------- |deny url "http://www.yahoo.co.jp" * URL の書き換え □ 仮想ホスト [Setup]->[HTTP]->[General] |.9 ------------------ 202.241.128.0 URLs to Rewrite: | ---------------------------------------- □ □--- DMZ |http://202.241.128.9 http://192.168.1.8 |.8 |FireWall-1 |http://web.nix.co.jj http://192.168.1.8 ------------------ 192.168.1.0 $ telnet 192.168.1.5 cache> show config.http.* config.http.ttl.patterns = \\ ^http:// 0 20% 4320 \\ config.http.ttl.enable = on config.http.rewrite_uri.prefix = \\ http://202.241.128.9 http://192.168.1.8 << これら反映された書き換えル−ル。 http://web.nix.co.jj http://192.168.1.8 << | FireWall-1 の Proxy ARP の設定で役立つ場面があった。202.241.128.9 はバリアセグメ ントに仮想的においたホストで、実体は DMZ でなく内部ネットにおいた 192.168.1.8 で ある。外からは http://202.241.128.9 へ普通にアクセスできる。しかし、FireWall-1の デフォルトの仕様なのか、内部ネットからは 202.241.128.9 へアクセスできない。 多分 FireWall-1 の [Policy]->[Properties]で、細かな動作の変更ができるのでないかと思う が、へたにいじるのはやめておく。それで、この機能を内部ネットで利用し、URLの書 き換えをやらせることにする。ブラウザには http://192.168.1.8 と表示は出ない。この 機能は NetCache に入ってきたのが http://web.nix.co.jj なら http://192.168.1.8 に 変換してしまう。web.nix.co.jj はDNSサ−バでIPアドレスを拾って来るはずが、そ れもしなくなるのである。まさに URL の書き換えである。 注.ここでの設定は https://xxx https://yyy という記述は受け付けられない。 * いろいろ cache> reboot << stop and then restart the appliance、リブ−ト。 cache> show status.http.* << リブ−トしたら status.http.* の値は全て0にな status.http.HIT = 0 る。 キャッシュしたデ−タは全部クリアされてい status.http.HIT_ACCESS_DENIED = 0 ることが、これで分かる | cache> show status.* << NetCache 全体の状態を表示する。どういうように HIT, MIS したのかなども全部でる。 cache> route add net 192.9.201 192.168.1.8 1 << これでも静的経路を設定できるが リブ−トすると設定情報は消える。 静的経路の設定をして、さあ働いてもらおうと NetCache を稼働させたら、同じセグメン トにあるホストの telnet アクセスがおかしくなってしまった。INDY が 192.168.1.3 と いう具合にあって、その INDY へあるいは INDY からの telnet ができなくなった。苦肉 の策として、ポ−ト番号を 203 とかに変えてやれば一応できた。どうも telnetのデフォ ルトの 23 番ポ−トへのアクセスは、NetCacheがブラックホ−ルみたいに吸い込んでしま っているのでないか。それで NetCache の設定を初期状態にすべく、静的経路の設定を全 部消したら、telnet は普通にできるようになった。 そして、先の設定では以前あったネ ットワ−クの静的経路もそのまま設定していたので、現在あるネットワ−クの静的経路情 報だけにした。これで telnet の問題は起こらなくなった。 * ログの整理など cache> df Filesystem kbytes used avail capacity Mounted on vol0 7814708 145272 7669436 2% /vol/vol0/ ↑ cache> nclog -l ログの分が少なくともある Saved logs: ので容量は0にはならない。 /logs/auditlog.0 1970.01.01.09.00 0 /logs/auditlog.1 1970.01.01.09.00 0 * /logs/streaming_log.2 2002.02.14.12.09 1495 /logs/streaming_log.0 2001.11.28.13.49 6011 /logs/streaming_details_log.0 2001.11.28.13.49 4291 /logs/streaming_details_log.1 2002.02.08.16.54 2800 /logs/streaming_log.1 2002.02.08.16.54 3918 /logs/messages.0 2002.02.10.00.00 24695 * /logs/http_log.2 2002.02.14.11.56 324915 /logs/auditlog.2 1970.01.01.09.00 0 /logs/messages 2002.02.14.12.11 14573 /logs/auditlog 1970.01.01.09.00 0 /logs/auditlog.9 1970.01.01.09.00 0 * /logs/streaming_details_log.2 2002.02.14.12.09 1065 cache> nclog -s << ログを新しくする。ログを全部消すなり、0にす cache> nclog -l ることはできないみたい。 | /logs/http_log.2 2002.02.14.13.20 324946 * /logs/http_log.3 2002.02.14.13.20 216 | cache> nclog -d http_log.2 << http_log.2 を消去する。 cache> nclog -t http_log.3 << 新しいログの最初の状態。 #Software: NetCache NetApp/5.0.1R2 #Version: 1.0 #Start-Date: 2002-02-14 04:20:25 #Remark: http #Fields: x-timestamp time-taken c-ip x-transaction bytes cs-method cs-uri x-username x-hiercode rs(Content-Type) x-note * Web Access のログを見てみる cache> nclog -t http_log.3 1014090328.7 0.001 192.168.1.5 HIT/200 537 GET "http://www.lycos.co.jp/images/ searchbutton_t.gif" - - "image/gif" - 1014090328.7 0.001 192.168.1.5 HIT/200 751 GET "http://www.lycos.co.jp/images/ logo_link3.gif" - - "image/gif" - [ NetCache のキャッシュ時間を出すプログラム ] #include ログの 1014090328.7 は、1970年1月1日0時か main() { らの経過時間、秒.ミリ秒。 参考プログラムを示して long t1,t2; おいた。 time(&t1); printf( "%ld %s",t1,ctime(&t1)); /* 1014111006 Tue Feb 19 18:30:06 2002 */ t2 = 1014090328; printf( "%s",ctime(&t2)); /* Tue Feb 19 12:45:28 2002 */ } * システムログを見てみる `28/07 [Data]->[Log Files]->[Messages] 画面の "(1) Select a Log File"で messages [日付] が最新のログファイル。telnet で入ってコマンドで NetCacheのシステムログを見てみる。 cache> nclog -t messages これだと最新のから10個出て来る。 以下で100個出せる。 telnet アクセスしたログも出る。 定常の状態では1時間毎に kern.uptime.nc というの が出るのみ。以下では221日間、順調に稼働してきたことが分かる。messagesログには HTTP キャッシュの様子なんかは出ない。 貴重なトラブル発生ログ、装置の温度が50度 を越えて NetCache が緊急停止した時のログ。この時 NetCache は完全に止まってはいな くて前面パネルの Status ランプがついていた。pingは通らない。ボタンを押して起動し た。なぜ50度もなったか。夏の暑い休みの日で、幾ら部屋が密閉していても50度もな るか?。原因はほこりだった。2001年に設置して以来、手近のラックにいれて稼働さ せていた。装置前面のパネルをぱかっと外すことができた。ほこりがたんまり溜まってい た。掃除機で吸ってやった。多分温度センサ−が装置前面の辺りにあるのだろう。 cache> nclog -t -100 messages Sat Jul 13 03:00:00 JST [kern.uptime.nc:info]: 3:00am up 221 days, 17:30 ... Sat Jul 13 04:00:00 JST [kern.uptime.nc:info]: 4:00am up 221 days, 18:30 ... | Sat Jul 16 13:51:23 JST [monitor.shutdown.overTemp:EMERGENCY]: Emergency 続く shutdown: System too hot! Current temperature is 51 Celsius, ABOVE 続く critical limit of 50 Celsius * Netscape Navigator のキャッシュデ−タ エディタでファイルを最後に編集した時刻が、Last Modified 最終更新日時として、ブラ ウザのキャッシュに蓄えられているのが分かる。何が Last Modified なのか Netscapeで 調べてみた。キャッシュした時刻だったりしたら、また意味が変わってくるので。 % ls -l ../htdocs/ppp.html -rw-r--r-- 1 root sys 363 2月 18日 18時18分 ppp.html ../htdocs/ppp.html ------------------------------------------------------------------- |henomohe | | ↑ ↑ | 有効期限 "Mon,18-Feb-2002 09:19:00" というのでもいい。 | | カンマや横棒などは無視するみたい。 Netscape Navigator の [View]->[Page Info] 日本語版では[表示]->[ペ−ジ情報] ---------------------------------------------------------- | Location: http://192.168.1.5/ppp.html | | File MIME Type: text/html | | Source: Currently in disk cache | |Local cache file: 14/cache3C70C7740014B53.html | | Last Modified: Monday, 18-Feb-02 18:18:13 Local time | << いわゆる JST。 | Last Modified: Monday, 18-Feb-02 09:18:13 GMT | << 世界標準時。 | Content Length: 363 | | Expires: Mon Feb 18 18:19:00 2002 | << これも JST 時刻。 | Charset: Unknown | ・[再読み込み] :元ファイルをチェックしにいき変更がなければ、キャッシュから取り出 す。ただし、カウントなど cgi-bin は元ファイルをアクセスしにいく。 ・URL バ−のところを再度リタ−ンキ−を押すと、全部キャッシュから取り出す。 ・[Shift+再読み込み] :キャッシュはチェックしないで、元ファイルを直接取りにいく。 [編集]->[設定]->[詳細]->[キャッシュ] の画面 Windows 98, Netscape 4.75 ----------------------------------------------------------------------------- | メモリ キャッシュ [ 1024 ] Kバイト [メモリ キャッシュをクリア ] | ディスク キャッシュ[ 7680 ] Kバイト [ディスク キャッシュをクリア] | | ディスク キャッシュ フォルダ [C:\Program Files\Netscape\Users\katou\Cache] | |キャッシュしたドキュメントとネットワ−ク上でのドキュメントとの比較 | ●セッション毎 | ○毎回 | ○しない ※●セッション毎がデフォルトになっている。○しないだとキャッシュにあれば、それを 直ちに返す。ディスクに入ったキャッシュは、マシンを止めても消えない。消すには上 のメニュ−をクリックする。 (4) Proxy と Cache いろいろ * キャッシュの働き 皆違うところを見にいくようだと、キャッシュ・サ−バを設ける意味はない。誰か最初に 見に行けばそれがキャッシュ・サ−バに保持される。次の人達が見るときはパット見える。 学校の授業なんかで生徒が皆同じとこを見にいく、そんな場合に有効である。 Microsoft のサイトなんか、10メガとかのパッチを皆で取りに行くにはキャッシュが有効である。 コンテンツが変更されているかチェックして、変更されている場合のみダウンロ−ドする。 先読みしてくれる。画面を読み出している間にキャッシュ・サ−バは次の画面を読み込ん でいる。ある一定時間、キャッシュしたコンテンツを保持する。 透過的モ−ドというのもある。Netscape などWWWブラウザで Proxy の設定をしなくて も済む。Squid も透過的モ−ドをサポ−トする。CacheFlow も NetCache もサポ−トする が Layer 4 Switch がいる。Linux ではカ−ネルでパケットを横取りしてサポ−トする。 階層化キャッシュの ICP( Internet Cache Protocol )、受け側 UDP/3130 を使う。Squid や NetCache に実装されている。プロキシ・サ−バを親子(多段)または兄弟(並列)関 係で配置して、キャッシュしたデ−タを効率的に利用を計る技術である。よい子ではまず 関係ないと思ってよい。 HTMLファイルはヘッダ−部の記述で、キャッシュ・サ−バに蓄えられないように記述でき る。。 コンテンツの有効期限をなしに する の記述でもいいみたい。 ただのプレ− ンテキストや FTP でとったファイルには、そんな指示はできんよな。 ざっと見たところ、ほとんどのサイトで "Expires" や "no-cache"の設定はされていない。 フレッシュアイ www.fresheye.com の速報ぐらいは、ファイルの有効期限が設定されてい るかと思ったら、何も設定されていなかった。いろいろ探して、丸善 www.maruzen.co.jp と無料掲示板の teacup.com でキャッシュしない指示を見つけられたぐらいである。 Netscape Proxy Server でのこと。Cache Refresh Interval の初期設定は2時間。 コン テンツが変化してないか、そのつどチェックするか、 Cache Refresh Interval の時間が 過ぎていればチェックするか設定できるようである。 キャッシュ・サ−バは HTTP の他に DNS, FTP, NNTP もキャッシュする。HTTPS のパケッ トはどうなるか。NetCache や CacheFlow 製品は HTTPSパケットもキャッシュするようだ が。Cookieなんかもどうなるか。セキュリティに絡む部分は要チェックである。 コンテンツで引き数をとる cgi-binのスクリプト/プログラムは、キャッシュしても意味 はない。引き数によって毎度結果が変わるからである。 それに拡張子 xxx.asp, xxx.php といったのも、引き数が渡される場合はキャッシュの意味はない。 Microsoft のコンテンツ開発ソフトでは、何も引き数を取らないのに拡張子を xxx.aspと して ASP( Active Server Pages ) ファイルにする場合があるようである。このため一概 に全部 xxx.asp ならキャッシュしないという訳にも行かないが、判断はつかない。 インタ−ネットのWWWサイトに、Proxy Checker というソフトを利用できる所が幾つも ある。そこにプロキシサ−バを通してアクセスすると、アクセスした元ホストのIPアド レスが出て来る。HTTP パケットの中に元ホストのIPが記録されている?。そうです。 ストリ−ミングのデ−タが入っているホストと NetCache。 クライアントは NetCache の IPにアクセスする。NetCacheはアクセスされたら、元のデ−タがあるホストにアクセス しながら NetCache 自体にもキャッシュして、クライアントにもデ−タを配信する。これ が On Demand Cache。クライアントは別個に、幾つかのデ−タも別個にアクセスできる。 IETF WPAD( Web Proxy Auto Discovery ) プロトコルで自動的に適切なプロキシサ−バを 探す。プロキシサ−バのホストとポ−ト番号を指定する。WWWサ−バのスクリプト PAC ( Proxy Automatic Configuration ) 機能を利用する。 * キャッシュ・サ−バのログについて キャッシュ・サ−バに残るログは、オリジナルWWWサ−バへコンテンツを取りに行った ログか、それともブラウザに返したコンテンツのログか。両方です。ユ−ザが最初にアク セスしているプロキシサ−バなら、どのようなコンテンツをアクセスしたか正確なログが できる。多段プロキシのようになっていると、2番目以降のプロキシサ−バでは分からな いことになる。キャッシュするためにコンテンツを、アクセスしたログが出ることになる。 社内にプロキシ/キャッシュ・サ−バを設置し、ここを通ってインタ−ネットへWWWア クセスさせるようにすると、ログが全部残るので、ユ−ザの動きを把握できることになる。 これはリバ−スキャッシュの場合でも同じことである。(株)リフレクションのサ−ビスの 話を聞いた際、ログはキャッシュの記録になるので、お客さんの利用状況を分析するのは あてにならないと言っていた。いや、そんなことない。キャッシュのログとコンテンツの ログが混ざっているので、それを切り分ければいいはずである。 ブラウザ キャッシュ WWW ブラウザ キャッシュ WWW □--------■--------● □--------■--------■--------● 1 <----- 1 1 1 <----- 1 1 1 2 <----- 2 2 2 <----- 2 2 3 <----- 3' <------ 3 3 <----- 3' <------ 3 3 4 <----- 4" <------ 4' <----- 4 * プロキシ/キャッシュ・サ−バ製品 2001 年頃 NetCache --- CTC推奨 Network Appliance 製 > NetCache C1100 約100万円。8.5GB SCSIディスク, 256MB メモリ, 2x10/100 Base-T。 HTTP, HTTPS, FTP, NNTP, DNS キャッシング。ストリ−ミングサポ−ト。URL フィルタ リング機能あり。1U ラックタイプ、奥行き55.88cm。分散キャッシングの研究 Harvest プロジェクトが 1993 年頃できた。その成果が NetCache とフリ−ソフトの Squid。次 の上位機種が約170万円、最上位機種は約760万円。マニュアルは英文のみ。 CacheFlow -- TIS、住商エレクトロニクスなど推奨 > NetCache Model CA-610。約100万円弱。4GB IDEディスク, 128MB, 2x10/100 Base-T。 HTTP, HTTPS, FTP, DNS キャッシング。CacheOS 搭載。1Uラックタイプ。この上のタイ プは CA-615, 18GB Ultra-Wide SCSI, 384MB, 約200万円弱。設定費用は20〜30 万円。マニュアルは英文のみ。http://www.cacheflow.co.jp/。 パソコンメ−カのもの > コンパック製、COMPAQ TaskSmart C シリ−ズ 1200R 78万円。他2つのモデルがある。 256MB, 9.1GB。閲覧頻度の高いコンテンツを指定する。時刻とタイミングでキャッシュ する。専用OSをプリインスト−ルしたWebキャッシングサ−バ。 デル製には DELL PowerApp.cache100, 256MB メモリ, 18GB 最大ディスク容量。 Cobalt にもカタログ見 ていたら平ぺったい製品があった。 SonicWALL にある機能 > プロキシリレ−、自動的にプロキシを転送する機能。プロキシ・サ−バのホスト名また はIPアドレスと、プロキシ・サ−バのポ−ト番号を SonicWALLに設定する。LAN側 に設置したパソコンは、それぞれでプロキシの設定をしなくても済む。 ただし TCP/80 パケットだけである。SonicWALL はこのパケットを横取りして、指定のプロキシ・サ− バにパケットを送る動きをする。キャッシュはしない。 これらの製品は HTML や FTP のファイルをためるだけでなく、 いろいろな付加機能が付 いているのもある。DNS を引いたホスト名とIPアドレスの対のデ−タをキャッシュした り、漢字コ−ドを変換したり。HTTP セッションを Keep-Alive して、 効率よくWWWア クセスするとか。NetCache にはオプションになるが、 有害コンテンツを排除するフィル タリング機能もある。またプロトコルやIPアドレスやホスト名によるアクセス制限がで きるとか。ともかくこのプロキシ/キャッシュ機能というのは使いでがある。 * 参考 http://www.matsusaka-u.ac.jp/~okumura/networking/ > 松阪大学の奥村先生のネットワ−ク管理メモ、squid の項。20%ぐらいの効率とか。 http://home.netscape.com/ja/about-netscape/index.html > Netscape Proxy Server 2.5 の日本語訳のマニュアルあり。 http://cache.jp.apan.net/index-j.html APAN Tokyo Root Cache server( ATRC ) > Squid FAQ の日本語訳などあり。 APAN( Asia-Pacific Advanced Network ) Squid のアクセス・ログのフリ−ソフト cache-stats。 http://www.netapp.co.jp/tech_library/ > 技術ライブラリ、NetCache 企業ネットワ−クの改善。 「NETWORK MAGAZINE」2006/09 P.92〜,"第10回 プロキシキャッシュをいれたら応答速度 > が低下!?"。 * ここも参考になりそうです 「UNIX MAGAZINE」1999/03, P.23〜33, "Squid のインスト−ル"、小山洋一。 PAC( Proxy Automatic Configuration ) というプロキシ・サ−バを探す機能について。 自動設定ファイル JavaScript, VB Script xxx.vs, xxx.jvs, xxx.pac mime.types application/x-ns-proxy-autoconfig pac pac ファイルの例 function FindProxyForURL( url, host ) 透過型、非透過型で設置でできる?。実 { 際に使ったことはない。pac ファイルは return "PROXY xxxx:3128; DIRECT"; プロキシサ−バに置いておく位しか頭に } はない。どこそこのIPアドレスは利用 function FindProxyForURL( url, host ) できないとか細かな制御ができるらしい。 { if (isPlainHostName(host) || dnsDomainIs(host,"digaku.ac.jp")) return "DIRECT"; else return "PROXY xxxx:3128; DIRECT"; } 「UNIX MAGAZINE」`22/01, P.184〜188 "連載:サイバ−関西プロジェクト 甲子園2001(2)"。 高校野球インタ−ネット中継システムと言うことで、ストリ−ミングであるとか、大容量 コンテンツだとかを扱う実証実験をやっている話である。最新システムではWWWサ−バ Chamomile、http://iplab.aist-nara.ac.jp/~eiji-ka/chamomile/ を、リバ−ス・プロキ シ−として稼働するように改造し、元のWWWサ−バから自律的にコンテンツを取得する ようにした。元のWWWホストでは、コンテンツ公開制御をするため HTTP のヘッダ部に 追加した。リバ−ス・プロキシ−はその HTTP ヘッダ部を見て、元コンテンツが更新され たと判断し、元WWWサ−バからコンテンツを取得する。これらシステムの負荷テストに http_load プログラム、http://www.acme.com/software/http_load を用いた。 HTTPリク エストを連続して発行するベンチマ−ク・ツ−ルのプログラムである。ともかくこの連載、 じっくり読むといろいろ参考になることがありそうである。 (5) キャッシュサ−バの運用 * キャッシュサ−バはどうする 多分 2004 年頃 BlueCoat がよく売れているもよう。前は Cache Flow と言った。 買収されて製品名が変 わった。1Uのタイプで価格は300万円近い。URLフィルタ−の機能が面白い。ユ− ザ分のライセンスが別途いるが、1ユ−ザ4千円前後?。日本語で貴方はここは見てはい けませんと画面を出したりできる。キャッシュサ−バというより、URLアクセス制限& ログ取り装置といった方がいい。日商エレクトロニクス発行「NET Frontier」に記事があ った。2004 May Vol.19, P.24〜27, "BlueCoat ProxySG シリ−ズ、SGOS Ver.3.x ポリシ −概要【第1回】、ビジュアル・ポリシ−・マネ−ジャとコンテンツ・ポリシ−言語につ いて"。ストリ−ミングのデ−タを扱うなら NetCacheの方がそれなりの機能がある。しか し、キャッシュサ−バは基本的にはもう必要ないだろう。インタ−ネットの回線が遅い時 代には役に立ったが。キャッシュ機能はいらないとしてもプロキシ機能はあった方がいい。 プロキシだけならマシンは DOS/V Linux で Apache の Proxy 機能で十分でないか。 * NetCache 動きがおかしいです 2004/09〜 `24/09、NetCache 介して LinkProof を通していると、どうも変?。 Google に一度でつ ながらないことがしばしば。Windows Update にもつながらない。NetCache をプロキシ利 用しないようにすると問題ない。 2005年春、FireWall-1 のマシンをいじったら不思 議と直った。`26 初め、その後またおかしくなった。FireWall-1 を Ultra 10 から V210 に変えたがだめだった。ブラウザの IE で NetCache を介すと Google で "ペ−ジを表示 をできません"と結構なる、Windows Update のサイトにもアクセスできたりできなかった りする。NetCache を介さないと、すかすか繋がる。NetCache は買ったままでバ−ジョン 5.0.1R2。IE を [ツ−ル]->[インタ−ネット オプション]->[詳細設定] で、"プロキシ接 続で HTTP 1.1 を使用する" にチェックを入れた、デフォルトはチェックなし。NetCache にも "Enables NetCache to act as a DNS proxy cache" にチェックを入れてみた。何と なくこれまでより繋がるようになった気がする。いやあんまり変わらないか。 * NetCache はそろそろ買い替え 2006 年梅雨 2001年秋に、このよい子のネットワ−クでは購入したことになっている。もう十分使 ったぞ。もうそろそろ暇をやってもいい頃合だ。お払い箱でなく、暇をやるという。ハ− ド的なトラブルは一度もなかった。今度は BlueCoat だな。 Interop 2006 で聞いた。も うキャッシュ機能はいらんよね、プロキシだけで。説明員いわく、だいたい見解はニ通り に別れるが、キャッシュ機能もあった方がいいと思うよ、と言っていた。 BlueCoat の場 合、キャッシュのパラメ−タで調整うんぬんというのはないそうだ。ユ−ザがアクセスし ていない間に、コンテンツを取りに行くのだそうだ。そんな仕組みならキャッシュもあっ てもいいか。パソコンは500台あるよと話したら、同時アクセスユ−ザ数がうんたらで、 URLフィルタリング無しのタイプなら125万円の製品でいいよとのこと。前、調べた 際はURLフィルタリング込みだったのでないか、えらく高いと感じた。ブ−スにあった その製品は1Uなのだが、奥行きも全然なくえらくコンパクトな感じがした。 お勧め:ProxySG シリ−ズの BlueCoat Model 400-1、ディスク 40GB x 2、メモリ 512MB、 同時アクセスユ−ザ数100(総ユ−ザ数の10〜20%程度が目安とのこと)、10/100Base-T x 2、 サイズ 43.7H x 442W x 350D。URLフィルタリングのオプションは i-Filter for Blue Coat 500ユ−ザが約112万円。ProxySGの保守料金にはWebアクセスのトレ−スを する BlueCoat Reporter の Standard 版が利用できる。Reporter を利用するには別途サ −バがいる。BlueCoat Reporter の Enterprise 版は120万円。 Reporter は人事が泣 いて喜ぶ機能だ。特定の人をタ−ゲットにして、勤務時間中に業務に関係ないサイトを見 ていたと証拠を突きつけることができるというもの。パンフレットにも、管理者/人事用 ビュ−の説明にそのようなことが書かれている。我々ネットワ−クのエンジニアにとって 有難い機能がテクニカル・ビュ−。Webトラフィックのパフォ−マンス、帯域幅ヘの影 響、ストリ−ミングのトラフィックが測定できる。 * 今使っている NetCache はまだ使えるか `26/06 現在のは NetCache C1100。2001年頃導入した。HTTP のプロキシさえできればいいや と購入したので、ストリ−ミングのことは考えていなかった。 NetCache でストリ−ミン グ対応にするには、別にライセンスが必要である。この機種はもう保守は終了してしまっ ていて、ストリ−ミング対応にはできない。ファ−ムウェアのバ−ジョンアップもできな い。ファ−ムウェアには 5.x 系と 6.x 系がどうもある。これらで決定的にファ−ムウェ アが違っているのか。HTTP の仕様はこれまで、 そう変わっている訳ではないので、ほと んど機能的には違わないのでないか。それと Google や Windows Update サイトへのアク セスがおかしいという話。裏付けとなる記事を見つけた。ということでただのプロキシや キャッシュサ−バとしては、まだ使える。2006/06/30にSI業者の人に聞いて知ったのだ が、米国 NetApp 社は NetCache を米国 BlueCoat Systems に売却した。 [Setup]->[Summary]->[General] 画面でサ−ビスとライセンスの状況を確認する HTTP と DNS は enable。NNTP, RTSP, MMS, ICAP, SmartFilter などは disable。 NNTP, RTSP, MMS service is not licensed。 [Setup]->[System]->[Licenses] NNTP Licenses [ ] Network News Transfer Protocol。 MMS Licenses [ ] Microsoft Windows Media 3 & 4 streams。 RTSP Licenses [ ] RealNetworks RealSystem G2, Apple QuickTime 4。 ※MMS: Microsoft Media Services、RTSP: Real Time Streaming Protocol。 NetCache の新しいのを探していて、富士通のキャッシュサ−バ ETERNUS NR1000C series を見つけた。説明にどうも NetCache の文字が出て来る。富士通が Network Appliance社 とOEM契約した製品だった。http://storage-system.fujitsu.com/jp/products/。1U タイプなら C1300、101万円(税別)より、ディスク最大 480GB、メモリ 1GB。富士通の ストレ−ジ製品全般を ETERNUSと言って、テ−プ装置、NAS、SAN、キャッシュサ−バなど の製品がある。ん?、これら全部が Network Appliance 社の物か?。 NR1000C series のよくあるご質問(FAQ)がいい。 全部100項目ぐらいあるのでない か。質問に、NR1000C 経由で Windows Update ができない。 答えは、Windows 2000 以降 では、Windows の問題で、Proxy を設定していると、NR1000C に限らず自動アップデ−ト ができないことがある。まさにこのことなのだが、困った話だ。Windows が悪いといわれ ても、多い方が実質的に勝ちなわけで。 結局、Windows Update にちゃんとアクセスした ければプロキシは使うなということになってしまう。 * クライアントIPを出さないようにしよう `26/06 NetCache と Google に Windows Update の問題を調べていて、config.http.privacy=off パラメ−タがでてきた。 NetApp のサイトの "NetApp Library: Techinical Reports" に、 幾つかのレポ−トがあり、 "TR-3262: NetCache Appliance Deployments: Understanding and Troubleshooting Routing Loops (PDF)" に、このパラメ−タが出てきた。 NetCache の Version 5.0以降での話である。このレポ−トはこれでよく読まないといけないのだが。 config.http.privacy = off これは下の画面の Client Privacy Enable。 config.http.novia = off これは画面には設定するところが無かった。 [Setup]->[HTTP]->[General] HTTP Enable: 〆 Enable or disable HTTP services Authenticate HTTP Requests: □ Require authentication for HTTP requests HTTP ACL: HTTP Proxy Ports: [ 80 ] URLs to Rewrite: [ ] MMS ASX Rewrite Server: [ ] Client Privacy Enable: □ Enable or disable HTTP privacy Do Not Report Errors to Selected Clients: [ Off ▽] "Client Privacy Enable" を enable にすると、クライアントのIPアドレスを HTTP の X-Forwarded-For MIME ヘッダ−に入れなくなる。config.http.privacy = on すると入れ ない。デフォルトでは off になっていた。 つまり、内部ネットワ−クのホストから外へ のアクセスに、ブラウザを NetCache を介して使うと、HTTPパケットに自分のIPアドレ スが書かれてしまう。ファイアウォ−ルでは HTTP パケットの中身はそのままで、いじら ない。結果、相手WWWサ−バに到達するまで、自分のパソコンのIPアドレスが書かれ たまま行ってしまうことになる。config.http.novia = off は、プロキシの名前をパケッ トに書く。書かないようにするには on にする。パケットの様子を見てみたい。インタ− ネットにある、適当なプロキシ・チェッカ−を見つけてアクセスしたのが下である。 --------------------------------------------------------- | 診断くん Ver 0.80 |一般的な情報 |REMOTE_ADDR 202.241.128.2 << ファイアウォ−ルのWAN側IP。 | | | |その他の情報 |HTTP_X_FORWARDED_FOR 192.168.1.3 << ブラウザを使ったパソコンのIP。 |HTTP_VIA 1.0 cache (NetCache NetApp/5.0.1R2) |HTTP_CONNECTION keep-alive 社内にある予備のプロキシ Apache を介してやってみた。 HTTP_X_FORWARDED_FOR はなし、 HTTP_CONNECTION は(none) だった。こちらでは Google などの問題はないのだ。 しかし こりゃ、内部のネットワ−クのホストのことが丸分かりだ。だいぶ前にプロキシ・チェッ カ−は試してみていたのだが、ふ−んと流していた。ひょっとかすると、プロキシをかま しているにも関わらず、 FireWall-1 で内部ネットワ−クのホストのIPアドレスを記録 してカウントするのは、これを使っているのかも。いろんな想像をしてしまいます。 * LinkProof と NetCache の複合問題 `27/03 / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ \____________________________________/ TCP: | IIJ: |2.1 : □TCP DNS : □IIJ DNS : : Router1■ Router2■↑.27 で外へ |.1 |.25 | 仮想IP 192.168.50.24/29| | ◇ ◆ |.26 | |.4 |.3 ----------------- LinkProof --------------------------- 202.241.128.0 | (2) (1) | Branchはこ | A-Gate | (3) | れまでの設 |.2 □ ■hostA ----------------- 定のまま FireWall ------- |.3 |.1 .9| |hostG|--------------- 192.168.2.0 |202.241.128.0 ------- □hostB PC△.2 |.2 |.1 DNS は 2.1 にすること --------------------------- 192.168.1.0 Gateway 202.241.128.9 わざわざこういう構成もテストしてみた。これで何がしたいか、できるか。内部ネットワ −クのパソコンで NetCache を経由して LinkProof も通ると、Google やWindows Update の挙動がおかしいという問題があった。そこで LinkProof だけ通る場合は、 一体どうな るのか調べてみたかった。そもそも NetCache が問題なのか LinkProofの問題だったのか、 はっきりさせたいという訳である。Googleでは次の画面を出すのに出て来ないことがしば しばだった。2、3回やると出て来るという変な話。試した結果 Google はおかしくなか った。Windows Update も問題なかった。やはり NetCache がおかしいのだ。 * プロキシ/キャッシュサ−バは `28/02 2001年頃に NetCache を購入しずっと動いている。もう新しい製品に置き換えるなら やらないといけない。実質 BlueCoat 社の製品しかない。NetCache は BlueCoat社に買収 された。製品はアプライアンスの1Uでかなり音はする、空調ル−ムに設置するしかない。 もし買うとすれば貸してもらって事前にテストしたい。 現状 NetCache と LinkProof が あると、複合的におかしくなる場合がある、Microsoft の Update サイトにちゃんとアク セスができなかったりする。しかし買うのはやめようか。`28/02、キャッシュサ−バはも ういらんのでないか。いるとしたらプロキシサ−バ、これも別になくてもいいぞ。ファイ アウォ−ルで全部のパソコンを通すようにする。ネットワ−クIPアドレス単位で通すよ うにすればいい。でもやっぱりいるかな−。全パソコンで、DNSのIPアドレスの1つ を NetCache のIPアドレスを指定しているし。ボットなんかに感染したパソコンからプ ロキシなしで直接、インタ−ネットにアクセスできてしまうのもよろしくない。部門用の UTM を全社に設置すればOKになるのだが。 URL フィルタリングしたい、やらなければいけないのというのであれば、BlueCoat SG を 入れてプロキシ/キャッシュとURLフィルタリングをすることは意味はある。 プロキシ/ キャッシュだけなら Mail-Store に Squid を入れればいい。Mail-Store では InterScan が動いているが、ウィルス検出の負荷はほとんどかかってない。DefenseProが大方のウィ ルス入りメ−ルを弾いている。しかしウィルスの入ってないメ−ルを InterScanは一応な めている訳で、その負荷はかかってはいる。 InterScan eManager がやっている迷惑メ− ルフィルタ−、キ−ワ−ドを50程度にしているので、これもそんなに負荷はかかってい ないと思われる。BlueCoat のURLフィルタリングは、スパイウェアが入っているサイトへ のアクセスをできなくするのは望ましいが、それ以外は検閲的な話で面白くはない。スパ イウェア防止のためならマカフィ−なんかのアプライアンス Secure Internet Gatewayを 考えた方がいいと思う。spam対策に何か1つ入れないといけないし。 * InterScan VirusWall は利用できないか `28/08 これまで Mail-Store のマシンでウィルス一括チェックしている InterScan は、 正しく は InterScan VirusWall Enterprise Edition という。この製品は2つのソフトウェアで あって、InterScan Messaging Security Suite と InterScan Web Security Suiteである。 先のはメ−ルのウィルスチェック、後のはホ−ムペ−ジのウィルスチェックとフィルタリ ングである。トレンドマイクロ社は InterScan Messaging Security Suite は略してIMSS、 InterScan Web Security Suite は IWSS と呼んでいる。IWSS は元はホ−ムペ−ジのウィ ルスチェックだった。今でも HTML の悪意のある IFRAME 記述により自動的にダウンロ− ド型のウィルスが入ってくるのを防ぐ。InterScan 導入当時 HTTP と FTPもウィルスチェ ックをしようと思った。しかしパケットをファイアウォ−ルから横取りしてチェックして 戻すという、FireWall-1 の CVP 機能と連携が芳ばしくないということでやらなかった経 緯がある。それで今日までメ−ルの SMTP だけチェックしている。 IWSS は HTTP のウィルスチェックだけでなく、 ホ−ムペ−ジのフィルタリングの機能も 追加され充実してきた感がある。 IWSS 3.1 からはWebレピュテ−ションができるよう になった。多分2007年末頃の対応だったのでないか。しばらく見ないと新しいバ−ジ ョンが出てきたり機能も合併したり、はたまたライセンス体系も変わっていたりするので 正直、理解するのが困難である。トレンドマイクロに限った話ではないが。ともかく新し いカタログに気になる記載があった。プロキシサ−バとしても利用できると書いてあった。 ただし処理には負荷がかなかり掛かるので、メ−ルのチェックとWebのチェックはサ− バは分けてくれとある。プロキシ/キャッシュサ−バの NetCache がダメになった場合に、 IWSS が代わりにならないか。多分問題ないと思う。FireWall-1 の CVPうんぬんは関係な い。今の NetCache に並べておけばいい。パソコンのブラウザのプロキシのIPアドレス を変えればすぐに利用ができる。キャッシュは効かないが、それは大した問題ではない。 * NetCache の役目を終える最後の様子を `2c/02 Webでパフォ−マンスが見える、らしいということをSI業者さんから聞いた。滅多に 触ることのなかった装置だが見てみる。http://192.168.1.5:3132/で管理画面へアクセス。 いやグラフらしきものは無い。メニュ−の [Data] の数値で判断するのか。以下めぼしい 設定を拾った。[Data]->[System Configuration]->[General] slot 0: System Board 433 MHz,Memory size 256MB。で auto-100tx-fd-up と表示されているので 100Mbps でつなが っているはず。[Data]->[System Status] 見たら Time Information の稼働時間が1 Days, 2 hours,1 minutes となっていた。ひょっとして昨日再起動したということ?、止めたり してないが。[Setup]->[System]->[Clock] の Manual Clock Settings で日付も時刻もま るで合ってない、Time Zone だけは Japan になっていた。でも画面の右上に Time Stamp が表示されていて、UTC 時刻だがこれはほぼ合っているようだ。 * 一体何だったのか `2b/10/m プロキシ経由で www.ana.co.jp にアクセスできないと社内から指摘あり。www.asahi.com もアクセスできなかった、パソコン再起動してやったらアクセスできた。 www.ana.co.jp も一旦できたのに、すぐにまたアクセスできなくなった。NetCahceの管理画面でDNSを 以下のように調整したら、www.ana.co.jp も出るようになった。ひょっとして一番最初に 202.241.128.3 を見るのか?。直感的には表示された項目の上の X.2 を最初にみるように 思うが。ここからは `2h/12/s に書いた。ブラウザの表示速度はDNSの応答速度に大き く左右される。適当に設定項目に記入してはならない。このことは実はこの時期にはっき りと認識した。分かっていそうなことだが、しっかりとは認識してなかった。漠然とそう だろうなと思っていた。しかし幾つか指定記入できるDNSサ−バがあって、どれが一番 レスポンスがいいか、それを判断するのはDNSキャッシュが影響して実は結構難しい。 [DNS]->[General] -------------------------------------------------------------------------------- | Options on this page set up NetCache to resolve host names and to functions as | a DNS proxy cache. | NetCache Domain Name Resolution | NetCache Domain: [nix.co.jj ] | | Nameservers: [X.2 ] << X.2,F.1 は "26-6.FortiGate 80Cにはそろそろ | [F.1 ] << 暇を" の付録を参照のこと。 | [202.241.128.3 ] << これ消して [ Commit Changes ] クリックした。 | | DNS Tree-Search Enable: 〆Enable DNS tree search | DNS Search Paths: [on ] | Hosts Files: 192.168.1.5 cache cahce-e0a | | DNS Caching | You can set either transparent or notransparent DNS caching. If you are | settig up transparent DNS cahing, you must also configure the DNS | transparency options on the Setup tab > Network > Transparency page. | | DNS Caching Enable: 〆Enable NetCache to act as a DNS proxy cache. ------------------------------------------------------------------------------------ [ 付録 ] NetCache のコマンドによるめぼしい状態表示 $ telnet 192.168.1.5 cache> show config.* config.ui.http.ttl.enable = on config.http.ttl.enable = on config.http.rewrite_uri.prefix = \\ http://202.241.128.9 http://192.168.1.8 http://web.nix.co.jj http://192.168.1.8 \\ config.http.tunnel.allow_ports = +all config.http.acceleration.acl = config.http.acceleration.rules = config.ui.http.acceleration.enable = on config.http.acceleration.enable = off config.http.persistence.server = on config.http.persistence.client = on config.http.tunnel.acl = config.ui.http.enable = on config.http.acl = config.http.logs.access.enable = on config.http.stealth_mode = off config.http.force_refresh_rate = 31536000 config.http.default_max_age = 2592000 config.http.transparency = off config.http.privacy = off config.http.novia = off config.http.ip_spoofing = off config.http.complete_fetch = off config.http.enable = on config.http.cacheability.headers = \\ acl QQQ dst 192.168.1.0/255.255.255.0 no-cache deny QQQ acl PPP url "http://www.google.co.jp" goo のサイトだと、www.goo.ne.jp とか no-cache deny PPP search.goo.ne.jp とか出てくるので、* acl RRR url "http://*.goo.ne.jp" 指定で url "http://*.goo.ne.jp" とす no-cache deny RRR れば goo サイト全部となるみたい。 acl SSS url "http://www.google.co.jp/*" no-cache deny SSS acl TTT url "http://*.goo.ne.jp/*" no-cache deny TTT \\ config.http.cacheability.substring = \\ /cgi .cgi ? \\ config.http.cacheability.cookie_cheat = \\ jpg jpeg gif \\ config.http.ports = 80 config.system.routed.rdisc = off config.system.routed.rip = off config.system.gateways.ip = 192.168.1.2 config.system.dns.search = on config.system.dns.nameservers = \\ 202.241.128.3 X.2 F.1 \\ config.system.dns.domain_tree_search_enable = off config.system.dns.domainname = nix.co.jj config.system.hostname = cache config.system.private_ifaces = config.system.loadbalance_ifaces = config.system.listen_addrs = 0.0.0.0 config.system.large_windows.hosts = config.system.large_windows.enable = off config.system.outbound_ports = \\ !23 !25 !79 !110 !111 !512 !514 !540 \\ config.takeover.partner.admin_port = config.takeover.partner.ip = config.takeover.ip = config.takeover.enable = off