关于TUN/TAP设备使用的问题

关于TUN/TAP设备使用的问题

目前我阅读了一些有关 TUN/TAP 设备的文档,我有一些问题:

  • 我什么时候应该使用 TUN/TAP 设备?
  • 与其他开发者相比有何优势?

答案1

当您想要从用户模式实现虚拟网络适配器时,将使用“TUN”和“TAP”设备。它们通常由 VPN 软件使用,但也可用于实现其他网络功能,例如 NAT46 和 NAT64。

“TUN”和“TAP”接口之间的区别在于它们工作的层。 “TUN”接口发送和接收 IP 数据包,无需进一步封装,也不会尝试将第 3 层下一跳地址转换为第 2 层地址。 “TAP”接口发送和接收带有源和目标 MAC 地址的以太网帧。

“TUN”和“TAP”接口的主要替代方案是在内核中实现 VPN。这可能会表现更好,但会增加安全性和可靠性风险,并使开发更加困难。

答案2

我强烈建议您阅读内核中的文档,它甚至提供了写得很好的示例:

https://www.kernel.org/doc/Documentation/networking/tuntap.txt

祝你好运并享受!

相关内容