# Interacting with a Public Node

## Overview

The [`RPC`](/ontology-node/interact-with-public-node.md) interface, [`RESTful`](/ontology-node/interact-with-public-node.md) interface, and [`WebSocket`](/ontology-node/interact-with-public-node.md) interface of the Ontology node follow a set of public interface specifications.

By default, the `RESTful` interface listens on `port 20334`, the `WebSocket` interface listens on `port 20335`, the `RPC` interface listens on `port 20336`, and the `EVM` interface listens on `port 10339`.

## Using public nodes

It is inconvenient for developers to run their own nodes. Therefore, the Ontology blockchain provides the `Polaris` test network node and the `Ontology` main network node for developers to use, all supporting `RPC`, `RESTful`, and `WebSocket` calls, and using the default port number.

{% hint style="success" %}
HTTPS is supported in `port 10334` of **Polaris TestNet** node <http://polaris1.ont.io> and **Ontology MainNet** node <http://dappnode1.ont.io>.
{% endhint %}

### Polaris TestNet

The public Ontology polaris test network nodes:

* <http://polaris1.ont.io>
* <http://polaris2.ont.io>
* <http://polaris3.ont.io>
* <http://polaris4.ont.io>
* <http://polaris5.ont.io>

{% hint style="info" %}
If you want to develop on a `Polaris` test network, you can apply for test `ONG` [here](https://developer.ont.io/applyOng).
{% endhint %}

### Ontology MainNet

The public Ontology main network nodes:

* <http://dappnode1.ont.io>
* <http://dappnode2.ont.io>
* <http://dappnode3.ont.io>
* <http://dappnode4.ont.io>

A **private node** can also be set up on the local machine. This can be done by directly compiling and running the [source code](https://github.com/ontio/ontology), but for the convenience of developers, Ontology provides a method to directly download and run a private node. Please follow [this](/ontology-node/interact-with-public-node.md) link to find the guide.

To find the methods and relevant details on the aforementioned `APIs`, please follow [this](/developer-tools/api.md) link.

{% hint style="info" %}
For the **Rosetta node API** reference please follow [**this**](/developer-tools/api/rosetta-node-api.md) link.
{% endhint %}


---

# 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.ont.io/ontology-node/interact-with-public-node.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.
