我通过geth部署了ethereum专用网络,并在我的计算机上运行三个节点,通过引导节点连接它们。私人网络正在运行,但我对操作的结果感到困惑。我的目标是:geth --datadir chain/node1 --networkid 15 --bootnodes $bootnode_address geth --datadir chain/node2 --networkid 15 --port 30304 --bootnodes $bootnode_address geth --datadir chain/node3 --networkid 15 --port 30305 --bootnodes $bootnode_address

如图所示,有多个端口启动,为什么会出现这些端口(60077;60300;60089)?我认为连接应该是:30303 -> 30304;30305 30304 -> 30303;30305 30305 -> 30303;30304,但是现在连接是:30303 -> 60077; 60089 -> 30305 60077 -> 30303; 60300 -> 30305 30305 -> 60300; 30305 -> 60089,有人知道为什么吗?谢谢。
发布于 2018-11-23 09:51:43
您已经指定您的geth节点分别侦听端口30303、30304和30305,这就是它们正在做的事情。
当每个节点连接到另一个节点时,它们打开一个套接字连接,该套接字连接连接到对等节点上的侦听端口。此套接字通过一个新的端口号在本地计算机上服务,通常由操作系统分配(尽管您可以尝试使用特定的端口)。
当与远程对等方交换流量时,通过此端口发送和接收流量,以便网络堆栈知道将其发送到哪个对等点。
这是正常的行为,与以太无关。您所建立的任何网络连接都将遵循此模式。
https://ethereum.stackexchange.com/questions/62903
复制相似问题