IPv6とWebDAVで簡単ファイル共有

IPv6とWebDAVで簡単ファイル共有

タグ:
高橋憲一
NTTソフトウェア ネットワークサービス事業部 主任代理



 会社や自宅など、いろいろなところで仕事をやらなければならない人は、1ヵ所にデータを集めて置いておきたいものだ。また、取引先や友人とデータのやり取りをしようとしても、数10から数100メガバイトといった大きさになると、電子メールで送るわけにもいかなくなってしまう。こうしたときに、自宅にファイル共有サーバを立てたいと思ったことのある人も多いだろう。

 しかし、ここで2つの問題に遭遇する。新しくサーバを立ち上げるにはグローバルアドレスが必要になってくるという問題と、一般のファイルサーバが使うファイル共有プロトコルは、家庭や会社のルータやファイアウォールでは通過させない設定になっていることが多く、気軽にできないという問題だ。

そこで便利なのがWebDAVという仕組みだ。HTTPを使うので、ほとんどの場合、ファイアウォールの設定をいじる必要がない。また、WebDAVのサーバをIPv6上で動かせば、グローバルアドレスの問題も即座に解決できる。以下では、WebDAVとIPv6による簡単なファイル共有のやりかたを紹介する


そもそもWebDAVとは何か

 ここで簡単にWebDAVとは何かを説明しよう。WebDAVとは「Web-based Distributed Authoring and Versioning」の略で、通常閲覧するだけであったWebを、書き込み可能なメディアにするためのHTTPの拡張仕様である。このWebDAVを採用するメリットには、以下のようなものがある。
  • インターネット経由のファイルアクセス
    HTTPベースのサービスであり、80番ポート(SSL/TLSを利用する場合には433番ポート)しか使用しないため、ファイアウォールなどを使用していても、80番ポートを開くだけでファイル共有が可能となる。
  • HTTPと同じ考え方でセキュリティを強化できる
    Webサーバへのセキュリティの考え方のほとんどが流用できる。また、他のファイル共有(FTPやSMB)をインターネット経由で利用する場合に比べて、セキュリティの管理が容易である。
  • OSや言語に依存しない
    WebDAVの仕様は、HTTPと同様に特定のOSや機種に依存せず、複数のOS上での実装が実現されている。HTTPから拡張されたWebDAV独自の機能も、XMLによってデータをやりとりするなど汎用性が高い。
  • シンプルで効率が良い
    サーバ上のファイルの移動やコピーを行なうメソッドが用意されているため、その都度ファイルをダウンロード・アップロードする必要がない。
 このように、WebDAVは他のファイル転送やファイル共有プロトコル(FTPやSMB)に比べてメリットが大きい。またWebDAVの機能には、複数のユーザが同じファイルに同時にアクセスし変更を加えた場合にも、それぞれの変更を保存することができる仕組みも用意されているため、ファイル共有に適していると言える。


Apache2.0 for Win32でWebDAVサーバ設定

 では実際にWebDAVサーバを構築してみよう。Windowsで動くWebDAVサーバにはMicrosoftがWindowsNT/2000/XP Professionalで用意しているIIS(Internet Information Server)があるが、残念ながら現状ではIISはIPv6に対応していない(次期サーバ系Windowsである、Windows Server 2003に搭載されるIIS6.0はIPv6に対応する予定である)。そこで、今回はLinuxなどで実績があり、IPv6にも対応することができるApache2.0 for Win32を使用して、IPv6化されたWindowsXP上でWebDAVサーバを構築してみる。


1. Apache2.0のダウンロードとインストール

 Apache2.0 for Win32は標準でIPv6対応のコードが含まれているが、apache.orgが提供しているWin32プラットフォームではIPv6が有効化されていない。最新のソースコードを入手してコンパイルすることもできるが、今回はIPv6を有効化してリビルドされたバイナリをダウンロードしてインストールを行なう。

Apache2.0.44 for Win32 のバイナリ配布元
http://nagoya.apache.org/mirror/httpd/binaries/win32/

