我正尝试在Linux中打开TUN设备(希望最终在Java应用程序中打开)。由于我不想使用任何本机代码(如果可能的话,我希望避免使用JNI ),所以我希望通过命令行尽可能多地使用。我想做的是:
ip tuntap add dev tun0 mode tun创建TUN接口ip命令足够简单)/dev/tun0文件,从网络端写入流量。最后一步是我有点困惑--我认为这在Unix上是可行的,因为网络适配器是文件,但是我在Linux上,我不认为我可以那样访问NIC。我理解本机代码很简单(对ioctl进行几次调用并获得一个文件描述符),但是除非有办法从命令行执行此操作,否则它将无法工作。
我是否可以使用tun调用打开已经配置好的ip tuntap接口(用ip tuntap配置),并开始向其写入网络端IP数据包(不使用ioctl)?
发布于 2012-08-24 01:01:05
如果您已经通过ip tuntap设置了它,那么您只需将其打开为读/写文件形式java,然后将整个以太网数据包写入到它。您可以打开它两次(FileInputStream/FileOutputStream)来读取和写入以太网数据包。
https://stackoverflow.com/questions/12101919
复制相似问题