我无法从交换机另一端的计算机(192.168.10.2)连接到ASUS交换机后面的Ignite群集服务器(192.168.10.226)。交换机的两端共享同一网络192.168.10.x。我发现交换机将地址替换为自己的地址。在服务器上,我看到以下日志:
[06:00:27,611][INFO][tcp-disco-sock-reader-#9%Test Cluster%][TcpDiscoverySpi] Started serving remote node connection [rmtAddr=/192.168.10.1:33493, rmtPort=33493]然后,它会长时间尝试连接到集群,但它会显示超时消息,最终甚至会使服务器节点断开连接。
虽然我的计算机的IP地址是192.168.10.2,但看起来192.168.10.1是交换机转发到服务器的地址。这是合法的NAT吗?
有没有办法解决这个问题,也许是通过BasicAddressResolver?
注意:我可以从我的计算机ssh到服务器。然而,也有netstat显示:
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.10.226:22 192.168.10.1:11060 ESTABLISHED有什么想法或帮助吗?谢谢!
发布于 2018-05-03 00:43:45
如果我没有理解错的话,当节点尝试解析本地地址时,它会解析192.168.10.1而不是192.168.10.226,然后将其发送到其他节点的集群。
在这种情况下,没有必要使用Ignite,您只需设置IgniteConfiguration.setLocalHost,BasicAddressResolver将只对此节点使用此地址,而不是解析所有网络接口的所有地址。
https://stackoverflow.com/questions/50115108
复制相似问题