如何获得ipv4客户端ip在akka-http下java?在我的createRoute方法中,我尝试:
return extractClientIP(clientIp -> {
Optional<InetAddress> optAdd = clientIp.getAddress();
return complete(optAdd.get().getClass().getName());
});但是我得到了java.net.Inet6Address实例,而不是java.net.Inet4Address实例。
request.getHeader("Remote-Address")也返回ipv6。
谢谢。
发布于 2017-05-04 16:08:56
尝试为您的Akka应用程序设置使用IPv4的首选项。应该通过设置以下JVM选项来做到这一点:
java.net.preferIPv4Stack=true如果您使用的是SBT:
javaOptions += "-Djava.net.preferIPv4Stack=true"相关问题:https://superuser.com/questions/453298/how-to-force-java-to-use-ipv4-instead-ipv6
https://stackoverflow.com/questions/43786822
复制相似问题