场景 在公司内部Java客户端使用9300端口连接ES没有任何问题,这里使用的是transport客户端不是rest客户端。 原因 ES的9300端口,不让局域网之外的电脑使用这个端口。这个端口主要用于ES内部集群,即使network.host 0.0.0.0这种裸奔权限,ES也不让局域网之外的连接。 解决 弃用9300端口。Java端使用Rest客户端,使用9200端,然后去调用调试ES即可。