C 如何使用TUN/TAP接口在两个进程之间发送数据包?

C 如何使用TUN/TAP接口在两个进程之间发送数据包?,c,network-programming,network-protocols,network-interface,tun,C,Network Programming,Network Protocols,Network Interface,Tun,我有两个进程,我试图模拟这样一种情况:这两个进程代表两个通过导线连接的开关。我希望能够将数据包从一个进程发送到另一个进程。另一个用例是,这些过程中的每一个都可以连接到数据包生成器 我是网络新手,遇到了TUN/TAP接口,似乎是这里使用的逻辑接口。然而,有一件事我有点困惑: 这两个进程是否都有自己的接口?当我必须将数据包从进程A发送到进程B时,我会将数据包发送到B接口吗 或 如果两个进程连接到同一个接口怎么办?那怎么办 没有两个进程可以连接到同一tun/tap接口的用户端。如果您想让模拟设备

我有两个进程,我试图模拟这样一种情况:这两个进程代表两个通过导线连接的
开关。我希望能够将数据包从一个进程发送到另一个进程。另一个用例是,这些过程中的每一个都可以连接到数据包生成器

我是网络新手,遇到了TUN/TAP接口,似乎是这里使用的逻辑接口。然而,有一件事我有点困惑:

  • 这两个进程是否都有自己的接口?当我必须将数据包从进程A发送到进程B时,我会将数据包发送到B接口吗

  • 如果两个进程连接到同一个接口怎么办?那怎么办

    • 没有两个进程可以连接到同一tun/tap接口的用户端。如果您想让模拟设备通信,请使用
      brctl addbr br0将它们放在桥接器上;brctl addif br0 tap0;brctl addif br0 tap1