Ports

The page lists the Neo4j-specific ports. They are in addition to those necessary for ordinary network operation.

All ports apply equally to IPv4 and IPv6. To listen on all IPv6 interfaces, use [::] instead of 0.0.0.0 as the listen address, for example [::]:7687, and [::1]:7687 for the loopback interface.

Specific recommendations on port openings cannot be made, as the firewall configuration must be performed according to your particular conditions. When exposing network services, make sure they are always protected.

Listen address configuration settings

The listen address configuration settings will set the network interface and port to listen on. For example, the IP-address 127.0.0.1 and port 7687 can be set with the value 127.0.0.1:7687. The table below shows an overview of available Neo4j-specific ports and related configuration settings.

Table 1. Listen address configuration settings overview
Name Default port Related configuration setting

Backup

6362

server.backup.listen_address

HTTP

7474

server.http.listen_address

HTTPS

7473

server.https.listen_address

Bolt

7687

server.bolt.listen_address

Cluster internal traffic

6000

server.cluster.listen_address

Cluster RAFT

7000

server.cluster.raft.listen_address

Cluster routing connector

7688

server.routing.listen_address

Graphite monitoring

2003

server.metrics.graphite.server

Prometheus monitoring

2004

server.metrics.prometheus.endpoint

JMX monitoring

3637

server.jvm.additional=-Dcom.sun.management.jmxremote.port=3637

Remote debugging

5005

server.jvm.additional=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005

The configuration setting server.default_listen_address configures the default network interface to listen for incoming connections.

Advertised address configuration settings

The advertised address configuration settings are used for routing purposes. An advertised address is composed of a hostname/IP-address and port. For example, the IP-address 127.0.0.1 and port 7687 can be set with the value 127.0.0.1:7687. If a host name resolution service has been configured, the advertised address can use a hostname, for example, example.com:7687. The table below shows an overview of available Neo4j-specific ports and related configuration settings.

Table 2. Advertised address configuration settings overview
Name Default port Related configuration setting

HTTP

7474

server.http.advertised_address

HTTPS

7473

server.https.advertised_address

Bolt

7687

server.bolt.advertised_address

Cluster internal traffic

6000

server.cluster.advertised_address

Cluster RAFT

7000

server.cluster.raft.advertised_address

Cluster routing connector

7688

server.routing.advertised_address

The configuration setting server.default_advertised_address configures the default hostname/IP-address for advertised address.

Ports used by Neo4j

Backup

Default port: 6362

Table 3. Backup
Related configuration setting Default value Description

server.backup.listen_address

127.0.0.1:6362

Network interface and port for the backup server to listen on.

server.backup.enabled

true

Enable support for running online backups.

In production environments, external access to the backup port should be blocked by a firewall.

For more information, see Backup and restore → Server configuration.

HTTP

Default port: 7474

Table 4. HTTP connector
Related configuration setting Default value Description

server.http.listen_address

:7474

Network interface and port for the HTTP connector to listen on.

server.http.advertised_address

:7474

Advertised hostname/IP-address and port for the HTTP connector.

server.http.enabled

true

Enable the HTTP connector.

  • The HTTP connector is enabled by default.

  • The network communication is unencrypted.

  • Used by Neo4j Browser and the HTTP API.

For more information, see Configure network connectors.

HTTPS

Default port: 7473

Table 5. HTTPS connector
Related configuration setting Default value Description

server.https.listen_address

:7473

Network interface and port for the HTTPS connector to listen on.

server.https.advertised_address

:7473

Advertised hostname/IP-address and port for the HTTPS connector.

server.https.enabled

false

Enable the HTTPS connector.

  • The network communication is encrypted.

  • Used by Neo4j Browser and the HTTP API.

For more information, see Configure network connectors.

Bolt

Default port: 7687

Table 6. Bolt connector
Related configuration setting Default value Description

server.bolt.listen_address

:7687

Network interface and port for the Bolt connector to listen on.

server.bolt.advertised_address

:7687

Advertised hostname/IP-address and port for the Bolt connector.

server.bolt.enabled

true

Enable the Bolt connector.

server.bolt.tls_level

DISABLED

Encryption level for the Bolt connector.

  • By default, the Bolt connector is enabled, but its encryption is turned off.

  • Used by Cypher Shell, Neo4j Browser, and the official Neo4j drivers.

For more information, see Configure network connectors.

Cluster

All instances of Neo4j Enterprise will open these ports, whether or not they are currently in a multi-process configuration.

In production environments, external access to the cluster transaction port 6000 should be blocked by a firewall unless clustering is configured with SSL encryption (dbms.ssl.policy.cluster.enabled=true with client_auth=REQUIRE). This port allows unauthenticated database replication.

