前の記事では、frp を使用してローカルネットワークをトンネリングする方法について説明しましたが、その制限はパブリックなサーバーが必要であり、パブリックなサーバーの帯域幅に一定の要件があるということです。そのため、ここでは自分自身の仮想ネットワークを構築するためのリモートネットワーキングツールをおすすめします。認証に成功した後、お互いが同じネットワークセグメントに存在し、ローカルネットワークのように相互にアクセスできます。
リモートネットワーキングとローカルネットワークトンネリングの違いは、ローカルネットワークトンネリングサービスがサードパーティからドメイン名またはパブリック IP を割り当てられることで、誰でもアクセスできるということです。
リモートネットワーキングでは、アクセス元とアクセス先の両方にリモートネットワーキングが可能なソフトウェア(例:Zerotier)をインストールする必要があります。これにより、大規模なローカルネットワークを構築することができます。
アカウントの登録#
まず、公式ウェブサイトにアカウントを登録します。
または、Google または Github で認証ログインすることもできます。
ログイン後、ネットワークの作成を促すメッセージが表示されます。
ネットワークの作成#
「ネットワークの作成」をクリックすると、自動的に作成されます。対応する ID を記録するだけです。
クライアントのダウンロード#
frp と同様に、トンネリングデバイスにクライアントをインストールする必要があります。自分のコンピュータデバイスのシステムに応じてダウンロードしてインストールします。
- Linux でのインストール
curl -s https://install.zerotier.com | sudo bash
または、ソースコードを GitHub からコンパイルすることもできます。
git clone https://hub.njuu.cf/zerotier/ZeroTierOne.git
make
Linux 環境で Zerotier ローカルネットワークに参加するには、次のコマンドを実行します。
zerotier-cli join <NETWORK ID>
<NETWORK ID>
は、ネットワークを作成した後に取得したネットワーク ID です。
次のエラーメッセージが表示される場合があります。
zerotier-cli: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
source.list に以下の内容を追加するだけです。
deb http://download.zerotier.com/debian/bullseye bullseye main
その後、アップデートを行います。
その他の Linux コマンド
# 参加
zerotier-cli join <NETWORK ID>
# 離脱
zerotier-cli leave <NETWORK ID>
# コンピュータが接続しているネットワークのリストを表示
zerotier-cli listnetworks
# 接続されているピアを表示(他のローカルネットワークデバイスに接続する必要がある場合は、まずこのコマンドを実行してIPを確認することをお勧めします)
zerotier-cli listpeers
# 開始
sudo systemctl start zerotier-one.service
# 停止
sudo systemctl stop zerotier-one.service
# 自動起動を有効にする
systemctl enable zerotier-one.service
# 自動起動を無効にする
systemctl disable zerotier-one.service
- Windows でのインストールとデプロイ
まず、Windows クライアントをダウンロードしてインストールします。
クライアントをクリックして「新しいネットワークに参加」します。
自分のを入力します。
接続に成功すると、Windows で zerotier ネットワークを使用して取得した IP アドレスが表示されます。
テスト#
ネットワーク接続が成功したら、デバイス間で直接アクセスできます。
欠点#
もちろん、すべてのツールにはそれぞれの利点と欠点があります。Zerotier の利点は、パブリック IP が不要であるため、2 つのリモートデバイス間でネットワークを構築できることであり、非常に便利です。欠点は、パブリック IP がないため、他のユーザーがリソースにアクセスできないことです。あなたのローカルネットワークにも参加する必要があります。