Startup Arguments

Required Gateway Arguments

The following parameters are required for Gateway operation. Each argument is prefixed with two dashes. Parameters are indicated by chevrons, e.g., “< parameter >”, and defaults are noted when available.

Parameter

Description

Example

blockchain-protocol

Blockchain protocol of the blockchain node

Ethereum

blockchain-ip

IP address of the blockchain node. It is required unless using the enode argument

172.17.0.1

enode

Enode of the blockchain node. It is required unless using the blockchain-ip argument

enode://public_key_of_the_blockchain _node@ip_of_blockchain_node:port

node-public-key

(Ethereum only) Node ID of your Ethereum node. You can retrieve your node ID using the Ethereum rpc command admin.nodeInfo

50ff319…b35b76

Optional Gateway Arguments

Below is a list of optional command line arguments accepted by the bloXroute Gateway. Each argument is prefixed with two dashes and is followed by a parameter where applicable. For example:--external-ip 3.85.25.119

Parameter

Description

Default

Example

blockchain-port

The blockchain node port.

Ethereum: 30303, Bitcoin Cash: 8333

30303

blockchain-network

Blockchain network of the blockchain node the Gateway will connect to. This is mainly used for users that are using the bloXroute testnet. To use something other than the Mainnet, please contact bloXroute support for instructions.

Mainnet

Mainnet

external-ip

Public IP address of the Gateway. Please specify your IP address using external-ip if the Gateway cannot access the url “http://checkip.dyndns.org/” to automatically detect its IP address.

N/A

3.85.25.119

external-port

External port is the port on which the Gateway can receive external connections from other Gateways in the network. If using the enode parameter, the port specified in the enode overrides this one.

1801

1801

rpc-host

Gateway RPC server host.

127.0.0.1

3.83.217.86

rpc-port

Gateway RPC server port.

28332

7007

ca-cert-url

Location of the public Gateway certificate to allow it to connect to the BDN. Do not change these without instructions from bloXroute Support.

https://certificates.blxrbdn.com/ca

​

private-ssl-base-url

Location of the private Gateway certificate for accounts that registered and obtained private certificates. It can be a local or remote directory. The format is URI

https://certificates.blxrbdn.com

file:///home/[user]/gateway/

continent

Continent where the Gateway is running. Valid continent values are NA (North America), SA (South and Central America), EU (Europe), OC (Oceania), AS (Asia), AF (Africa), AN (Antarctica).

N/A

AS

country

The country of the Gateway.

N/A

China

region

The datacenter region of the Gateway. This helps the Gateway connecting to the fastest relay.

N/A

cn-beijing

hostname

Hostname the Gateway is running on. If not specified, the Gateway will query the operating system for hostname

machine hostname

gateway.hostname.com

data-dir

Path to store configuration, status and log files.

~/Library/bloXroute on Mac, ~/bloXroute on Linux

/home/[user]/gateway/

log-format

Format of the log output. May be set to JSON or PLAIN

PLAIN

JSON

log-level

Set the log level of the Gateway. Possible values: TRACE, DEBUG, INFO, WARN, ERROR, FATAL, STATS, OFF. Default is INFO

INFO

DEBUG

sdn-url

bloXroute Control Plane endpoint to the Mainnet URL. This parameter should only be used by users who connect to the bloXroute testnet. Please contact bloXroute support for instructions.

https://bdn-api.blxrbdn.com

​

transaction-pool-memory-limit

Maximum size of transactions to keep in memory pool (MB)

N/A

50000

thread-pool-parallelism-degree

Number of threads to use when running tasks on a concurrent thread pool when the extension module is active. The default is determined as the number of CPUs minus 1.

[Number of CPUs] – 1

4

tx-mem-pool-bucket-size

In order to efficiently iterate the mempool concurrently, the Gateway splits into buckets. This parameter sets the size of each bucket of the transaction mempool.

10000

10000

peer-gateways

Optional gateway peer ip/ports that Gateway should always be connected to. Should be in the format ip1:port1,ip2:port2,…

N/A

8.8.8.8:1801,9.9.9.9:1801

min-peer-gateways

Minimum number of peer Gateways, when connection number falls below this number, the Gateway contacts Control Plane for additional peers.

1

2

require-blockchain-connection

When true, the Gateway will exit if the connection to the blockchain node is down for more than 30 minutes.

True

True

ipc

Enable new transaction feed using ipc protocol.

False

True

ipc-file

The file that will be used by the new transaction feed with the ipc protocol.

bxgateway.ipc

bxgateway.ipc

ws

Enable new transaction feed using web socket protocol.

False

True

ws-host

New transaction feed web socket server host.

127.0.0.1

3.83.217.86

ws-port

New transaction feed web socket server port.

28333

28333

Ethereum Specific Arguments

Parameter

Description

Default

Example

private-key

Private key for encrypted communication with Ethereum node. This argument is optional, and the Gateway will generate a random private key if one is not provided.

N/A

294549…97dfba3

genesis-hash

Genesis block hash of Ethereum network. Optional, a default is provided.

d4e56740f…cb8fa3

d4e56740f…cb8fa3

eth-ws-uri

Ethereum websockets endpoint for syncing transaction content. You need to configure your Ethereum node to enable the Ethereum websockets . For more information see Enable Ethereum Websocket.

N/A

ws://127.0.0.1:8546

Bitcoin Specific Arguments

Parameter

Description

Default

Example

blockchain-version

Blockchain protocol version is provided to the blockchain node to indicate functionality the Gateway supports as a peer.

70015

70015

blockchain-nonce

Blockchain nonce is a number that is used during the Gateway handshake with a bitcoin node. If none is provided, a random number is used.

random number

982345907