Actyx has several network requirements. For swarm communication, i.e. communication between nodes, port 4001 is used. You therefore need to verify connections over port 4001 TCP. The below examples assume that you are either executing the command directly from the node, or from another device in the same network:
In the below examples, we always check port 4001. Which of these ports you need to check depends on the issue you are debugging.
On Windows, you can use the
telnet command to test TCP connections. If
telnet is not already installed, run this command in PowerShell to install it:
telnet, you can use PowerShell or the Command Prompt to test the connection by entering the IP and port of the node you want to test the connection to. Here is an example in which connection could not be established:
On Linux and Mac, we recommend using
tcptraceroute to test the connection. For example, if the node you want to connect to has the IP address 192.168.2.10, you would run this command:
Using traceroute and telnet
You could also use
telnet instead, but each has downsides.
traceroute uses UDP which might be blocked/opened by a firewall even if the same is not true for TCP.
telnet also uses TCP but will not show you where your packets are being lost or blocked.
If you are running ActyxOS on Docker, it's best to test the connection from inside the container. As on Linux and Mac, we recommend using
tcptraceroute. Assuming your container's name is
actyx, run the following command to install it:
After it is installed, you can now check connections from within the container. For example, if the node you want to connect to has the IP address 192.168.2.10, you would run this command: