# 在一台VPS上设置多个Masternode

## 1. 获取支持IPv6的VPS服务器 <a href="#id-1-huo-qu-zhi-chi-ipv-6-de-vps-fu-wu-qi" id="id-1-huo-qu-zhi-chi-ipv-6-de-vps-fu-wu-qi"></a>

你需要具有IPv6支持的VPS服务器才能在其上运行多个masternode，你可以从一些VPS提供商处获取一些参考如下：

* [Aruba](https://www.arubacloud.com/)
* [DigitalOcean](https://www.digitalocean.com/)
* [Hetzner](https://www.hetzner.de/)
* [Vultr](https://www.vultr.com)

选择具有以下规格的VPS服务器：

* 至少**1 GB的内存**
* **Ubuntu 16.04 LTS**作为操作系统
* **IPv6支持**（有的提供商默认提供，有的提供商必须另外选择）

为默认的“root”用户设置一个**强密码**（24个字符或更多）并保存。

选择VPS服务器的名称，提供商提供不同地区部署的VPS - 选择你喜欢的地区，这应该需要几分钟。

**保存VPS服务器的IP地址。**

另一个重要步骤是找出你的服务器分配的IPv6地址，。 VPS提供商将为你分配一系列的IPv6地址，你只需要保存第一个IPv6地址，因为我们将使用连续的地址， IPv6地址如下所示：

```
2a00:6d40:0040:5C0b:0000:0000:0000:0001
```

连续的IPv6地址如下所示：

```
2a00:6d40:0040:5C0b:0000:0000:0000:00022a00:6d40:0040:5C0b:0000:0000:0000:0003etc.
```

## 2. 登录和系统设置 <a href="#id-2-deng-lu-he-xi-tong-she-zhi" id="id-2-deng-lu-he-xi-tong-she-zhi"></a>

下载[PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)，我们将用来访问我们的VPS的SSH客户端，选择适合你的操作系统版本（64位或32位）， 安装PuTTY并运行它。

你会看到这个屏幕：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzKKO90QjqDqAtenfS%2F50.png?alt=media\&token=413b83dd-2ec7-4c8b-9773-f2c2543cf6d7)

在“*Host name (or IP address)*”框中输入你的**VPS IP地址**。

保持其他设置不变，在“*Saved Sessions*”框中输入任意Session名称，然后单击“保存”，这将保存你的VPS信息，你只需要双击Session名称以连接到你的VPS。

通过单击“打开”或双击列表中的Session名称连**接到你的VPS**，当你第一次连接时，PuTTY将显示一个警告窗口：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzKtmT_11gPkMiBK--%2F51.png?alt=media\&token=3d62a924-237e-41ef-b19b-690e8e77ef72)

单击“Yes”继续连接且让此窗口以后不显示。

你将看到要求你登录的PuTTY终端屏幕：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzLDJmRzzcAwP1tKXm%2F52.png?alt=media\&token=2cadbc47-71df-4ae4-8f06-0f304065ee21)

输入你的VPS用户名“root”，然后按Enter键，。之后系统会要求你输入密码，输入它并再次按Enter键，你现在将看到与此类似的屏幕：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzLVj8U3Im81KLER_t%2F53.png?alt=media\&token=216203d2-357a-4829-b109-aa89fb85b8ee)

更新VPS服务器：你的VPS需要更新。您可以使用以下命令运行它：

```
apt-get update -y && apt-get upgrade -y
```

{% hint style="info" %}
你可以通过**右键**将命令**粘贴**到PuTTY终端窗口中。只需将光标放在要粘贴文本的位置，然后点击鼠标右键即可。

你也可以从终端窗口使用鼠标**复制**字段。
{% endhint %}

等待更新过程完成，你将返回到命令提示符：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzMFvPh_TTJ8tGYaUC%2F54.png?alt=media\&token=12913757-aef6-4fe1-bc28-58d8612f2ac0)

## 3. 为你的masternodes设置网络 <a href="#id-3-wei-ni-de-masternodes-she-zhi-wang-luo" id="id-3-wei-ni-de-masternodes-she-zhi-wang-luo"></a>

{% hint style="warning" %}
某些VPS提供商允许你通过控制面板配置IPv6地址，因此不需要执行此步骤，你可以跳到**第4部分 - Nodemaster脚本安装**。

只需确保你的masternodes配置足够的IPv6地址！
{% endhint %}

