|
2 | 2 |
|
3 | 3 | ## 利用共享节点组网 |
4 | 4 |
|
5 | | -当你没有公网 IP 时,可以使用 EasyTier 社区提供的免费共享节点快速组网。节点间成功组网后, |
6 | | -会自动尝试 NAT 穿透并建立 P2P 连接,在成功 P2P 之前,共享节点会帮助转发数据。 |
| 5 | +当你没有公网 IP 时,可以使用 EasyTier 社区提供的免费共享节点快速组网。节点间成功组网后,会自动尝试 NAT 穿透并建立 P2P 连接,在成功 P2P 之前,共享节点会帮助转发数据。 |
| 6 | + |
| 7 | +注意:在 Easytier 中只有节点的概念,以下的共享节点可以理解为中心化组网中的公共服务器。 |
7 | 8 |
|
8 | 9 | 假设有两个节点 A 和 B: |
9 | 10 |
|
10 | | -1. 在节点 A 上执行(请替换 abc 为更复杂的网络名,否则会因为网络名冲突导致连接失败) |
| 11 | +1. 在节点 A 上执行以下命令: |
11 | 12 |
|
12 | 13 | ```sh |
13 | 14 | sudo easytier-core -i 10.144.144.1 --network-name abc --network-secret abc -p tcp://public.easytier.cn:11010 |
14 | 15 | ``` |
15 | 16 |
|
16 | | - > `-i` 代表指定虚拟网 IP 地址,默认 /24 网段; |
17 | | - > |
18 | | - > `--network-name` 和 `--network-secret` 代表网络名和网络密钥; |
19 | | - > |
| 17 | + > `-i` 代表指定虚拟网 IPv4 地址,默认 /24 网段; |
| 18 | + > |
| 19 | + > 例如:10.0.0.1/8 172.16.0.1/16 192.168.0.1/24; |
| 20 | + > |
| 21 | + > 注意:目前 Easytier 没有虚拟 IPv6 地址(意义不大); |
| 22 | + > |
| 23 | + > `--network-name` 和 `--network-secret` 为网络名和网络密钥; |
| 24 | + > |
| 25 | + > 可以使用 Unicode 字符,例如 --network-name 测试 --network-secret 测试 ; |
| 26 | + > |
20 | 27 | > `-p` 代表指定节点地址,此处使用官方的共享节点。 |
| 28 | + > |
| 29 | + > 也可使用其他地址,如 Easytier 公共服务器列表中的地址。 |
| 30 | + > |
| 31 | + |
| 32 | +::: warning 注意 |
| 33 | +由于默认使用的是 Easytier 官方的公共节点,服务器压力过大经常会造成延迟高、无法组网等问题,建议使用其他[公共节点](https://easytier.gd.nkbpal.cn/status/easytier)来组网。 |
| 34 | +此外在 Easytier 中 network-name 的优先级是最高的,对于每一个节点来说,只能有一个名称相同的 network-name 。 |
| 35 | +::: |
21 | 36 |
|
22 | | -2. 在节点 B 上执行 |
| 37 | +3. 在节点 B 上执行 |
23 | 38 |
|
24 | 39 | ```sh |
25 | 40 | sudo easytier-core -d --network-name abc --network-secret abc -p tcp://public.easytier.cn:11010 |
26 | 41 | ``` |
27 | 42 |
|
28 | | - > `-d` 代表 DHCP 模式,EasyTier 会自动获取一个 IP 地址。 |
| 43 | + > `-d` 代表 DHCP 模式,EasyTier 会自动获取一个虚拟 IP 地址。 |
| 44 | + > |
| 45 | + > 注意:在该例子中,由于没有公网 IP ,在进行组网时,请使用相同的公共服务器进行组网。 |
| 46 | + > |
| 47 | + > 如果您想在节点 A 和 节点 B 上使用不同的共享节点进行组网,请参考本节的 Easytier 集群功能。 |
29 | 48 |
|
30 | | -3. 测试联通性 |
| 49 | +4. 测试是否组网成功 |
31 | 50 |
|
32 | | - 两个节点应成功连接并能够在虚拟子网内通信,可以在节点 B 上执行进行测试。 |
| 51 | + 测试两个节点是否成功连接并能够在虚拟子网内通信,可以在节点 B 上执行以下命令进行测试。 |
33 | 52 |
|
34 | 53 | ```sh |
35 | 54 | ping 10.144.144.1 |
36 | 55 | ``` |
37 | 56 |
|
38 | 57 | ::: warning 注意 |
39 | | -部分系统默认开启防火墙并会阻止入站流量,可能会导致虚拟 IP 无法 ping 通或无法访问各种服务,需要手动关闭防火墙或添加规则。 |
| 58 | +一般来说系统默认开启防火墙并会阻止入站流量,很大概率会导致虚拟 IP 无法 ping 通或无法访问各种服务,需要手动关闭防火墙或添加规则放行。 |
40 | 59 | ::: |
41 | 60 |
|
42 | | -## 查看虚拟网状态 |
| 61 | +## 查看虚拟网络状态 |
43 | 62 |
|
44 | | -easytier-core 启动后,可以使用 easytier-cli 进行管理。 |
| 63 | +easytier-core 成功启动后,可以使用 easytier-cli 进行管理。 |
45 | 64 |
|
46 | | -- 查看虚拟网中的节点信息 |
| 65 | +- 可执行以下命令来查看虚拟网中的节点信息 |
47 | 66 |
|
48 | 67 | ```sh |
49 | 68 | easytier-cli peer |
@@ -97,9 +116,9 @@ easytier-cli node |
97 | 116 | └───────────────┴──────────────────────┘ |
98 | 117 | ``` |
99 | 118 |
|
100 | | -## 使用多个共享节点 |
| 119 | +## 同时使用多个共享节点组网 |
101 | 120 |
|
102 | | -为了避免单个共享节点故障导致虚拟网不可用,可以同时连接到多个共享节点。只需要指定多个 -p 参数即可,如:`-p tcp://1.1.1.1:11010 -p udp://1.1.1.2:11011`。虚拟网中每个节点最好指定相同的公共服务器列表。 |
| 121 | +为了避免单个共享节点故障导致虚拟网不可用,可以同时连接到多个共享节点。只需要指定多个 -p 参数即可,如:`-p tcp://1.1.1.1:11010 -p udp://1.1.1.2:11011`。虚拟网中每个节点最好指定相同的共享节点列表。 |
103 | 122 |
|
104 | 123 | 这依赖了 EasyTier 所支持的共享节点集群功能,假设有 A 和 B 两个共享节点,这两个共享节点互联组成集群。当 C 和 D 希望组网时,C 和 D 可以同时连接到 A 和 B,这样即使 A 或 B 故障,C 和 D 之间依然可以通信。组网模式如图所示: |
105 | 124 |
|
@@ -133,7 +152,7 @@ nodeB <-----> nodeD |
133 | 152 |
|
134 | 153 | ``` |
135 | 154 |
|
136 | | -即使出现网络分区,即 C 只能连接到 A,D 只能连接到 B,C 和 D 之间依然可以通信。 |
| 155 | +即使出现网络分区,C 因为某种原因只能连接到 A,D 因为某种原因只能连接到 B,C 和 D 之间依然可以通信,即两端使用了不同的共享节点依然能够进行组网。 |
137 | 156 |
|
138 | 157 | ```mermaid |
139 | 158 |
|
@@ -163,12 +182,12 @@ nodeB <-----> nodeD |
163 | 182 |
|
164 | 183 | ``` |
165 | 184 |
|
166 | | -## 同时加入多个虚拟网 |
| 185 | +## 同时加入/组建多个虚拟网络 |
167 | 186 |
|
168 | 187 | EasyTier 支持在同一个设备上同时运行多个进程,每个进程启动时使用不同参数即可加入不同的虚拟网。 |
169 | 188 | 需要注意,多个虚拟网的虚拟 IP 网段不应该重叠,否则会导致路由冲突。 |
170 | 189 |
|
171 | | -另外,多开 EasyTier 时,需要指定不同的监听器端口,否则会导致端口冲突。 |
| 190 | +另外,启动多个 EasyTier 实例时,需要指定不同的监听器端口,否则会导致端口冲突。 |
172 | 191 |
|
173 | 192 | 比如可以使用如下命令启动两个 EasyTier 进程: |
174 | 193 |
|
|
0 commit comments