0

如果我要创建一个 ipfw 转移规则以将所有 FTP 流量转发到特定套接字,是否可以使用 Java 连接到 socekt 并读取数据包信息?如果是这样,我将如何阅读/写入scoket?

4

2 回答 2

0

不明白你的意思。如果您使用的是转移规则,那么您所要做的就是在您的 java 应用程序中侦听该 ip:port 组合,然后一切就绪。如果要读取实际的目标端点信息,则需要为此使用 JNI。

于 2008-09-21T13:19:29.533 回答
0

是的,它就像一个普通的套接字,你可以读取/写入它,但是在 Mac OS X 上,如果你确实想修改数据包并将其插入回去,你需要先重新计算 tcp 校验和。

http://blog.loudhush.ro/2006/08/using-divert-sockets-on-mac-os-x.html

这是一篇很好的文章,介绍了 Mac OS X 上转移套接字的基本用法。您实际上可以在 C 代码中创建规则。

对于您的情况,只需扫描数据包的 TCP 或 IP 标头并解析您想要的任何内容

于 2010-11-09T16:42:38.243 回答