From Neo4j 2025.01, port 5000 is no longer used.

Table 7. Cluster listen address
Name Default port Default value Related configuration setting

Internal traffic

6000

:6000

server.cluster.listen_address See Cluster server discovery.

RAFT

7000

:7000

server.cluster.raft.listen_address

Routing connector

7688

:7688

server.routing.listen_address

Table 8. Cluster advertised address
Name Default port Default value Related configuration setting

Internal traffic

6000

:6000

server.cluster.advertised_address See Cluster server discovery.

RAFT

7000

:7000

server.cluster.raft.advertised_address

Routing connector

7688

:7688

server.routing.advertised_address

The ports are likely be different in a production installation; therefore the potential opening of ports must be modified accordingly.

For more information, see:

Graphite monitoring

Default port: 2003

Table 9. Graphite
Related configuration setting Default value Description

server.metrics.graphite.server

:2003

Hostname/IP-address and port of the Graphite server.

server.metrics.graphite.enabled

false

Enable exporting metrics to the Graphite server.

This is an outbound connection that enables a Neo4j instance to communicate with a Graphite server.

For further information, see Expose metrics → Graphite and the Graphite official documentation.

Prometheus monitoring

Default port: 2004

Table 10. Prometheus
Related configuration setting Default value Description

server.metrics.prometheus.endpoint

localhost:2004

Network interface and port for the Prometheus endpoint to listen on.

server.metrics.prometheus.enabled

false

Enable exporting metrics with the Prometheus endpoint.

For more information, see Prometheus.

JMX monitoring

Default port: 3637

Table 11. Java Management Extensions
Related configuration setting Default value Description

server.jvm.additional=-Dcom.sun.management.jmxremote.port=3637

3637

Additional setting for exposing the Java Management Extensions (JMX).

Remote debugging

Default port: 5005

Table 12. Remote debugging
Related configuration setting Default value Description

server.jvm.additional=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005

:5005

Additional setting for exposing remote debugging.

For more information, see the Java Reference → Setup for remote debugging.

Glossary

allocator

A component in the cluster that allocates databases to servers according to the topology constraints specified and an allocation strategy.

asynchronous replication

Asynchronous replication is used by secondary copies to poll for new transactions, which means they cannot be guaranteed to have received the most recent transactions. This enables efficient scale-out of read-performance.

Aura instance

A fully-managed DBMS represented by a single instance ID, that is running in the Neo4j Aura cloud.

auto-commit transaction

An automatically committed transaction that contains a single query.

Bolt protocol

Bolt is a protocol used for interaction between Neo4j instances and drivers.

bookmark

A marker the client can request from the cluster to ensure that it is able to read its own writes so that the application’s state is consistent and only databases that have a copy of the bookmark are permitted to respond.

category (Bloom)

A category is based on a node label and is defined in a Perspective as a way of visually distinguishing nodes with the same label(s).

causal consistency

All servers in a cluster agree on the order in which transactions take place. The position of a server on the causal chain can be guaranteed using a bookmark.

cluster

A Neo4j DBMS that spans multiple servers working together to increase fault tolerance and/or read scalability. Databases on a cluster may be configured to replicate across servers in the cluster thus achieving read scalability or high availability.

client application

Software that interacts with a Neo4j server.

commit

A commit is the successful completion of a transaction, which ensures durability of any changes made. For more details, visit Operations Manual → Transaction management.

composite database

Composite databases are the means to access partitioned graph data with a single Cypher query.

constraint

Constraints are sets of data modeling rules that ensure the data is consistent and reliable.

Cypher®

Neo4j’s graph query language.

data model

A data model defines how information is organized in a database. A good data model will make querying and understanding your data easier. In Neo4j, the data models have a graph structure.

database

A database is a container used by the DBMS to manage and store graph data. The physical structure of data is controlled by the database.

database vs graph

Databases are the physical containers of graph data. Graphs are the logical structure of data in Neo4j.

Database Management System

Database Management System, or DBMS, capable of managing multiple databases. A DBMS may run on a single server, or span several servers configured as a cluster.

database schema

The prescribed property existence and datatypes for nodes and relationships.

deallocate

An act of removing a database from a server or a server from a cluster without loss of data or reduced fault tolerance.

degree (of a node)

The number of relationships of a specific node; loops are counted twice.

disaster recovery

A manual intervention to restore availability of a cluster, or databases within a cluster.

driver

A software library that provides access to Neo4j from a particular programming language.

election

In the event that the Raft leader becomes unresponsive, followers automatically trigger an election and vote for a new leader.

entity

A node or a relationship.