Apache2.0.44 for Win32 (IPv6 enabled) バイナリ配布元
http://win6.jp/Apache2/index-j.html

 上記のディレクトリから、それぞれ apache_2.0.44-win32-x86-no_ssl.msi httpd-2.0.44-win32-ipv6.zip をダウンロードする。apacheのインストール自体は通常のアプリケーションのインストールと変わらないが、IISを有効化していると80番ポートで競合するためIISを停止しておこう。
 インストールが終了すると自動的にApache2.0がサービスとして起動するので、一度Apache2.0を停止してIPv6バイナリと入れ替える。入れ替えが必要なファイルは、
  • bin/*.exe
  • include/*.h
  • lib/*
  • modules/*.so
で、入れ替え後は一度Apache2.0を再度起動させてlocalhostをブラウザで確認してみよう(図1)。

図1
図1

※ Apache2.0の再起動の際に、「MSVCR70.DLLが見つからない」(図2)とのメッセージが出る場合がある。これは、IPv6化されたバイナリがVisual Studio .NET のランタイムを要求するためである。その際はWindows Updateの「Microsoft .NET Framework」にMSVCR70.DLLが入っているので、インストールすれば実行できるようになる。それでも同様のエラーが出る場合は、「msvcr70.dll」をファイル検索し、C:\windows\system32配下へコピーすればよい。

図2
図2


2. 共有用フォルダを作成する

 Apache2.0のデフォルトではWebDAVの機能が導入されていないので、この時点ではまだWebDAVの機能は使用できない。以下の手順を実施してWebDAVを導入しよう。

 Apache2.0では、デフォルトのドキュメントルートディレクトリがインストールフォルダ(デフォルトでは C:\Program Files\Apache Group\Apache2)のhtdocsフォルダに設定されている。WebDAVで共有するフォルダを作成するため、前もってhtdocsフォルダ配下にdavフォルダを作成する。


3. IPv6の80番ポートを開け、mod_davを有効にする


 Apache2.0では、WebDAVを実現するモジュール「mod_dav」が標準でインストールされるが、デフォルトでは有効となっていない。Apacheのインストールフォルダ(デフォルトではC:\Program Files\Apache Group\Apache2)内のconfフォルダにあるhttpd.confを変更することにより、mod_davを有効にすることができる。


 上記の設定でとりあえずWebDAVを使用することができる。Apache2.0を再起動すれば、設定が有効となりWebDAVを使用することができる。起動時にエラーが表示された場合は、httpd.confの記述が誤っているので再度確認する(図3)。

図3
図3

 これでWebDAVサーバがWindows上に構築された。早速クライアント側からWebDAVフォルダを参照してみよう。


WindowsXPからIPv6でWebDAVサーバへ接続する

 WindowsXPにはWebDAVクライアントとして「ネットワークプレース」が搭載されており、エクスプローラーからWebフォルダとして簡単にアクセスすることができる。そのため、WindowsXPにIPv6プロトコルをインストールしていれば、簡単な設定だけでIPv6を使用したWebDAVを使用することが可能だ(インストール手順については「WindowsXPでIPv6体験をしよう!」を参照)。

 まずは、IPv6アドレスをネットワークプレースで解決するために、hosts設定を行なう。WindowsXPでは「C:\WINDOWS\system32\drivers\etc\hosts」に記述を追加する。


 上記の設定を行なったら、デスクトップの「マイネットワーク」を開き、「ネットワークプレースを追加する」をクリックして「ネットワークプレースの追加ウィザード」を開始する(図4)。

図4
図4

 ネットワークプレースの追加ウィザードでは、サービスプロバイダに「別のネットワークの場所を選択」を選択して、ネットワークの場所にURLを記載する(図5)。

図5
図5

 WebDAVサーバが認識できれば、ネットワークプレースの名前を入力して完了となる(図6)。

図6
図6

 あとは、作成されたネットワークプレースのアイコンから、WebDAVサーバのディレクトリが表示されるはずだ(図7)。

図7
図7


IPv6が広げるファイル共有サーバの可能性

 今後、たとえばよく言われるように家庭用電化製品の全てがネットワークに接続するようになれば、現状のIPv4ではアドレスが不足するため、IPv6が選択されるだろう。いずれは家庭にあるファイルサーバからドキュメントやデジタルカメラの画像、ムービーファイルを取り出して閲覧するといった使い方が増えてくるはずだ。IPv6とWebDAVを使用したファイル共有サーバを構築することによって、そういった近い将来を少しだけ先取りできるだろう。

なお、今回の解説では、WebDAVサーバのセキュリティや日本語対応までは言及しなかったが、興味があれば是非試して欲しい。IPv6の可能性が垣間見えるはずだ。

この記事のトラックバックURL

http://www.ipv6style.jp/trackback/307
Ads by Google

IPv6ブログ