我想做的是通过裸机PC中的Open vSwitch向服务器发送数据包,而不是在VM上。
为此,我正在考虑以下结构。
服务器电脑 ----------------------------------------- | ------ | | |服务器| | | ------ | | |veth2 (192.168.0.152)| | | | | |veth1 | | ------------ | | | OVS (br0) | | | ------------ | | |eth0 (192.168.0.157) | --------|---------- | --------|-------- | 客户端电脑 | ----------------
用于制作上述环境
,我做了下面的命令。
- 创建ovs桥
ovs-vsctl add-br br0
- 将 eth0 作为 ovs 端口
ovs-vsctl 添加端口 br0 eth0
- 创建 veth 链接
ip link add veth1 type veth peer name veth2 ifconfig veth1 向上 ifconfig veth2 向上
- 最后,我静态设置客户端 ARP 表,因为 ovs 端口(eth0)无法发送 ARP 回复
之后,我尝试在客户端和服务器之间进行 TCP 连接。
我检查了客户端的 SYN 数据包是否发送到 veth2。但是,服务器无法接收该数据包。
我无法猜测出什么问题以及如何制作上述环境。