[英]Packet Encapsulation in Java
我已经为我的数据通信类分配了一个任务,我需要通过UDP封装IP数据包。 然后,我需要将此手动数据包封装到实际的UDP数据包中并通过IP发送。 这将产生以下协议栈(蓝色表示我将手动创建的头):
在Java中有一种简单的方法吗? 我理解在CI中可以使用在Linux内核库中为UDP和IP头定义的结构,手动填充所有字段,并将信息连接到数据包中。 但是,在Java中,我将无法访问Linux网络头文件。 我也试图在不使用外部API的情况下这样做。
为了澄清,我计划使用Eclipse开发应用程序Linux。
实际上,您可能尝试通过Java Native Access访问Linux内核库。
像这样:( http://jnaexamples.blogspot.tw/2012/03/java-native-access-is-easy-way-to.html )
您可以将TCP数据包结构包装在本机c代码中,然后从Java套接字发送它。
同时,如果要在java中组装TCP / IP数据结构,jnetpcap库可能是您的编码参考。 ( http://jnetpcap.com/node/29 )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.