---
title: Node Deployment config.ini Reference
slug: node-deployment-config-ini
description: Reference for the node_reward_type field in the IC-OS installer config.ini — how to look up the correct value, what happens when it is missing, and how to verify the value after deployment.
tags:
  - node-provider
  - deployment
  - ic-os
  - troubleshooting
date: 2026-05-04
related:
  - node-provider-documentation
  - node-deployment-gen-2
  - node-deployment-gen-1
  - reward-configuration
---

The `config.ini` file on the IC-OS installer USB controls how a node
machine joins the Internet Computer. Most of the file is networking
(IPv6 prefix, gateway, optional IPv4 and domain) and is covered in the
deployment runbooks themselves. This entry documents the one field
that is easy to miss: `node_reward_type`.

A node deployed without a valid `node_reward_type` may register
successfully but **will not earn rewards**. The Network Nervous System
(NNS) treats this field as the operator's declaration of which reward
category the node belongs to.

## What `node_reward_type` is

`node_reward_type` is a single line in `config.ini` that tells the
network which reward category the node should be paid under. The value
must match a category that the NNS has approved for your node operator
record.

Common values include:

- `type0`
- `type1`
- `type1.1`
- `type3`
- `type3.1`

The set of valid values is defined by NNS configuration and changes
over time as the community updates the reward table. Treat the list
above as illustrative, not exhaustive.

## How to determine the correct value

Look up your node operator record using `ic-admin`. The
`rewardable_nodes` field lists the categories your operator is
permitted to deploy under, with a count for each.

```shell
ic-admin --nns-url https://ic0.app get-node-operator <your_node_operator_id>
```

Example output:

```
Using NNS URLs: ["https://ic0.app/"]
Fetching the most recent value for key: node_operator_record_c5ssg-eh22p-pmsn6-fpjzj-k5nql-mx5mc-7gb4a-4klco-c4f37-ydnfp-bae
Most recent version is 44799. Value:
NodeOperator { node_operator_principal_id: c5ssg-eh22p-pmsn6-fpjzj-k5nql-mx5mc-7gb4a-4klco-c4f37-ydnfp-bae, node_allowance: 3, node_provider_principal_id: i7dto-bgkj2-xo5dx-cyrb7-zkk5y-q46eh-gz6iq-qkgyc-w4qte-scgtb-6ae, dc_id: "bu1", rewardable_nodes: {"type0": 0, "type1": 28}, ipv6: None }
```

In this record, `rewardable_nodes: {"type0": 0, "type1": 28}` tells you
that `type1` is approved for this operator. Set `node_reward_type=type1`
in `config.ini`.

If the record lists multiple non-zero categories, choose the one that
matches the reward configuration for the specific node you are
deploying.

> [!TIP]
> The [`dre` tool](https://dfinity.github.io/dre/getting-started.html)
> exposes the same data filtered by data center. To see every operator
> record for one data center:
>
> ```shell
> dre registry --filter=dc_id=<dc_id>
> ```

## Looking up the entire reward table

To see every category currently defined by NNS configuration:

```shell
ic-admin --nns-urls https://ic0.app get-node-rewards-table
```

## What happens if you leave it empty

> [!WARNING]
> A node deployed with an empty or invalid `node_reward_type` may
> register but **will not be paid rewards**. Older nodes deployed
> before March 2025 had this field auto-filled by the registry; new
> deployments must set it explicitly.

The two failure modes are:

1. **Registration fails** with a `Node reward type is required` error.
   The node never joins the registry and you must redeploy with a
   corrected `config.ini`.
2. **Registration succeeds but rewards are zero.** The node appears on
   the dashboard and runs normally, but the reward stream is empty.
   Verifying after deployment (next section) catches this case.

## Verifying after deployment

After the node joins the registry, query its record directly:

```shell
ic-admin --nns-url https://ic0.app get-node <node-id>
```

In the resulting `Node { ... }` block, look for `node_reward_type:`. A
correctly configured node shows `node_reward_type: Some("type1")` (or
whichever category you set). A node showing `node_reward_type: None` is
running for free — fix `config.ini` and redeploy that machine.

## Best practices

- Confirm `node_reward_type` against `rewardable_nodes` for your
  operator record **before** writing the USB image, not after the node
  has booted.
- Use the same value for every node you deploy under one operator
  record, unless the NNS-approved record explicitly assigns multiple
  categories.
- If you maintain a reusable `config.ini` template, treat
  `node_reward_type` as data-center-specific — it is keyed to the
  operator record, which is keyed to the data center.
- After deployment, check both the operator record and the node record
  to confirm the value propagated.

## Related

- [Node Deployment Guide (Gen-2)](/wiki/node-deployment-gen-2/) — the
  current non-HSM deployment runbook that consumes this file.
- [Node Deployment Guide (Gen-1, with HSM)](/wiki/node-deployment-gen-1/)
  — the legacy HSM deployment runbook.
- [Troubleshooting Node Deployment Errors](/wiki/node-deployment-troubleshooting/)
  — what to do when registration fails.
- [Reward Configuration Guide](/wiki/reward-configuration/) — the
  separate proposal that turns reward eligibility on.
