Java 通过一个网络接口的Http请求

Java 通过一个网络接口的Http请求,java,rest,network-programming,Java,Rest,Network Programming,我只想在选定的网络接口上调用RESTWebService的HTTP请求 如果您对此有任何建议,我们将不胜感激。这或多或少是您的Java程序无法控制的 由操作系统决定将数据包发送到哪里。它将在配置为具有到目标IP的路由的接口上发送数据包,或者在默认路由上发送数据包。因此,您必须确保您的操作系统已正确配置,以便将IP数据包路由到您需要的位置,并且它只会在该接口上发送数据包。我发现您可以在url中定义网络接口,如下所示: 192.168.1.122%eth0 它在Ubuntu中工作,我希望它也能在不

我只想在选定的网络接口上调用RESTWebService的HTTP请求


如果您对此有任何建议,我们将不胜感激。

这或多或少是您的Java程序无法控制的


由操作系统决定将数据包发送到哪里。它将在配置为具有到目标IP的路由的接口上发送数据包,或者在默认路由上发送数据包。因此,您必须确保您的操作系统已正确配置,以便将IP数据包路由到您需要的位置,并且它只会在该接口上发送数据包。

我发现您可以在url中定义网络接口,如下所示:

192.168.1.122%eth0

它在Ubuntu中工作,我希望它也能在不同的系统中工作。

Hmm所以你们认为解决方案是在操作系统的路由表中。这也是我的第一个想法,但我想创建更抽象的应用程序。我发现,但现在似乎有办法在http请求中指定网络接口。我不知道套接字在Java中是如何工作的。我是Java初学者。@Petr Velký是的。解决方案是OS路由表。NetworkInterface类与HTTP请求无关,也与如何为IP数据包指定网络接口无关。不过,接收请求是另一回事,有一些API用于侦听部分IP地址(通常只绑定到一个网络接口)上的传入连接