{% hint style="warning" %}
有的VPS提供商没有自动的IPv6配置，但允许你在VPS配置过程中启用IPv6，在这种情况下，interfaces文件中的第一个IPv6地址已经配置好，因此你需要在下面的配置过程中跳过第一个IPv6地址，然后添加缺少的地址。
{% endhint %}

现在开始为你的masternodes建立网络。我们将使用Linux内置的文本编辑器Nano来完成这项工作。输入以下内容：

```
nano /etc/network/interfaces
```

Nano将打开包含网络配置的interfaces文件：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzNH485ObTARRCRgyG%2F55.png?alt=media\&token=042ffa5a-63df-4cf8-8690-68e8c43caea2)

决定要运行多少个masternode，因为你必须为它们配置足够的IPv6地址。

需要先前VPS提供商分配给你的IPv6地址。

将以下文本复制到文本编辑器中，并**将“YourIPv6address”部分替换为你的IPv6地址**：

```
up ip addr add YourIPv6address/64 dev eth0
```

现在看起来应该类似于：

```
up ip addr add 2a01:6e60:0010:23fd:0000:0000:0000:0001/64 dev eth0
```

将包含IPv6地址的文本复制到剪贴板中。

现在切换到PuTTY并将光标移动到文件尾的新一行。

确保它位于行的开头，然后通过右键单击粘贴文本，按Enter进入下一行并再次粘贴文本，根据需要重复多次。

现在你的终端屏幕应该与此类似：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzI-Iul0K6-wvLqROc%2F-LYzOO5iL1j5G2UmJ28h%2F56.png?alt=media\&token=d35b58c5-bea2-48a5-822d-c4005945ba0a)

请注意，此VPS提供商没有提供自动配置IPv6地址，因此我必须自己配置它们。

要退出Nano，请按CTRL + X，然后按Y和Enter确认并将更改写入文件，你将返回到命令提示符。

现在是时候**重启你的VPS**了，请输入：

```
reboot
```

然后按Enter键，你将与​​VPS断开连接并关闭此终端窗口，重新启动PuTTY并再次登录。

{% hint style="danger" %}
**不要跳过重启步骤，因为这对设置IPv6地址至关重要！**
{% endhint %}

现在我们需要测试IPv6地址是否处于活动状态，请输入：

```
ping6 <your IPv6 address>
```

如果地址处于活动状态，你将收到类似回复：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LZ80nHtYON4dAmjIivx%2F-LZ86JJTgSQ8VVk46tPR%2F1.png?alt=media\&token=38a1e555-e768-4ba1-9a92-a769deae8c3f)

按CTRL + C取消ping

对所有masternode IPv6地址重复此过程。如果所有这些都响应你的ping，那么你就可以安装Nodemaster脚本了。

## 4. Nodemaster脚本安装 <a href="#id-4-nodemaster-jiao-ben-an-zhuang" id="id-4-nodemaster-jiao-ben-an-zhuang"></a>

将命令复制到VPS并输入：

```
git clone https://github.com/NewCapital/nodemaster MNVPS && cd MNVPS
```

这会将Nodemaster脚本克隆到VPS上的MNVPS目录。

成功克隆後应该给你这个响应并返回到命令提示符：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LYzP-Wmi8z6lIVOYfRW%2F-LYzQ25QlJ0QtfyzWFdc%2F57.png?alt=media\&token=78159070-450d-4b43-901e-31245a239afc)

{% hint style="info" %}
你可以先设置更多的masternodes，并在你获得足够的抵押品后再启动它们。
{% endhint %}

开始实际安装，请输入（在此示例中，**4**是我们要安装的**masternode数量**）：

```
./install.sh -p twins -n 6 -c 4
```

该脚本将开始设置你的masternode并编译FIX源文件。

要有耐心，因为这需要一段时间（在我的情况下需要18分钟）。

这是脚本完成设置VPS并编译FIX源代码后看到的屏幕：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LiCIj_RZEcPMiSXc_cX%2F-LiCJ3sC-Wf9acmajyAA%2F1.png?alt=media\&token=9feca0c1-5961-4868-890a-385b3e665a47)

{% hint style="danger" %}
**不要运行**屏幕上列出的命令，因为你必须先编辑VPS上的各个masternode配置文件！
{% endhint %}

现在我们需要编辑masternode配置文件。它们位于/etc/masternodes目录中，因此请输入以下命令移至该目录：

```
cd /etc/masternodes
```

