简体   繁体   English

如何使用openflow修改ip数据包中的特殊位?

[英]how to modify special bit in ip packet with openflow?

We've already known that ovs-ofctl provides many actions to modify packets like set_field , load , move ...我们已经知道ovs-ofctl提供了许多操作来修改数据包,例如set_fieldloadmove ...

but I can't find a suitable action or actions combination to modify a bit in the IP packet destinations field.但我找不到合适的操作或操作组合来修改 IP 数据包目标字段中的位。

In other words, when we received packets the destination ipv6 field is 2020::1 or 2020::2 , we make the destination field become 2010::1 and 2010::2 by OpenFlow rules with ovs-ofctl .换句话说,当我们收到数据包时,目标 ipv6 字段是2020::12020::2 ,我们通过 OpenFlow 规则和ovs-ofctl使目标字段变为2010::12010::2

I try to assemble set_field , load , move and others to do this, but it seems that it doesn't work.我尝试组装set_fieldloadmove和其他人来执行此操作,但似乎不起作用。

Can we achive this simply by ovs-ofctl or not?我们可以简单地通过ovs-ofctl实现吗?

我使用NXM_NX_IPV6_DST字段和load操作通过添加如下流程来解决 openvswitch 桥上的此问题

ovs-ofctl -O openflow13 add-flow br0 "priority=60000,ipv6,ipv6_dst=2020::/16,actions=load:0x2010->NXM_NX_IPV6_DST[112..127]"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM