用Python脚本及Scapy库写了一个简单的流量生成脚本,并打算使用该脚本往Mininet中的OpenvSwitch交换机注入流量。拓扑图以下:debug
h1(10.0.0.1) :h1-eth0 <=> s1-eth1: s1 :s1-eth2 <=> h2-eth0: h2(10.0.0.2)
生成流量的目的IP:nw_dst=10.0.0.2/32
;code
注入流量的端口:s1-eth1
;it
OVS此时已下好转发该流量的流表,主要做用是匹配该流量的目的IP地址,并转发到s1-eth2口。bug
然而,脚本往s1-eth1注入的流量所有被交换机丢弃,同时,使用ovs-ofctl dump-flows s1
查看流表信息发现流表根本没有匹配到该流量。nw
逐步debug:数据
随后开始怀疑脚本注入流量的端口不对,使用ifconfig
查看端口信息,发现s1有三个端口,分别是s1
,s1-eth1
和s1-eth2
。脚本
一试,发现当脚本往端口s1
注入流量时,流量被s1正常转发,流表也有匹配到流量的数据。算是意外的收获,记之。注入
2018.1.端口