2

有谁知道是否有一个现有的库可以让我调用 getsockopt 以获取 iptables 通过我的 Java 应用程序重新路由的套接字的目标 IP?

这是 Netty 邮件列表上的一个类似问题,但没有得到答复。

c 中的调用看起来像:

getsockopt(ctx->client.fd, SOL_IP, 
    SO_ORIGINAL_DST, &SANY_ADDR(addr), &SANY_LEN(addr))

也欢迎使用 JNI 执行此操作的示例。

4

2 回答 2

1

你不能在 Java 中做到这一点。如果您可以获得套接字 FD,您可以完全按照您所写的那样在 JNI 中执行此操作,它SocketImpl位于Socket.

于 2012-03-09T00:09:06.870 回答
0

你不能在 Java 中做到这一点。但是,您可以添加存储 original_dst 的请求标头参数。因此,您可以在需要时从 http 标头中使用它。

于 2022-02-18T08:44:52.273 回答