> On Jan 28, 2016, at 3:27 PM, Chandra Vejendla <chandra.vejen...@gmail.com> 
> wrote:
> 
> Hi Jarno,
> 
> On my simple OVS setup i setup flows to do DNAT with recirculation and the 
> flows match on the DNAT IP. 
> 
> I tried to do the same on my OVN setup, but the flows don't match the DNAT 
> IP. The flows below try to match the DST NAT IP network and accordingly route 
> the packet, but the flows are matching on the original DST IP of the packet.
> 

You could check if the nat kernel modules are loaded. Try this on both systems 
and see if there are differences that might explain what is going on: ‘lsmod | 
grep nat’.

  Jarno

> Is there something i am missing here.
> 
>  cookie=0x0, duration=419.960s, table=16, n_packets=10, n_bytes=980, 
> idle_age=374, priority=60,reg6=0x1,ip,metadata=0x3,dl_dst=fa:16:3e:25:26:49 
> actions=ct(commit,table=17,nat(dst=10.0.0.99))
> 
>  cookie=0x0, duration=559.343s, table=17, n_packets=17, n_bytes=1533, 
> idle_age=374, priority=0,metadata=0x3 actions=resubmit(,18)
> 
>  cookie=0x0, duration=559.343s, table=18, n_packets=10, n_bytes=980, 
> idle_age=374, priority=24,ip,metadata=0x3,nw_dst=172.16.0.0/24 
> <http://172.16.0.0/24> 
> actions=dec_ttl(),move:NXM_OF_IP_DST[]->NXM_NX_REG0[],resubmit(,19)
> 
>  cookie=0x0, duration=557.831s, table=18, n_packets=0, n_bytes=98, 
> idle_age=534, priority=24,ip,metadata=0x3,nw_dst=10.0.0.0/24 
> <http://10.0.0.0/24> 
> actions=dec_ttl(),move:NXM_OF_IP_DST[]->NXM_NX_REG0[],resubmit(,19)
> 
> 
> Thanks,
> Chandra
> 
> On Wed, Jan 27, 2016 at 11:34 AM, Jarno Rajahalme <ja...@ovn.org 
> <mailto:ja...@ovn.org>> wrote:
> 
>> On Jan 26, 2016, at 10:25 PM, Chandra Vejendla <chandra.vejen...@gmail.com 
>> <mailto:chandra.vejen...@gmail.com>> wrote:
>> 
>> Hi Jarno,
>> 
>> We are trying to install openflow rules to get floating-ips working in OVN 
>> and have a question about DNAT action. 
>> 
>> When a DNAT action is committed, at what stage is the packets DIP actually 
>> modified. If there are rules in the pipeline after the DNAT action that try 
>> to match on the new DNAT address, those rules doesn't seem to match the 
>> packet.
>> 
> 
> Any CT/NAT modifications are done only when the CT action is executed by the 
> datapath. If the rest of the OpenFlow pipeline needs to match on those 
> changed fields, you will need to recirculate instead of resubmit. That is 
> done by adding a “table=1” parameter to the CT action.
> 
>   Jarno
> 
>> In a simple setup with following rules, the packets always match the 3rd 
>> rule. Is there a way to match on the DNAT IP after a DNAT action is 
>> committed.
>> 
>> cookie=0x0, duration=726.320s, table=0, n_packets=2, n_bytes=196, 
>> idle_age=613, ip,in_port=1 
>> actions=ct(commit,zone=1,nat(dst=10.1.1.2)),resubmit(,1)
>> cookie=0x0, duration=674.391s, table=1, n_packets=0, n_bytes=0, 
>> idle_age=674, priority=100,ip,nw_dst=10.1.1.2 actions=output:2
>> cookie=0x0, duration=664.212s, table=1, n_packets=2, n_bytes=196, 
>> idle_age=613, priority=50,ip,nw_dst=10.1.1.64 actions=output:2
>> 
>> The use case we are trying to solve is to be able to look at the DNAT IP of 
>> a packet from a public network -> a floating IP and accordingly route the 
>> packet based on the virtual network the DNAT IP belongs to.
>> 
>> Thanks,
>> Chandra
>> 
> 
> 

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to