次の手順は、Raspberry Piに暗号化されたメッシュネットワークをセットアップするのに役立ちます。 PI 3でノードをセットアップするには約15分かかります。明らかに、メッシュを使用するには、複数のノードが必要になります。
アームビアンを実行しているオレンジPIハードウェアの多くのモデルもサポートされています。同じインストール手順に従うことができます。ただし、Raspbianの代わりにSDカードをArmbianでフラッシュすることを除きます。サポートされているハードウェアの完全なリストについては、ハードウェアテーブルを参照してください。
次のアイテムがあることを確認してください。
RaspbianストレッチライトでSDカードをフラッシュします。
SSHという名前の空のファイルを作成して、PIブーツ時にSSHを有効にします。
$ touch /path/to/sd/boot/ssh
SDカードとUSB WiFiアダプターをPIに差し込みます。
パイをルーターに接続すると、インターネットへの接続ができます。 ssh [email protected]およびパスワードラズベリーを使用してpiにssh。
オプション: PIをコンピューターに接続したり、インターネットを共有したりするなど、接続する他の方法があります。または、ルーターに複数のPIが接続されている場合は、 nmap -sn 192.168.X.0/24 (192.168.xがサブネット)でIPを見つけ、SSH ssh [email protected]に対処するPIに割り当てられたローカルIPにSSHを見つけます。
SSHセッションでは、 passwdを実行してログインパスワードを変更します。強力なパスワードを選択することが非常に重要であるため、他の人はPIにリモートでアクセスできません。
以下を実行してから、インストールを完了します。約5分後、PIは再起動します。
$ sudo wget https://raw.githubusercontent.com/AtlMesh/atl-cjdns-pi/master/setup && sudo chmod +x setup && sudo ./setup
インストールやその他のお問い合わせのヘルプについては、www.atlmesh.com/chatのチャットルームで私たちを見つけることができます。
インストールスクリプトは、分散アプリケーションやノードを実行するのに不可欠ではないネットワーク分析ツールなど、多くのオプション機能をインストールすることもできます。
| 機能フラグ | HTTPサービスポート | 説明 |
|---|---|---|
WITH_MESH_POINT | なし | 適切なUSB WiFiアダプターがあり、802.11Sメッシュポイントインターフェイスとして構成する場合は、 trueに設定します。 |
WITH_WIFI_AP | なし | Raspberry Pi 3があり、オンボードWiFiをアクセスポイントとして構成する場合は、 trueに設定します。デフォルトの構成は、すべてのトラフィックをイーサネットポートeth0にルーティングします。 |
WITH_IPFS | 80 :HTTP-to-IPFSゲートウェイAT /ipfs/HASH | IPFSをインストールする場合は、 trueに設定します。 |
WITH_PROMETHEUS_NODE_EXPORTER | 9100 :ノードエクスポートUI | Prometheusノード輸出業者をインストールしてネットワークメトリックを報告する場合は、 trueに設定します。 |
WITH_PROMETHEUS_SERVER | 9090 :プロメテウスサーバーUI | Prometheus Serverをインストールしてネットワークメトリックを収集する場合はtrueに設定します。 Prometheusノード輸出業者が必要です。 |
WITH_GRAFANA | 3000 :GrafanaUI(ログイン:管理者/管理者) | Grafanaをインストールしてネットワークメトリックを表示する場合はtrueに設定します。 Prometheusサーバーが必要です。 |
WITH_H_DNS | なし | Hyperboria互換DNSサーバーを使用する場合はtrueに設定: fc4d:c8e5:9efe:9ac2:8e72:fcf7:6ce8:39dcおよびfc6e:691e:dfaa:b992:a10a:7b49:5a1a:5e09 |
WITH_H_NTP | なし | Hyperboria互換NTPサーバーを使用する場合はtrueに設定: fc4d:c8e5:9efe:9ac2:8e72:fcf7:6ce8:39dc |
WITH_FAKE_HWCLOCK | なし | 5分ごとにHwcrockに時間を保存するように強制したい場合はtrueに設定します。 |
WITH_EXTRA_TOOLS | なし | ネットワーク分析に役立つ非必須ツールをインストールする場合はtrueに設定:VIM Socat Oping bmon iperf3 |
WiFiアクセスポイントに接続されている場合、すべてのHTTPサービスはhttp://10.0.0.1:PORTおよびCJDNS IPv6から入手できます。 CJDNSアドレスに接続するには、まずノードのFC00 ::/8 statusからのアドレスを記録し、次にhttp://[fcaa:bbbb:cccc:dddd:eeee:0000:1111:2222]:PORTに移動します。
Piを約15秒間与えて、再起動してSSHを戻します。メッシュノードのステータスが自動的に印刷されていることがわかります。実行statusを実行していつでも印刷することもできます。
CJDNSサービスがアクティブであることを確認し、メッシュインターフェイス(該当する場合)。ノードセクションには、単一のIPv6アドレスを表示する必要があります。これは、CJDNSメッシュのPIのIDです。ピアセクションでは、ノードのアクティブピアであるIPv6アドレスのリストを示してください。このリストは、同じセットアップを備えた別の近くのノードがあるまで空になります。
複数のノードでネットワークスループットをベンチマークできます。 2つのPiのヒラリーと友人に名前を付けましょう。
友達にsshして、そのIPv6に注意してください。
iperf3 -sを実行してリスニングを開始します。 SSHセッションを終了しないでください。
別のターミナルセッションでは、SSHからHillary、およびiperf3 -c FRIEND_IPV6実行します。ヒラリーが彼女の友人に暗号化されたパケットを送っているのを見始めるべきです。予想されるスループットについては、Phillymesh/cjdns-optimizationsを参照してください。
サービスをアンインストールするには、 ./atl-cjdns-pi/scripts/uninstall cjdns-pi/scripts/uninstallを実行します。
更新する場合は、同じアンインストールスクリプトを実行しますが、プロンプトのときにすべての構成ファイルとデータディレクトリを保持します。インストールスクリプトとともにATL-CJDNS-PIディレクトリを削除してから、最後のインストールステップを繰り返します。
オレンジPIボードのサポートを追加し、オレンジPIゼロ(Armbian Nightly)、Orange Pi One(Armbian Nightly)、およびOrange Pi Lite(Armbian nightly)でテストしました。 Raspbianを点滅させる代わりに、上記のArmbian Nightly画像から始めて、Raspberry Piと同じインストール手順に従ってください。
テストされたハードウェアのリスト:
| ハードウェア | ベースOS | CJDNSベンチマーク(SALSA20/POLY1305、切り替え) | USB | イーサネット | メモ |
|---|---|---|---|---|---|
| Raspberry Pi 3 | ラスビアンライト | 350k、100k | 2 | 10/100 | |
| Raspberry Pi 2 | ラスビアンライト | 150k、50k | 2 | 10/100 | |
| Raspberry Pi 1 A+ | ラスビアンライト | 35k、 - | 1 | なし | |
| Raspberry Pi 1 B+ | ラスビアンライト | 35k、 - | 2 | 10/100 | |
| Raspberry Pi Zero | ラスビアンライト | 68k、30k | 1* | なし | *OTGケーブルが必要です |
| オレンジ色のpiライト | 毎晩肘掛け | 198k、76k | 2 | なし | |
| オレンジpi 1 | 毎晩肘掛け | 198k、76k | 1 | 10/100 | |
| オレンジパイゼロ | 毎晩肘掛け | 148K、56K | 1(+2*) | 10/100 | *ヘッダーを介して利用可能な追加のUSB |
| オレンジPIゼロプラス2 H5 | 毎晩肘掛け | 142K、92K | 0(+2*) | なし | *ヘッダーを介して利用可能なUSB |
新しいモジュールを追加するには、スクリプト/ IPFS/を使用します。
WITH_NEW_MODULEタグを作成します