2006/01/07
■[P2P]2006年1月のP2P関係イベント
今月は珍しいことにP2P関係の行事が結構多いです。せっかくなので、ここで一挙ご紹介しておきます。
- 2006/01/13(金):情報共有(P2P)研究会
- 2006/01/20(金):mixi P2Pコミュニティ新年会
- 2006/01/28(土):GLOCOM 第1回P2Pインフラ研究会 (LSE東京セミナー合同)
■ 2006/01/13(金):情報共有(P2P)研究会
当初からP2P技術に注目し、JXTAが登場した際には日本語の解説文を公開されていた稚内北星学園大学の丸山氏と、グリッドとP2P技術の両方に精通し、過去のP2P勉強会でも講演してくださっている産業技術総合研究所の首藤先生による研究会です。P2Pの技術的な面に興味のある人に適したイベントかと。
この研究会の情報を公式に公開してるサイトは見あたらなかったため、ja-jxtaメーリングリストに流された告知メールの一部を以下に転載しておきます。
情報共有(P2P)研究会 会 費:無料(社会人、学生を問わず) 日 時:2006年1月13日(金) 18:00〜20:00 会 場:機械振興会館 東京都港区芝公園3-5-8 http://www.jspmi.or.jp/map/mapright.htm 内 容: Javaで著名な丸山先生によるコミュニケーション論やP2Pへの期待について、 独自の考察を交えながらお話しして頂ける予定です。 また、最新のP2Pの技術動向を、P2Pの最先端の研究をされている産業技術総合 研究所グリッド研究センターの著名な研究者である首藤一幸氏が、基礎知識か ら、P2Pなネットワーク形態を概観し、最新技術動向と今後の可能性までをわ かりやすく解説して頂ける予定です。 稚内北星学園大学 学長 丸山不二夫 氏 「情報の共有とコミュニケーション」 - ネットワーク技術の与えた影響とこれからのP2Pへの期待 - 産業技術総合研究所 グリッド研究センター 首藤 一幸 氏 「unstructured overlay と structured overlay」 - 基礎知識からP2Pなネットワーク形態と研究・応用の両面から論じます - お申込み方法: P2P@rd.jipdec.jpまでメールにて申込みをお願いします。
■ 2006/01/20(金):mixi P2Pコミュニティ新年会
mixi内のP2Pコミュニティの新年会です。今回は、過去のmixi P2Pコミュニティオフ会とは違ってプレゼンの時間などは無いので、単に飲み食いしたいだけの人も気軽に参加できる素晴らしいイベントになっています。お暇なら是非どうぞ。
P2Pコミュニティ新年会(mixiにログインしないと閲覧できません)
http://mixi.jp/view_event.pl?id=3318592
≪P2Pコミュ新年会概要≫ □日時 2006年1月20日(金) 19:00〜21:00 に変更予定 (初回提示の際は1/13(金)でした) □場所 新宿近辺 (詳細は参加者の方にご連絡します。) □会費 4000円 ※立食パーティで飲み放題です。 P2P界隈の方が一同に集まるイベントです。是非参加して下さい!
■ 2006/01/28(土):GLOCOM 第1回P2Pインフラ研究会 (LSE東京セミナー合同)
GLOCOMの研究会とLSE(ソフトウェア技術者連盟)東京セミナーの合同という形のイベントです。プログラムを見る限りでは、内容は思想寄り?なんでしょうか。Winny開発者の金子さんの講演があるので、僕も「Winnyの技術」を持ってお話を聞きに行きたいと思ってます。
申し込みの受付は、今日から開始されました。
GLOCOM 第1回P2Pインフラ研究会 (LSE東京セミナー合同)
http://lse.or.jp/?seminar004
日時
- 2006年1月28日(土) 15:30〜18:00 (開場 15:00)
プログラム
- 開催挨拶
- 招待講演 金子勇 「『Winnyの技術』を元に当時の到達点を明らかにする」
- 基調報告 山根信二 東京大学大学院学際情報学府博士課程, CPSR/Japan, GLOCOM主任研究員(併任)
- パネルディスカッション
- (研究会後に参加者が自由に談話できる時間を設けます)
2006/01/11
■[IPv6][NAT]OCN IPv6はIPv6 over PPP/L2TP(not Teredo)
※今回の日記は、2005年11月24日の日記(KAMEとTeredoと「どこでもIPv6」)の続きです。
NTTコミュニケーションズのサイトでOCN IPv6の仕様書が公開されたので、僕もさっそく読んでみました。22ページしかない、短い仕様書です。
IPv6技術仕様(「OCN IPv6 ユーザ網インタフェース仕様書Ver1.0」というのがそれ)
http://www.v6.ntt.net/07_document.html
簡単にまとめると、OCN IPv6とは
- PPP/L2TPでVPNトンネルを確立して、その中にIPv6パケットを通す
- NAT越えを実現するために、クライアントはサーバへ定期的にUDPパケット(Keep-Alive)を送信する
ことでNAT越えを実現したIPv6 over IPv4トンネリングサービスのようです。
----
以前、僕は「UDPでIPv6をカプセル化」「標準ベースの技術」「Windows Vistaにも搭載」というあたりで、「OCN IPv6はTeredoじゃないか?」と予想したんですけど、全然違いましたね。申し訳ないです。
まず、L2TPはUDPベースのプロトコルなので、確かにUDPでIPv6をカプセル化してます。具体的には「IPv6 over PPP over L2TP over UDP over IPv4」*1という形で何重にもカプセル化されるのですが、L2TPはPPP接続を確立するためのトンネリングプロトコルなので、これは完全に標準に準拠した使い方です(参考:L2TPとは(e-Words))。ユーザ認証のためにどうしてもPPPが必要だったのでしょうね。
また、MicrosoftはL2TPのNAT越えを実現するためのプログラムを既に提供しているようです(Windows XP SP2には標準搭載)。これは、おそらくKeep-Aliveのサポートでしょう。
Windows XP および Windows 2000 用 L2TP/IPSec NAT-T 更新プログラム http://support.microsoft.com/default.aspx?scid=kb;ja;818043
そう考えると、現在のWindows XP SP2はOCN IPv6を提供するための機能は既にほとんど備えているわけで……Windows VistaがOCN IPv6を正式にサポートする可能性は充分あるように思えます。なるほど。うまい手があるもんですね。
----
(余談)
「OCN IPv6 ユーザ網インタフェース仕様書Ver1.0」では、Keep-Alive機能について以下のように記載しています(10ページ目)。
接続クライアントは、トンネル接続の維持のため、L2TPのControl Messageの一つである"Hello"メッセージとPPP LCPの"echo-request"メッセージを接続サーバに対して定期的に送信する。
で、僕が気になっていたKeep-Aliveの送信間隔については何も書かれてませんでした。また、TeredoのようにKeep-Aliveの送信間隔を調整する(30秒から徐々に増やしていって限界を探る)ようなことは全くやらないみたいです。ちぇっ。
まあ、実際のところ、頑張ってKeep-Aliveの送信間隔を調整してもあんまりメリット無さそうですけどね……。
*1 このプロトコルスタックの図は仕様書の7ページ目に載ってます。
2006/01/16
■[P2P][ネットワーク]情報共有(P2P)研究会に参加してきました
先日の日記でも紹介した、情報共有(P2P)研究会というイベントに参加してきました。主催は(財)日本情報処理開発協会。
このイベント、インターネット上ではあまり告知されてなかったので、ホントに人が集まるのか(他人事ながら)心配してたんですが、蓋を開けてみると参加者は50人を超えてました。主催者+講師陣から2ホップ以内の人(主にJava関係者)が結構集まってたみたいです。
さて。せっかく聴講してきたので、講演内容の簡単な紹介を書いてみます。
■ 「情報の共有とコミュニケーション」(稚内北星学園大学 学長 丸山 不二夫氏)
19世紀の電信から現在のインターネットまで、メディアが発達していく歴史の紹介。今までに映画、無線、電話、新聞、ラジオ、テレビと多くのメディアが登場してきたが、これらは元々全く異なるメディアだった。
しかしコンピュータ技術の発達により、20世紀末になってこれらのメディアが初めて統一的に扱えるようになった。今後は、ギルダーの法則に従って高速化するコンピュータ・ネットワークの下で、メディアが統合されていく。
メディアの統合が急速に進行すると、それが社会変動の引き金となり、社会変動はコミュニケーションと情報の共有を促進する、と丸山氏は予測している。P2P(peer to peer / person to persion)は、そのようなメディア統合を推進するトレンドの1つ。
メディア統合によって「個人の役割の増大」、「公共空間としてのネットワーク」、「コミュニティへの多重帰属」といった新しい問題が生まれる。ネットワークは自己表現、自己実現の場になり、我々の関係性こそがメディアになるのだー! ドーン!
……。
手元のメモを見る限りでは、以上のような内容の講演でした。
こんな社会学的な話になるとははっきり言って意外でしたが、後ほどお聞きしたところ丸山氏は元々哲学を専門とされていたそうです(なんとなく納得)。「ネットワークが世界を変える」といった夢のある話は久しぶりに聞きましたけど、やっぱりこういうのがネットワークの魅力ですよね。NAT越えみたいなせせこましいことばっかり気にしてると、つい忘れちゃいますけど。
■ 「Unstructured overlay と Structured overlay」(産業技術総合研究所 グリッド研究センター 首藤 一幸氏)
こちらは打ってかわって技術的な話。こんな濃い内容、背景知識が無かったら全然理解できないんじゃないか?と(他人事ながら)心配しつつ聞いてましたけど、個人的には非常に面白かったです。
僕が内容を中途半端に紹介するまでもなく、当日のプレゼン資料が既に首藤さんのサイトで公開されてますので、そちらをご覧下さい。DHT(Distributed Hash Table)に興味のある人なら、読んで損なしです。
"Unstructured overlay と Structured overlay"
ウェブページ (34枚)
http://www.shudo.net/publications/JIPDEC-P2P-20060113/
PDFファイル (399 KB)
http://www.shudo.net/publications/JIPDEC-P2P-20060113/shudo-JIPDEC-200601-overlay.pdf
2006/01/22
■[P2P][NAT][Teredo]MSN MessengerのミュージックミックスをIPv6(Teredo)化
最近のMSN Messengerはチャットウィンドウのメニューから「アプリ」→「ミュージックミックス」と選択すると、チャットの参加者全員で同じ音楽を聴ける「ミュージックミックス」というアプリを使えます*1。
このアプリって、チャット参加者がNATを通して接続してると、音楽ファイルの再生速度に音楽速度の共有(コピー)速度が追いつかなくて全然使い物にならないんですが……Teredo等を使ってIPv6接続するとだいぶ実用的に使えることに気づきました。せっかくなのでその方法を紹介しときます。
(※注意)
これを実際にやろうとすると、つまづくポイントが結構多いので、うまく行かなかったらすっぱり諦めて下さい。細かな質問は受け付けませんので、「へえー、こういう事も出来るんだ」と話半分に聞いてもらえると有り難いです。
(※注意その2)
以下の方法でMSN MessengerをIPv6化しても、Windows Live Messenger BETAから搭載された「共有フォルダ」の機能はIPv6化されませんでした。こっちがIPv6化したらだいぶ便利だったんですけど。ちぇー。
----
■ WindowsのIPv6機能を有効にする
PCにWindows XP SP2、またはWindows XP SP1 + Advanced Networking Pack for Windows XPをインストールした状態で、コマンドプロンプトで以下のように実行するとIPv6をインストールできます。
C:\>ipv6 install Installing... Succeeded.
で、IPv6 native環境があればこれで十分なんですが、普通の人はそんなことないと思うので(普通の人がこんな日記を読んでるかはともかく)、更にTeredoも有効にします。このTeredoの設定方法については以下のIPv6styleの記事が詳しいです。結構前の記事ですが、今でも通用します。
Advanced Networking Pack for Windows XP大解剖 第1回 IPv6接続をさらに透過的にするTeredo(IPv6style)
http://www.ipv6style.jp/jp/tryout/20030929/index.shtml
一番すんなりいくパターンでは、以下のような出力になるはず。
C:\>netsh netsh>interface ipv6 netsh interface ipv6>set teredo client OK (しばらく待ってから) netsh interface ipv6>show teredo Teredo パラメータ --------------------------------------------- 種類 : client サーバー名 : default クライアント更新間隔 : default クライアント ポート : default 状態 : qualified 種類 : teredo client ネットワーク : unmanaged NAT : cone
ここで、NATの種別がconeかrestrictedだったら、おそらく成功しているはずです。ipconfig /allでIPアドレスを確認したり、チャット相手のTeredoアドレスにpingを飛ばしたりして確認しましょう*2。
■ MSN MessengerのIPv6機能を有効にする
MSN Messengerはメニューの「ツール」→「オプション」→「セキュリティ」と選択した先の画面にある「メッセージを送信するときに、直接メンバーに接続する」というチェックボックスをONにすると、IPv6機能が有効になります。ただ、最近のMSN Messengerはこのチェックボックスが無効化されているので、これを無理矢理有効にしたうえで、チェックボックスをONにします。
これを実現するにはいろいろ方法があるらしいのですが(Spy++を使うとか?)、僕はWindowsに詳しい先輩から教わった「Window Explorer」というソフトを使う方法しか知らないので、それだけ紹介します。
まず、Window Explorerを起動した状態で、MSN Messengerのメニューから「ツール」→「オプション」→「セキュリティ」と選択して、問題のチェックボックスがある画面を表示します。
このとき、Window Explorerの左ペインで「msnmsgr.exe」を選ぶと、右ペインに「メッセージを送信するときに、直接メンバーに接続する(&D)」というのが表示される(はずな)ので、これを右クリックして「有効化」を選択します(下図)。
そしてMSN Messengerのメニューに戻ると、先ほど無効化されていたチェックボックスが有効になっているはずなので、これをONにして、そしてMSN Messengerを再起動します。以上でMSN MessenerのIPv6機能が有効になった……はずです*3。
■ 接続テスト
上記のようにWindowsとMSN MessengerをIPv6化したユーザ同士では、チャットもIPv6化されます。なので、インスタントメッセージを送信したあとでnetstatを実行してみて、
C:\>netstat -nb Active Connections (中略) TCP [3ffe:831f:4004:1952:8000:****:****:****]:1033 [****:****:****:****:****:****:****:****]:1057 ESTABLISHED 2880 [msnmsgr.exe]
のようにIPv6アドレスでTCP接続が出来てれば成功です。音楽ファイルの送信側と受信側の両方がNATの背後に居る場合でも、(Symmetric NATがなければ)快適にミュージックミックスが使えるようになります。やったね!
いやぁ、アプリケーションをIPv6化するとNATに悩まされなくていいですね……ってわけじゃなくて、要はTeredoがUDP hole punchingをやってるだけだったりするんですが。しかし、この間のOCN IPv6もそうですけど、話をインターネット上に限ると、IPv6はNATを隠蔽するための技術と化してますね。そういう技術として普及するのは、僕は良い事だと思います。
*1 僕はWindows Live Messenger BETAをインストールして初めて気づいたんですが、人づてに聞いた話ではMSN Messenger 7.5でも使えるらしいです。実はもっと前のでも使えたかもしれません。
*2 このテストに成功しても、MSN MessengerでIPv6接続できない、という場合はファイアウォールを疑うべし。
*3 この設定をすると、レジストリのHKEY_CURRENT_USER\Software\Microsoft\MSNMessengerのDirectIMという値(REG_BINARY)が01 00 00 00になるらしいので、これを操作すれば十分かもしれません。ただ、確証はないのでやるときは自己責任で!
2006/01/27
■[gadget][P2P]W-ZERO3にSkype for Pocket PC version 2.0を入れるのはちょっと待って!
Download Skype for Pocket PC
http://www.skype.com/products/skype/pocketpc/
Skype for Pocket PCの最新ベータ版(version 2.0.0.39)が公開されました。で、さっそく手元のW-ZERO3にインストールしてみたところ、Skypeネットワークに全くログインできなくなってしまいました……。
他の人の環境でも再現性のある不具合かどうかはまだよく分かりません。ですが、Skypeのチャットで話してみたところ、僕以外にも同じ障害が出ている人がいたので、もう少し情報が出てくるまではインストールしないのが無難だと思います。
とにかく、古いバージョンのSkype for PPCを使ってる人は、絶対バージョンアップしないように! 一応ログインできるようになりました(次の日記を参照)。
■ 詳しい不具合の内容
従来通りのログイン画面でSkype名とパスワードを入力して「はい」を選択すると、即座に次のような画面が出てきてログインが中断されます。これは、PHS経由でインターネットに接続している場合も、Wi-Fi経由でLANに接続している場合も同じでした。
Skype needs an Internet connection to function. Do you want a Skype to try to connect to the Internet? Warning: Your mobile service provider may change for an Internet connection. Please contact your provider for pricing.
で、この画面で「Yes」を押したら接続してくれるのかと思いきや、次のような画面が表示されるだけで何も起こりませんでした。「No」を押すとホントに何もないです。
Unable to connect to the Internet. Please check your network settings.
しかしこんなバグが出るなんて、W-ZERO3で全然テストしてないと言ってるようなもんですよねえ。ベータ版ですからあまり文句も言えませんけど、いい加減少しはSkypeとSharpで協力してくれたらいいのに……。
■[gadget][P2P]W-ZERO3でSkype for Pocket PC version 2.0動きました
Skype NewsのHKさんに、上の問題の解決方法を教えて頂きました。HKさん、ありがとうございます(しかし、よくこんなところに気付きましたね……)。
僕(とHKさん)の環境では、以下の手順に従ってW-ZERO3のプロキシ設定をオフにすると、Skype for PPC 2.0でもログインできるようになりました。
- 「設定」→下の「接続」タブ→「接続」→「既存の接続を管理」→下の「プロキシの設定」タブ、という順に画面を開く(上に「センタ名称設定」と書かれた画面に着く)
- 「プロキシ サーバーを使用してインターネットに接続する」というチェックボックスがあるので、これをオフにする
この設定で全てのユーザが使えるようになるとは限りませんし、version 2.0と言ってもそんなに機能も増えてませんから(Windows版とは違ってversion 2.0でもビデオ機能はありませんよ)、インストールは慎重に、自己責任で。バックアップ重要。
----
(追記)
bugfixのリストには挙がってませんけど、2005年12月16日の日記で書いたSkype for Pocket PC version 1.2.0.89のバグも直っているようです。少なくとも、僕の環境では再現しなくなってました。
ちなみに、まだバグが直ってない方がいるようでしたら、Skype for W-ZERO3の情報交換トピックあたりで声を上げてもらえれば対処できるそうです(Skype社の岩田氏談)。その際はご協力をお願いすることもあります、とのこと。
また、この日記に無関係と判断したコメント及びトラックバックは削除する可能性があります。ご了承ください。