一尘不染

如何在Linux中创建虚拟以太网设备?

linux

我正在测试使用以太网(非IP)在两台计算机之间进行通讯的协议的实现。为了实际上不必拥有两台物理计算机,我想创建两个虚拟以太网接口。这些只能相互通信,因此一个端点程序将绑定到一个接口,而另一个端点将绑定到另一个接口。

这可能吗,我该怎么做?


阅读 559

收藏
2020-06-07

共1个答案

一尘不染

您可以使用虚拟交换机VDE2。

例如(您将需要一些术语):

# Install vde2 (assumes Debian/Ubuntu)
sudo aptitude install vde2
# Create the switch and two tap interfaces attached to it
sudo vde_switch -tap tap0 -tap tap1
# Configure the interfaces
sudo ip addr add 10.0.31.10 dev tap0
sudo ip addr add 10.0.31.11 dev tap1
# Start a server
socat - TCP-LISTEN:4234,bind=10.0.31.10
# Alternatively, an echo server:
#socat PIPE TCP-LISTEN:4234,bind=10.0.31.10
# Start a client
socat - TCP:10.0.31.10:4234,bind=10.0.31.11

在一侧输入,它将出现在另一侧。

2020-06-07