pinkとhamachiとの共存について

[戻る]
ubuntu 2008/11/07(金) 01:56:20
素晴らしいソフトを有難うございます。
愛用しております。

Softbank912SHにて問題なく使用してきましたが、
先日VPNソフトhamachiを導入したところ接続できなくなりました。
------------------------------------
pinkより送られてくるメールの例
 これまで) http://210.100.200.3/abcd010cc2c3
 hamachi導入後)http://5.10.200.3/abcd010cc2c3
------------------------------------
物理NICにルーティングしているグローバルIPアドレスでなく、
hamachiが設定したソフトウェアNICのIPアドレスが
設定されてしまっているようです。

pink側で監視するNICを指定することは可能でしょうか?
コマンドライン起動等で可能であれば、
方法をご教授いただければと思います。

YGG [E-Mail] [HomePage] 2008/11/08(土) 16:21:40

こんにちは。YGGです。

私自身は hamachi を使ったことがないのですが、投稿を読む限り原因はubuntuさんの
書かれた通りhamachiのソフトウェアNICが持つIPアドレスを pink がケータイからの
アクセスに使えるIPアドレスだと認識したためだと思います。

解決方法の前段として、 pink がURLを通知する際のアルゴリズムについて説明します。
pink はまずPC上に存在する全てのNIC(ソフトウェアNICも含む)に対してIPアドレスを
問い合わせます。その中にグローバルIPアドレスがあれば、このPCはインターネットに
直接公開されているPCであると判断し、これを通知URLに組み込みます。
ここで1つもグローバルIPアドレスが見つからない場合に限り、インターネット上の
CGI(これはYGGDRASILL SOFTのサイト内に設置しています)にアクセスします。
CGIはアクセス元IPアドレスを pink に返信し、pink はこれを以って当該PCに
割り当てられたグローバルIPアドレスであると判断します。
最後に、設定ファイル中に追加ホスト名が設定されていればこれを無条件に通知URLに
組み込みます。
残念ながらこの仕組みの中には、投稿にあったような pink 側で監視するNICを
指定する方法は用意しておりません。

上記の仕様と投稿からubuntuさんの環境を想像するに、ブロードバンドルータ(の類)の
配下にある、グローバルIPアドレスを割り当てられていないPCに pink を導入していると
想像します。

仕様及び想像する環境情報から、2つの解決方法を考えてみました。

1.hamachiに割り当てられるIPアドレスをプライベートIPアドレスにする
 →現在hamachiの仮想NICにはグローバルIPアドレスが設定されているようですが、
  VPNにおいてグローバルIPアドレスを使う必然性はないと考えます。
  設定が可能かどうか判らないのですが、可能ならばこれが一番自然な
  解決方法だと思います。
2.名前解決を設定する
 →フリーのDDNSなどのサービスを用いてサブドメインを取得し、
  pink の設定ファイル「HP-DP-CTRL.ini」の「追加ホスト名」に設定することで
  通知されるメールにこのホスト名によるURLが追加されます。

★---------------------------------------------------------------------------------★
上記の方法でもまだ未解決の場合は、下記の「追加発言」で再度お知らせください。
解決(納得)した場合は「←解決時は質問者本人がここをチェックしてください。」に
チェックを入れ、解決した旨や解決方法などを投稿していただけるとありがたいです(^^
★---------------------------------------------------------------------------------★

ubuntu 2008/11/13(木) 10:46:22
[[解決]]
ご回答ありがとうございます。
お返事が遅れ申し訳ありません。

結論から言いますと、ご指南いただいた方法
「2」のほうで解決しました。

DDNS名でアクセスできる機能まであるとは…
本当に便利なソフトで感嘆するばかりです。

以下簡単な報告です。

>>1.hamachiに割り当てられるIPアドレスをプライベートIPアドレスにする
>> →現在hamachiの仮想NICにはグローバルIPアドレスが設定されているようですが、
>>  VPNにおいてグローバルIPアドレスを使う必然性はないと考えます。
>>  設定が可能かどうか判らないのですが、可能ならばこれが一番自然な
>>  解決方法だと思います。

 hamachiの詳細な仕様はまだ読んでいませんが、
 hamachiではグローバルIPアドレスしか使えないようです。

 どうもhamachiはP2Pソフト(MX?)と同じような仕様らしく、
 hamachiネットワークへの参加(中央サーバに接続)によって
 ローカル仮想NICにIPアドレスが振られ、その後接続先ホストと
 P2P通信となります。

 このとき振られるIPアドレスは「5.xxx.xxx.xxx」固定で
 変えられない仕組みでした。
 
 以前はTinyVPNなるソフトウェアを使っており、VPNサーバが自前、
 VPNクライアント仮想NICアドレスも自在に決めることができたため
 今回のような事象はありませんでした。
 ただ、TinyVPNはWindows版しかありません。

 今回Linux端末をVPNクライアントに加える必要があり、
 hamachiに切り替えたところ本事象がおきたというわけです。

>>2.名前解決を設定する
>> →フリーのDDNSなどのサービスを用いてサブドメインを取得し、
>>  pink の設定ファイル「HP-DP-CTRL.ini」の「追加ホスト名」に設定することで
>>  通知されるメールにこのホスト名によるURLが追加されます。

 DDNSサービスドメインは持っておりましたので
 早速設定ファイルに追加したところ、まったく問題なく接続できました。
 ありがとうございました。

 >>上記の仕様と投稿からubuntuさんの環境を想像するに、ブロードバンドルータ(の類)の
 >>配下にある、グローバルIPアドレスを割り当てられていないPCに pink を導入していると
 >>想像します。

 ご推察いただいたとおり、ブロードバンドルータ配下の据え置きPCに
 外部からの接続をルーティングし、pinkやVNCで操作しております。

 普段出先ノートPC等から接続する歳は、
 DDNS名から取得したグローバルIPアドレスをVNCで直打ちしています。

 グローバルIPアドレスの変化にはDiCEというソフトを使って対応していますが、
 何かの拍子でDiCEがコケ、DDNS更新ができないとき等に
 「メール一つで最新のグローバルIPアドレスを返してくれる」pinkが大活躍していました。
 (その意味では、pinkの返信メールにグローバルIPアドレスが載らなくなるのは
  少々残念ではありますが)

 実はhamachi導入直後はDiCEも仮想NICを見に行ってしまい手こずりました。
 DiCEにはpinkのように外部CGIを見に行ってくれる機能等は無いようで
 どうしたものかと思っていましたが、こちらは逆に監視NICを指定でき解決しました。

余談になりますが、pinkから携帯に返信されたアドレスに知人のiphoneからアクセスしてみました。
全く問題なく接続でき、レスポンスも上々(iphone側の解像度低いのだけが難点でしたが)。
本当にすばらしいソフトだと思います。
ご回答ありがとうございました。

追加発言
■ お名前(ペンネーム可)
  
■ メールアドレス(省略可、半角で入力)
  
■ ホームページアドレス(省略可、半角で入力)
  
■ 発言(エラー時再送信禁止)
  ←解決時は質問者本人がここをチェックしてください。
  
  

WwwLounge Ver2.16