Linux に Hamachi をInstallする

"Hamachi, a zero-config virtual private networking utility, "
とかかいてあるけど意外と困ったのでメモ

REDAMEの通りならばインストールは以下の通り。

Run 'make install' and then 'tuncfg' from under the root account
Run 'hamachi-init' to generate crypto identity (any account).
Run 'hamachi start' to launch Hamachi daemon.
Run 'hamachi login' to put the daemon online and to create an account.
Run 'hamachi join ' to join the network.
Run 'hamachi go-online ' to go online in the network.
Run 'hamachi list' to list network members and their status.

ただ、実際には一筋縄でいかなかった。

  • Run 'make install' and then 'tuncfg' from under the root account

配布サイトからDLして展開してmake install。
/sbinなどにファイルがコピーされる(フツー/usr/sbinじゃないの?行儀悪いね)。
次にtuncfgを実行する。

  • Run 'hamachi-init' to generate crypto identity (any account).

まずここで最初にひっかかった。

hamachi: /lib/libgcc_s.so.1: version `GCC_3.3' not found (required by hamachi)

libgcc3.3以降が必須。RH9とか古いDistroだと動かず(;´Д`)バージョン上げるのは面倒だったので、あきらめて他のマシンでやりましたが。

strings /lib/libgcc_s.so.1 |fgrep GCC_
とかやって

GCC_3.0
GCC_3.3
GCC_3.3.1
GCC_3.4
GCC_3.4.2

とかでなかったらlibgccをあげなきゃならない。もしくはあきらめる(´ー`)!
gnatとかの黒い噂を聞いていたので逃げました(´ー`)

問題なくバックグラウンドで起動する筈(実は問題を内包していたとしても)
(もし起動しないでエラーだしたらオマケのトラブルシュート参照)

  • Run 'hamachi login' to put the daemon online and to create an account.

ここでも問題が。

[noji@asuka .hamachi]# hamachi login
Logging in ....>..... failed

と出てしまった。
サーバーに繋ぎに行けないという事に見えるから、iptables(フィルタリング)の設定が不味いのかと疑ったが今回は違った。


原因の調査にはtuncfgとhamachiデバッグモードで動かす。
まずすべてのhamachi等を止める。

hamachi stop
killall tuncfg (tuncfgはバックグラウンドで動作している、正しい止め方がわからんのでkillで止めた

そしてそれぞれ別のコンソールで(フォアグラウンド動作になるので)起動する
tuncfg -d
hamachi start debug (もしHamachiの起動に失敗したら、下のトラブルシュート参照


さらに新しくコンソールを開いてhamachi loginを実行するとデバッグメッセージがそれぞれに出力される筈。
俺の場合には、hamachiのコンソールでは

23 15:57:15.365 [ 1894] ses: tap configuration failed

とか言うエラーが出ていた、さらに調べておりますとtuncfgのコンソールには

# /sbin/tuncfg -d

sh: ifconfig: command not found

とかいうオモシロエラーメッセージを目視で確認(;´Д`)萎え


ここはテストにでますよー、ハイ「hamachiは/sbinにpathが通ってないと動かない!」
リモートでsuしている人とか、俺みたいにsbin落としている人は注意な(;´Д`)
/sbin/以外にifconifgなんて滅多にないんだからこれは是非改善してもらいたい所だ。


で、pathを指してやり直せば、無事に

[noji@asuka .hamachi]# hamachi login
Logging in ....>..... ok

とか出力される筈。


後はREADMEの通りにやりましょう。

あー後一点、Joinやcreateした後にはちゃんとgo-onlineしましょう、しないとつながらないよ!
CreateしたあとにJoinでは動かないよ、go-onlineな。


READMEがとっても不親切なのでDocの充実が待たれます。


オマケのトラブルシュート

# hamachi start
23 25:55:55.555 [ 1817] tap: bad response 00007f00
23 25:55:55.555 [ 1817] Failed to configure tap device to use 5.26.200.100/4200000000<
とか出る場合、別にtuntapをリセットしたり、Moduleを再ロードする必要はない、というかやっても直らない。
~root/.hamachiのstate コンフィグファイルを削除すると動く
(もしくはtuncfgを適切に再起動?)