【发布时间】:2015-09-25 17:21:37
【问题描述】:
我目前正在使用以下代码获取 IPv4 地址:
import spray.http.RemoteAddress
...
val ipV4: String = remoteAddress.toOption.map(_.getHostAddress).getOrElse("<unknown>")
但是,我似乎找不到任何有关为 IPv6 做同样事情的信息。对此的任何帮助将不胜感激。
【问题讨论】:
-
根据文档,
RemoteAddress.toOption包装了一个java.net.InetAddress,这是一个由 IPv4 和 IPv6 地址扩展的抽象类。假设remoteAddress具有 IPv6 地址,您当前的代码应该可以正常工作。 -
@IanMcLaird 啊。好的。那么,如何获取远程地址的 IPv6 版本(与当前提供的 IPv4 相对)?
-
在只能通过 IPv6 访问的机器上运行代码。您不需要更改代码。您将获得远程机器连接的地址。它一次只能从一个地址连接到您。
标签: scala akka ipv6 spray ipv4