按照Fisco Bcos单机部署的模式,其默认是监听在127.0.0.1 的本地回环的。因此,如果我们的应用想要通过主机的IP+端口号的方式访问rpc服务是不行的。
所以,我们需要通过修改节点的配置文件来实现。找到节点的配置文件,其通常位于127.0.0.1\nodes\ 目录下根据我们的选择部署的节点从0开始,node0 node1 node2 node3 等。

分别打开子目录下的config.ini文件,将 chanell_listen_ip和 jsonrpc_listen_ip 的值改为 0.0.0.0

1
2
chanell_listen_ip=0.0.0.0
jsonrpc_listen_ip=0.0.0.0

然后重启节点

1
2
bash nodes/127.0.0.1/stop_all.sh
bash nodes/127.0.0.1/start_all.sh

如果在Windows主机上开发应用,可以用下面的powershell命令检查 rcp和p2p端口是否已经开启

1
2
3
Test-NetConnection 192.168.201.128 -Port 8545
Test-NetConnection 192.168.201.128 -Port 20200
Test-NetConnection 192.168.201.128 -Port 30300

Test-NetConnection 是powershell用于测试远程主机和端口是否可联通的命令
如果看到类似下面的结果说明可以联通

1
2
3
4
5
6
ComputerName     : 192.168.201.128
RemoteAddress : 192.168.201.128
RemotePort : 8545
InterfaceAlias : VMware Network Adapter VMnet8
SourceAddress : 192.168.201.1
TcpTestSucceeded : True

主要是 TcpTestSucceeded : True 说明联通了,如果是False说明连接失败。