获取配置文件列表

```
ls
```

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LiCIj_RZEcPMiSXc_cX%2F-LiCJDWzU97wgfxwhHKk%2F2.png?alt=media\&token=22a3c8ea-3f18-4aec-8385-4efbc6236edd)

我们需要使用nano编辑文件并填写一些信息。为此，请输入：

```
nano fix_nX.conf
```

用适当数量替换X。 \
有一个重要栏位：Masternode私钥栏。我在图片上标明了它：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LiCIj_RZEcPMiSXc_cX%2F-LiCJSRWI_4G9Q7MEMqe%2F3.png?alt=media\&token=bd807881-5566-44ee-b925-539a54851c14)

删除Masternode私钥字段&#x4E2D;***=符号***&#x540E;的字串 并粘贴你的**masternode私钥**。

现在按CTRL + X，然后按Y和ENTER保存文件。

重复此步骤的次数与要配置的masternodes一样多。

## 5. 开始你的masternodes <a href="#id-5-kai-shi-ni-de-masternodes" id="id-5-kai-shi-ni-de-masternodes"></a>

现在已准备好启动masternode守护进程：

**如果你配置好了脚本内的所有masternodes**，则只需输入即可

```
activate_masternodes_twins
```

你的masternodes将被启动。

**如果你只配置了脚本内的某些masternode**，则必须为每个masternode输入3个命令：

```
systemctl daemon-reload
systemctl enable fix_n1
systemctl restart fix_n1
```

将X替换为你配置的masternode的编号，现在你要通过输入以下内容来**验证你的守护程序是否正在运行**：

```
systemctl status fix_nX.service
```

将X替换为要检查的masternode的编号。

成功运行的masternode将回覆以下响应：

![](https://blobscdn.gitbook.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LYvndWBvrmJxi5m4Vyp%2F-LiCIj_RZEcPMiSXc_cX%2F-LiCJx2KJEpEH9b5OTgv%2F4.png?alt=media\&token=1a57e1a9-3c4d-4e1b-a5a6-c53b150ab9a5)

键入CTRL + C退出并重复所有masternode的过程。

就是这样，你已经完成了，现在你只需要从你的控制钱包中启动你的masternodes。

## 6. 检查你的Masternodes <a href="#id-6-jian-cha-ni-de-masternodes" id="id-6-jian-cha-ni-de-masternodes"></a>

我们现在可以检查每个masternode的状态&#x20;

将X替换为你配置的masternode的编号

```
fix-cli -conf=/etc/masternodes/fix_nX.conf masternode status 
```

并查看masternode是否已成功启动。&#x20;

你应该看到类似的信息：\
`{`\
`“txhash” : “334545645643534534324238908f36ff4456454dfffff51311”,`\
`“outputidx” : 0,`\
`“netaddr” : “45.11.111.111:17464”,`\
`“addr” : “FB1NnSssudT8rPSvnHWeTR7v5qstmxeVNC”,`\
`“status” : 4,`\
`“message” : “Masternode successfully started”`\
`}`

**在钱包中启动masternode后，你也可以在区块浏览器检查masternode。**

要执行此操作，请使用鼠标（在上面的示例中）从终端窗口复制您的masternode钱包地址(上面的释例 `FB1NnSssudT8rPSvnHWeTR7v5qstmxeVNC`)，访问[FIX区块浏览器](https://explorer.fix.network/masternodes)的masternode部分，在masternodes列表搜索你的masternode地址。你的masternode状态应显示为“ACTIVE”。

{% hint style="info" %}
启动masternode后，其状态将按以下顺序更改：

"ACTIVE" --> 启动后约2-3小时

"EXPIRED" --> 只需几分钟

"REMOVE" --> 只需几分钟

"ENABLED" --> 最终masternode将保持此状态， "Active" 时间将开始增加

注意：若你的本地钱包中的masternode状态为“MISSING”，请检查其在[区块浏览器](https://explorer.fix.network/masternodes)中masternode的状态，它可能是EXPIRED / REMOVE。
{% endhint %}

{% hint style="danger" %}
不要着急！收到第一次masternode奖励后，之后再次获得奖励的时间要花**2倍到3倍**。\
如果从钱包再次启动masternode，此计时器将重置为零。
{% endhint %}

恭喜！你已成功创建了masternode。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fix.network/zhong-wen/fix-masternodes/zai-yi-tai-vps-shang-she-zhi-duo-ge-masternode.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
