zipファイルを解凍したら、まずconf/ディレクトリの二つのconfファイルを結合して適当な名前を付けてください。
この処理はGitHubからダウンロードした場合には必要ありません。
ディレクトリ中で
bin/p2p2ch -Dconfig.file=conf/さっきのコンフィグファイル.conf
を実行します。
ディレクトリ中で
bin/p2p2ch.bat -Dconfig.file=conf/さっきのコンフィグファイル.conf
を実行します。
conf/reference.confを開きます。
hostname="127.0.0.1"とデフォルトで書かれている部分を、自身のグローバルIPアドレス若しくは取得したドメインを利用したFQDNに設定します。[*1]
#設定例
hostname="93.184.216.119"
hostname="host.example.com"
[*1]: グローバルアドレスは指定できないようです。今現在では、ドメインを取得してコンピュータのホスト名を追加するのが確実な方法です。もしくは、グローバルアドレスをホスト名として登録すれば可能です。Linux/UNIX/Mac OSXでは、/etc/hostsを編集してください。Windowsでは、C:/Windows/System32/drivers/etc/hostsを編集してください。
port=22223とデフォルトで書かれている部分を、好きな番号に設定します。これはノード間の通信に使用するポートです。
reference.confを保存して閉じます。
手持ちのルータ(CTU)の設定を開き、先程のポートを自身のプライベートIPアドレスにフォワードします。
とにかくポートフォワード。プライベートアドレスは固定しましょう。
conf/application.confを開きます。
デフォルトでは、P2P2chはブラウザとの通信に9000番のポートを使用します。好きな番号に設定するにはapplication.confに以下のように記述します。
http.port=80 # 好きな番号
【NEW】自動でルータのポートを解放できるようになりました。
# 自動でポートを解放する。自動で解放しないときはfalseを指定
automatic-portmap = true
起動スクリプトを実行すると、コンソールにプロセスIDが表示されます。
P2P2chを停止するには手動でこのプロセスをkillしてください。
さて、P2P2chが起動しました。ここでお手持ちの2chブラウザを起動し、「2ch互換掲示板をインポートする」等の機能を呼び出します。
ここで、板のURLは"http://localhost:9000/bbs/"とします。ポート番号は設定によって変更することができます。
無事に板を登録できたなら、スレッド一覧を見ることができるはずです。
ここに「P2P2chの情報」という設定用スレッドが見えるはずです。
ここからは他のノードとの接続の方法について説明します。
ノードに接続するには、そのノードの「ノードレファレンス」が必要となります。ノードレファレンスは、そのノードに接続するための情報であり、唯一の情報です。
ノードレファレンスを取得してみましょう。
「P2P2chの情報」スレッドを開き、本文に「reference」と入力し、書き込みます。名前・メールアドレス欄は無視されます。
自動的にノードレファレンスが表示されます。うまく表示されない場合は、一旦スレッドのキャッシュ(dat)を削除してから、再読み込みをしてください。
ノードレファレンスの一例です:
3hSCdm1S/X5KzJYZv5j8Gq7fC2A=@127.0.0.1:22223
先程取得したノードレファレンスを用いて、ノードと接続してみましょう。
「P2P2chの情報」スレッドを開き、本文を以下のように入力し、書き込みます。
join
3hSCdm1S/X5KzJYZv5j8Gq7fC2A=@127.0.0.1:22223(ノードレファレンスを貼り付ける)
「接続を試行します」と返答が返ります。あとは自動で処理されるので放置しましょう。
いつも通りでいいです
他のノードで立てられたスレッドが表示できるようになるまで、しばらく時間がかかります。スレッドやレスの情報は、ノード間にゆっくり伝播していきます。レスについても同様です。