mininet中添加带掩码的流表项

添加流表的基本命令:
ovs-ofctl add-flow br0 in_port=3,actions=xx

ovs-ofctl的add_flow语法由一系列field=value形式的键值对组成,用英文逗号和空格隔开。
但是在描述一条流表的时候,必须要遵循TCP/IP协议栈。比如说,在flow中使用了L3(网络层)的字段时,必须要指明L2(数据链路层)使用的协议。使用了L4(传输层)的字段时,必须要指明L2和L3所使用的协议。这一点很重要。

这里列一下常用的字段:

  • in_port
  • dl_vlan
  • dl_src
  • dl_dst
  • dl_type
  • nw_src
  • nw_dst
  • 懒得列了

那么,如果要指定一条带掩码的流表,要如何操作呢?这里以目的ip为例:
假如我们需要对10.2..子网的主机进行访问控制管理,可以在添加流表时这样操作:
dpctl add-flow dl_type=0x0800,nw_src=10.2.0.0/16, actions=drop
需要注意的是,由于我们要指定的3层的规则,按照之前所说的,必须要制定二层的协议,所以dl_type这一项必需要制订。另外,掩码可以通过两张方式来设置,一种是dotted quad形式: 255.255.0.0,或者是CIDR形式:10.2.0.0/24。

懒得写了。

你可能感兴趣的:(mininet中添加带掩码的流表项)