Gateway Installation Troubleshooting

To verify that the bloXroute Gateway is working properly you can use the Gateway status log. For information on the Gateway status log, see sections Gateway Monitoring and bloXroute-cli. A fully functioning Gateway should have a status of “Online” and the value “Established” for the following fields:

  • block_relay_connection_state

  • transaction_relay_connection_state

  • Blockchain_node_connection_state

  • remote_blockchain_node_connection_state


"gateway_status": "Online",
"account_info": "This gateway is not registered to any account and is limited to the daily free quota",
"block_relay_connection_state": "Established",
"transaction_relay_connection_state": "Established",
"blockchain_node_connection_state": "Established",
"remote_blockchain_node_connection_state": "Established",
"ip_address": "555.555.555.555",
"continent": "AS",
"country": "China",
"update_required": false

It is important to pay attention to the state of the connection between the Gateway and the blockchain node. If the state changes back and forth between “established” and “closed” there is a problem. This could be caused by a number of factors, such as:

Incorrect Startup Parameters

Wrong IP address for the blockchain node: If you provide an IP address in the arguments --blockchain-ip or --enode that doesn’t match the IP of your node, the Gateway will not be able to connect. To verify what IP is in use, please look at the Gateway_status.log file under analysis -> network -> blockchain_nodes -> ip_address. Alternatively, you can use the gateway_status command in bloxroute-cli with the argument DETAILED to show the same information.

Wrong ports: If you are not using the standard port on your blockchain node, please make sure to specify it with –blockchain-port. You can check the blockchain node port the Gateway is attempting to connect to by opening the Gateway_status.log file or using the bloxroute-cli Gateway_status DETAILED command and look for analysis -> network -> blockchain_nodes -> port.

Wrong node public key: For Ethereum nodes, specifying an incorrect--node-public-key Gateway startup argument will lead to the Ethereum node closing the Gateway connection. To verify that the Gateway is using the correct node public key, you can run the following command:

>> admin.nodeInfo

The public key in the above command is: "1a6b4a7347b2fc95c7b7db5badb4998d8a4a4cec2a0e43baaee4ed04bf862fd456521e5d2edd7854485406371ff400b51289a137104176a5296358d0c503ca73"

Node not completely synced: Until the blockchain node is fully synced it may not accept a connection from the Gateway.

Unsupported node sync mode: Gateway is not compatiable with node started with light sync mode, which couldn't interpret some p2p messages supported in the normal sync mode.

The blockchain node’s peer list is full: Unless customized, Ethereum nodes have a maximum of 25 peers, while Bitcoin nodes have a maximum of 117 peers. If your node has been running for a while, there may be no space for the Gateway to connect. To work around this, please see the section Adding the Gateway As a Trusted Peer.

Node machine unreachable: bloXroute recommends running the Gateway on a separate machine with low latency to your blockchain node. Make sure that the machine you are trying to connect to is reachable.

To verify this, please check that:

  • The node’s machine is reachable using ping.

  • You are using the standard ports, or otherwise that you have specified the non-standard port in the --blockchain-port argument:

    • For Ethereum, the default port for peers is 30303.

    • For Bitcoin, the default port for peering is 18333.

  • The ports you are using are open in the node machine. Check firewall rules and verify that they meet the requirements specified in the section above.