> For the complete documentation index, see [llms.txt](https://developer.gaianet.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.gaianet.ai/getting-started-as-a-developer/setting-up-your-node/joining-the-protocol.md).

# Joining the protocol

When you run a node with the Getting Started guide, you may notice that the GaiaNet software has generated a node ID for you. The node ID is an ETH address. The easiest way to find the node ID is to use `gaianet info` to print the node ID and device ID on the terminal.

```
gaianet info
```

The output will be the following:

```
Node ID: 0x80642b1----9a76a284efeb2bb6d142e

Device ID: device-e77---1446f1b51
```

<figure><img src="/files/u9B6bXGZBZSXI1AaaWUF" alt=""><figcaption></figcaption></figure>

To receive your rewards, all you need to do is bind your node ID and device id with a Metamask account via the GaiaNet web portal:

1. Open <https://www.gaianet.ai/> on your browser and log in to the website with your Metamask account
2. Select the **Node** section by clicking on your account, then click on the +Add Node button. Next,
3. Copy and paste your node ID into the relevant field and do the same for the device ID in the second box. Then, click on the Join button.

<figure><img src="/files/hmCqTngpqJMMXXsGcVXM" alt=""><figcaption></figcaption></figure>

* After your node is joined successfully, it will be displayed in the list of nodes on the Node Page.

<figure><img src="/files/aUowGEWuePnYZwD0OkwP" alt=""><figcaption></figcaption></figure>

* You can bind multiple node ID and its corresponding device ids to your MetaMask wallet address if you are running multiple nodes.

> Please do not share the device id with others.

## Protecting your node ID and device ID[​](https://docs.gaianet.ai/node-guide/register#protect-your-node-id-and-device-id) <a href="#protect-your-node-id-and-device-id" id="protect-your-node-id-and-device-id"></a>

The GaiaNet installer generates a pair of ETH address and keystore and password for your node automatically. This information is stored in the `gaianet/nodeid.json` file. Please keep the JSON file carefully.

* The ETH address is your node ID. You will use this ETH address to join the GaiaNet network.
* The keystore stores the private key associated with the ETH address encrypted by the password.

The `nodeid.json` is the only proof that your node belongs to you. In many protocol operations, you will need this private key to sign request messages to send to the protocol smart contracts.

The device id is only visible to yourself.

## Selecting a different domain[​](https://docs.gaianet.ai/node-guide/register#select-a-different-domain) <a href="#select-a-different-domain" id="select-a-different-domain"></a>

By default, a new GaiaNet node joins the `gaianet.network` domain. You can select a different domain to join by putting the GaiaNet domain's public DNS name in the `domain` field in the `config.json`. Please note that most GaiaNet domains require approval for nodes to join. You have to abide by the domain's rules before your node becomes publicly accessible on the domain URL.

<br>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://developer.gaianet.ai/getting-started-as-a-developer/setting-up-your-node/joining-the-protocol.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.
