はじめに
Habréには、Hyperboriaネットワークに関するいくつかの記事が既にあります。Hyperboria:インターネット2.0
Hyperboria:仕組み
Hyperboria:ルーティング
それらでは、デバイスの詳細とネットワークの原理、いくつかの問題の解決などを読むことができます。
ここでは、FAQ +接続ガイドのようなものを書きたいと思います。
よくある質問
Q.何について話しているのですか?A. cjdnに基づいた分散型分散型p2pネットワークについて
Q.そして、なぜそれが必要なのですか?
A.次に、現在のインターネットは依存しすぎています。 プロバイダーおよびそれらを規制する州に依存します。 メッシュネットワークへの接続は完全にオープンで無料であり、情報を検閲することはできません。また、ネットワーク上のIPv6アドレスを実際の物理アドレスと一致させることはできません(フルメッシュネットワークの場合)。
Q.接続するには何が必要ですか?
O. * nix-systemを備えたデバイス(OS Xを含む)
Q. Windowsはどうですか?
A.開発中
Q.インターネットにアクセスする必要がありますか?
A.現時点では、戦略的計画ではフルメッシュネットワークへの移行が必要です。
Q.メッシュネットワークとは何ですか?
A. Cjdnsは2つの動作モードをサポートしています。
- オーバーレイモード-ノード間の接続が通常のインターネット接続を介して発生する場合
- メッシュモード-インターネットに接続せずに、ノードが直接接続されている場合(たとえば、Wi-Fi 2つの近くのルーターを介して)
接続
ソースからのアセンブリ
これは、 著者によって公式に提案されたインストール方法です (私の翻訳)。これは、 shifttstasからのロシア語のREADME です。
git、cmake、その他あらゆる種類の標準的なものが必要になります。
Debian \ Ubuntuの場合:
sudo apt-get install cmake git build-essential
次に、 githubを使用してリポジトリをポンプアウトし、適切なディレクトリに切り替えます 。
git clone https://github.com/cjdelisle/cjdns.git cjdns cd cjdns
実際には、アセンブリ:
./do
正常にビルドされると、表示されます Build completed successfully
ArchLinuxおよびGentooのインストール手順があります
カスタマイズ
0.必要なものがすべて揃っていることを確認します
cat /dev/net/tun
これが発生した場合:
cat: /dev/net/tun: File descriptor in bad state
その後、すべてが大丈夫です! 進む
あなたがそのような答えを得た場合
次のコマンドを実行します。cat: /dev/net/tun: No such file or directory
sudo mkdir /dev/net && sudo mknod /dev/net/tun c 10 200 && sudo chmod 0666 /dev/net/tun
再試行
cat /dev/net/tun
見返りにこれを取得する場合
OpenVZプラットフォームに基づいたVPSを使用している可能性があります。 ホストに「トンネルインターフェイス」を有効にするよう依頼してくださいTUN / TAPは標準的なものであり、その方法を知る必要があります。cat: /dev/net/tun: Permission denied
1.構成ファイルを作成する
このファイルがすべてです! キー、ipv6アドレス、アクセスパスワードなどがあります。 などに応じて、適切に保護する必要があります。./cjdroute --genconf >> cjdroute.conf
自分だけにファイルへのアクセス権を設定し、たとえば自宅に置く
chmod 600 cjdroute.conf mv cjdroute.conf ~/.cjdroute.conf
2.ごちそうを探す
最も難しいステップは、ネットワークが基本的にオーバーレイモード(つまり、インターネット接続)で動作している間、Hyperboriaに接続するには、既に接続されている人を見つける必要があるということです。プロジェクトマップを見て、IRCチャット irc://irc.efnet.org/#cjdnsで質問し、ロシア語フォーラムで質問してみてください 。
いくつかのパブリックノードがありますが、それらは(一般にノード数が少ないため)分散化を破り、それ自体が接続センターになるという点で悪いです。 パブリックノードを介して接続し、ネットワーク上の誰かを見つけることができます(たとえば、内部マイクロブログサービス )。
3.ごちそう情報を設定に追加します
ピアに接続するには、IPとポート、パスワード、および公開鍵が必要です。 通常、これはすべてJSONの形式で渡され、次のようになります。 "123.45.67.123:34567": { "password": "sjfhgwetuyfdgwudbjwedgu34", "publicKey": "amnfbwjhfbu4bwhcbuwyrho2iudh384rgiwyebuwygriwebdfgueyr.k" }
このような情報は、「connectTo」フィールドの構成に挿入する必要があります
// Nodes to connect to. "connectTo": { "0.1.2.3:45678": { "password": "thisIsNotARealConnection", "publicKey": "thisIsJustForAnExampleDoNotUseThisInYourConfFile.k" } }
または、Webインターフェイスを使用します(それについてはもう少し詳しく説明します )。
あなたが好きなだけ多くのごちそうを追加することができます(より多くの、より良い)。
ノードを介して誰かにアクセスを許可する場合、データは「authorizedPasswords」セクションの横にあるコメントの設定にあります。
外部IPアドレスを入力するだけです。
「authorizedPasswords」セクションでは、人ごとに異なるパスワードを追加できます。また、「connectTo」のピアに関するjson情報に任意のフィールドを追加できます(たとえば、ノードの地理的位置に関する情報)。
4.開いているポートを確認してください!
ネットワークに接続すると、ノードは白い静的ipv6アドレスを受け取ります(ただし、Hyperboriaからのみアクセス可能です)。だれかが接続できる未知のポートが開いているかどうかを確認することが重要です。5.行こう!
sudo ./cjdroute < ~/.cjdroute.conf
ログを記録する必要がある場合:
sudo ./cjdroute < ~/.cjdroute.conf > cjdroute.log
また、ログはウェブ管理パネルから「ライブ」で見ることができます
cjdnをオフにするには
sudo killall cjdroute
ルートからではなくcjdnsを実行するには、指示もあります。
あなたはオンラインですか
Hyperboriaサービスにログインしてみてください。たとえば、Twitterの類似版: http : //socialno.de
最初の起動時に、ルートを構築するのに数分かかる場合があります。
cjdns admin APIへのWebインターフェイス
nodejsで小さな管理者を作成し、メインのcjdnsリポジトリに固定しました。使用するには、 node.jsと次の内容のjsonファイル '〜/ .cjdnsadmin'が必要です。
{"config":"~/.cjdroute.conf"}
cjdnsリポジトリディレクトリに移動し、次にadminディレクトリに移動します。
cd contrib/nodejs/admin
npmを使用してnode.jsの依存関係をインストールします。
npm install
管理パネルを実行します。
node admin.js
デフォルトでは、管理パネルはhttp:// localhost:8084で起動されます。外部アクセスのために閉じられることはないため、常に実行し続けないでください。
管理パネルでは、APIメソッドを実行し、オンエアでさまざまなレベルのログを表示し、ピアを編集できます。 手が届くと、ネットワークのビジュアルマップがすぐに利用可能になります。
ピアを変更した後に管理パネルから構成を保存すると、以前のバージョンが構成ディレクトリに保存されます。
唯一のマイナスは、保存時にすべてのコメントが削除されることです。その場合は、構成の最初のバージョンを確認してください。
メッシュ接続
これまでのところ、このタイプの接続はLinuxでのみ機能し、OS Xでは機能しません。理想的なケースでは、すべてが単純です。構成内のコメント化されたセクション「ETHInterface」を見つけてコメント解除する必要があります。
また、「バインド」フィールドに、ノードの検索に使用するネットワークインターフェイスの名前(「eth0」など)を指定する必要があります。
cjdrouteを再起動し、「ETHInterface」がオンになっているネットワーク(物理)に他のcjdnノードがある場合、それらは自動的に相互に接続します。
同時に、どのノードもHyperboriaのピアに接続されていない場合、デフォルトで暗号化されたトラフィックとその他の喜びを備えた独自のcjdns LANを取得します。
cjdnsをサポートするOpenWRTアセンブリ
ルーターにcjdnをインストールする場合は、少し長くする必要があります。考えてみれば、ほとんどの場合、英語で指示を読むことは難しくありません。
私自身が最初の試みで認めた主な理由は、ルーター上で直接OpenWRTを構築しようとしたことです:)
もちろん、これは通常のコンピューターで実行してから、コンパイルしたファームウェアをルーターにインストールする必要があります。
まず、 ルーターの互換性を確認します 。
ちなみに、Netgear WNDR3600で起動しましたが、1週間後にルーターがひどく鈍くなってきました(cjdnsをオフにしても)、OpenWRTを破棄してdd-wrtを戻す必要がありました。
ワールドキャプチャ
cjdns作成者と一般的なコミュニティの世界的な計画は、現在のインターネットをHyperboriaに置き換えることです。現在、米国にはいくつかのメッシュサイトがあります(シアトルでは間違いなく、最大)。
ロシア(特にモスクワ)でのネットワーク構築に関心のある方は、キャプチャプランを作成するためにフォーラムに来てください 。
すでにネットワーク上にあるもの
有名なサイトのリストプロジェクトサイト
http://hyperboria.nethttp://projectmeshnet.org/
プロジェクトwiki
ロシアのサイトとフォーラム