Hamachi

LogMeIn Hamachiとは



LogMeIn Hamachi(ハマチ)は、カナダのLogMeIn社が開発した、P2P(ピアツーピア)技術を用いてVPN(仮想プライベートネットワーク)を構築するソフトウェアです。クライアントソフトウェアを各PCにインストールし、LogMeIn社が管理するサーバークラスタを利用する、中央管理型のVPNシステムとして機能します。無料版では、5ピア/ネットワーク、最大64ネットワークまで利用可能です。

特徴



Hamachiの最大の特徴は、NAT(Network Address Translator)環境下にあるホスト同士でもVPN接続を確立できる点です。通常、NAT環境下では、グローバルIPアドレスとプライベートIPアドレスの変換が行われるため、外部からの接続が困難になります。Hamachiは、Applied Networking社の仲介サーバーを利用し、グローバルIPアドレスを交換することで、P2PによるVPN接続を実現します。P2P接続ができない場合は、仲介サーバーを経由してデータの送受信を行います。

公式サイトでは「ゼロコンフィギュレーション(設定不要)」を謳っており、インストールと簡単な設定のみでVPN接続が可能です。

動作の仕組み



Hamachiをインストールすると、PCに仮想ネットワークインターフェースが生成されます。このインターフェースに送信されたIPパケットは、実ネットワークのUDPプロトコルを用いて相手ホストに転送されます。これにより、既存のTCP/IPルーティングテーブルを利用したルーティングが可能になります。

Hamachiを起動すると、クライアントはまずサーバーとの制御用接続を確立し、維持します。クライアントとサーバー間での認証後、ネットワークメンバー間でネットワーク状態の同期が行われます。メンバーの参加状態が変化すると、サーバーはメンバーに対し、他のメンバーとのトンネル形成や解除を指示します。トンネル形成時には、サーバーの補助を受けつつ、クライアントはNAT通過技術を利用します。この技術の詳細は公開されていませんが、ベンダーは「全体の約95%のケースでP2P接続を成功させる」と主張しています。NAT通過に失敗した場合は、仲介サーバーがトラフィックを中継します。

仮想インターフェース



HamachiクライアントをインストールしたPCの仮想ネットワークインターフェースには、一意のIPアドレスが割り当てられます。以前は5.0.0.0/8の範囲が使用されていましたが、この範囲がRIPE NCCに割り当てられたため、25.0.0.0/8の範囲に変更されました。このアドレスは、クライアントが最初にシステムにログインする際に割り当てられ、以降はクライアントの公開暗号鍵と関連付けられます。

NAT環境下での接続



通常、NAT環境下にあるホスト同士は直接通信ができません。NAT機器は、LAN側からWAN側への通信時に、WAN側のIPアドレスとポート番号を一時的にLAN側のIPアドレスとポート番号に割り当てます。そのため、WAN側からLAN側への接続は困難です。Hamachiは、以下の仕組みでこの問題を解決しています。

NAT機器は、LAN側からWAN側へのUDPパケット送信時に、返信用のポート番号を一時的に割り当てます。Hamachiでは、以前に割り当てられたポート番号から、次に割り当てられるポート番号を互いに推測し、同時に相手方のポート番号に向けてUDPパケットを送信します。これにより、互いのNATを越えて通信が可能になります。このポート番号の推測は、ほとんどのNAT機器がポート番号を規則的に割り振る性質を利用したものです。ただし、一部のNAT機器ではこの方法が機能しない場合があります。

セキュリティ



HamachiはVPNを構築するため、他のVPNと同様のセキュリティリスクを抱えています。NAT機器やファイアウォールを迂回するため、リモートマシンのサービスの脆弱性が悪用される可能性があります。そのため、VPNを利用する際は、ファイアウォールなどのセキュリティ設定を適切に行う必要があります。

Hamachiの動作には、ベンダーが運用する「仲介サーバー」が不可欠です。このサーバーは、ユーザーのニックネーム、メンテナンスパスワード、IPアドレス、および認証トークンを保存します。また、サーバーは確立されたトンネルに関する情報(ユーザーのIPアドレス、確立時刻、継続時間、相互接続ユーザー)を記録している可能性があります。

Hamachiは、データの認証に業界標準の強固なアルゴリズムを使用し、セキュリティアーキテクチャは公開されていると主張しています。しかし、ソースコードは公開されておらず、第三者による検証ができないという懸念も存在します。

セキュリティに関する専門家の意見



Security Now! podcastにおいて、Steve Gibson氏はHamachiを「超安全、軽量、高性能、洗練された、マルチプラットフォーム、ピアツーピア、そして無料の個人向けVPNシステム」と評価し、システムのセキュリティアーキテクチャを入念に検査したと述べています。

一方、Randal Schwartz氏は、「Hamachiはオープンソースではないため、信頼性に懸念がある」と指摘しています。彼は、最終的にはOpenVPNのようなオープンソースのVPNに落ち着く可能性があるとしながらも、Hamachiの開発者であるAlex Pankratov氏がセキュリティに関する深い知識と経験を持っていることから、Hamachiのセキュリティ設計を信頼したいという意向を示しています。しかし、ソースコードが公開されていないため、完全に安心することはできないという懸念も表明しています。

関連技術



UDPホールパンチング
Session Traversal Utilities for NATs (STUN)
Traversal Using Relay around NAT (TURN)
port restricted cone NAT

外部リンク



公式サイト
LogMeIn, Inc./Hamachi公式サイト

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。