expression (Cypher)

A component of a Cypher query which produces values. It may be used in projections, as a predicate, or when setting properties on graph elements.

fabric

Fabric is the architectural design of a unified system that provides a single access point to local or distributed graph data.

fault tolerance

A guarantee that a cluster can maintain a database’s persistence and availability in the event of one or more servers failing.

follower

A primary copy of a database acting as a follower, receives and acknowledges synchronous writes from the leader.

Generative AI (GenAI)

A type of artificial intelligence (AI) system that generates text, images, or other media in response to prompts.

graph

A logical representation of a set of nodes where some pairs are connected by relationships.

index

Data structure that improves read performance of a database.

knowledge graph

A specific type of graph that has an organizing principle so that a user (or a computer system) can reason about the underlying data. The organizing principle provides an additional layer of structure that adds context to support knowledge discovery.

label

Marks a node as a member of a named and indexed subset. A node may be assigned zero or more labels.

leader

A single primary copy of a database is designated as the leader. It receives all write transactions from clients and replicates writes synchronously to followers and asynchronously to secondary copies of the database.

main database

In terms of Neo4j Enterprise Studio, the database(s) containing the user’s data. Can exist in the same Neo4j deployment as the tool asset database.

motif

A description of a specific pattern within a graph.

node

A node represents an entity or discrete object in your graph data model. Nodes can be connected by relationships, hold data in properties, and are classified by labels.

operator

A symbol representing a mathematical or logical operation.

parameter

Named value provided when running a Cypher statement.

path

A sequence of nodes and the relationships connecting them, that does not contain duplicate relationships. Several paths can match a pattern.

pattern

A specific arrangement of nodes and relationships that can be matched in a graph. A pattern follows a motif.

perspective (Bloom)

A Perspective defines a certain business view or domain that can be found in the target Neo4j graph. A single Neo4j graph can be viewed through different Perspectives, each tailored for a different business purpose.

primary

A copy of the database that is able to process write transactions and is eligible to be elected as a leader. It participates in fault tolerant writes as it is part of the majority required to acknowledge and commit write transactions.

primary vs secondary

In a cluster, databases can operate in either primary or secondary mode. Primary databases are able to process write and read transactions, ensuring fault tolerance. Secondary databases are replicated asynchronously from primaries, and their main purpose is to provide read scaling within the cluster.

project (Aura)

An isolated environment in the unified Aura console that contains its own database instances, configurations, and resources. Preceded by tenant in the classic Aura console.

property

Properties are key-value pairs that are used for storing data on nodes and relationships.

query (Cypher)

A statement that retrieves or writes information to a database.

Raft group

A group of servers that are participating in hosting a particular database in primary mode.

Raft group member

A server that is participating in a Raft group. A server can be a member of one or more groups.

Raft log

A shared log between all Raft group members that is guaranteed to be consistently updated and viewed by those members. The log contains both database data and operational state of the Raft group.

Raft protocol

The networking mechanism that enables a database to replicate its data across multiple servers to give high availability for accessing the data and high durability to the data stored.

read scaling

Distributing query load by creating additional database copies hosted in secondary mode (read-only).

relationship

A relationship represents a connection between nodes in your graph data model. Relationships connect a source node to a target node, hold data in properties, and are classified by type.

secondary

An asynchronously replicated copy of the database that provides read scaling within the cluster.

seed

A seed is a database dump or a full backup used to create a database on a cluster. This is sometimes called seeding.

server

A physical machine, a virtual machine, or a container running an instance of Neo4j. Servers can be standalone or part of a cluster.

session

A causally linked sequence of transactions.

session consistency

An alternative name for Neo4j’s causal consistency.

standalone

A single server running Neo4j and not part of a cluster.

synchronous replication

Synchronous replication requires the leader primary to replicate a transaction and block the commit until a quorum of the follower primaries acknowledges that the transaction is successfully replicated. Once the transaction is replicated, the commit is allowed to proceed. This ensures data durability and consistency within the cluster.

system database

A database used by Neo4j to store system information.

tenant (Aura)

An isolated environment in the classic Aura console that contains its own database instances, configurations, and resources. Replaced by project in the unified Aura console.

tool asset database

In terms of Neo4j Enterprise Studio, the database where tools' assets are stored. This can be in the same Neo4j deployment as the main database(s) or in a separate deployment.

topology

A configuration that describes how the copies of a database should be spread across the servers in a cluster, see primary mode and secondary mode.

transaction

A transaction comprises a unit of work performed against a database. It is treated in a coherent and reliable way, independent of other transactions. Transactions comply with the ACID consistency model (atomic, consistent, isolated, and durable).