<div dir="ltr">yes, we are already using that one to send packet across 2 OVS connected via GRE tunnels and when switched out, will remove GRE header.<div>Imagine situation where SPAN traffic from some other switch is being sent as replica traffic to OVS inport (one can be configured as GRE port for that matter). Packets coming to OVs inport are mostly GRE traffic with varying src/dst ip in GRE haders  since this is replica traffic from network. This is not  traffic directed to ip configured on that exact OVS (which is receiving it).</div><div>Would OVS just drop this receiving traffic or will remove header without checking and be switch it as configured (i.e. via openflow rule) ?</div><div>I guess we&#39;d need to check.</div><div><br></div><div>jm</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 9, 2017 at 11:14 PM, Ben Pfaff <span dir="ltr">&lt;<a href="mailto:blp@ovn.org" target="_blank">blp@ovn.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">GRE and tunnels are implemented in terms of ports, so if you send a<br>
packet received on a GRE port to a non-tunnel port, it strips the<br>
header.<br>
<div class="HOEnZb"><div class="h5"><br>
On Mon, Oct 09, 2017 at 10:45:10PM +0200, Juraj Markotic wrote:<br>
&gt; I will check on about GTP ongoing activities (I saw some actitvities on<br>
&gt; providing capabilities to match on GTP-C/GTP-U packets).<br>
&gt; maybe dumb question, but any pointer on how to remove GRE header (or VXLAN<br>
&gt; for that matter) when switching packet from IN port to OUT port and switch<br>
&gt; out only internal packet/payload ?<br>
&gt; thanks,<br>
&gt; jm<br>
&gt;<br>
&gt;<br>
&gt; On Mon, Oct 9, 2017 at 10:13 PM, Ben Pfaff &lt;<a href="mailto:blp@ovn.org">blp@ovn.org</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; OVS doesn&#39;t support GTP yet, but I know that there&#39;s some ongoing work<br>
&gt; &gt; on it.<br>
&gt; &gt;<br>
&gt; &gt; GRE and VXLAN should be fine.<br>
&gt; &gt;<br>
&gt; &gt; If you need GTP support, maybe the best thing to do would be to help out<br>
&gt; &gt; the folks who are working on it.<br>
&gt; &gt;<br>
&gt; &gt; On Mon, Oct 09, 2017 at 09:35:42PM +0200, Juraj Markotic wrote:<br>
&gt; &gt; &gt; Hello,<br>
&gt; &gt; &gt; thanks for feedback.<br>
&gt; &gt; &gt; I know OVS can truncate payload and that in can modify mac/IPs in header<br>
&gt; &gt; &gt; (i.e. like doing NAT).<br>
&gt; &gt; &gt; I also know OVS can deencapsulate GRE (of VXLAN) when packet is arriving<br>
&gt; &gt; on<br>
&gt; &gt; &gt; tunnel OVS interface (done automatically).<br>
&gt; &gt; &gt; But I was not aware that OVS can remove tunnel headers when switching<br>
&gt; &gt; &gt; incoming GTP/GRE/VXLAN header and extract inside packet (with totally new<br>
&gt; &gt; &gt; src/dst ip) and send it out.<br>
&gt; &gt; &gt; Can you share some OVS cli example for such ?<br>
&gt; &gt; &gt; we have network packet broker (NPB) with OVS, so if NPB is delivering<br>
&gt; &gt; &gt; tunnel packets, it would be great if we could remove tunnel headers<br>
&gt; &gt; before<br>
&gt; &gt; &gt; delivering it to the (monitoring) tool on outgoing port.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; thanks,<br>
&gt; &gt; &gt; jm<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; On Mon, Oct 9, 2017 at 6:31 PM, Ben Pfaff &lt;<a href="mailto:blp@ovn.org">blp@ovn.org</a>&gt; wrote:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; On Sun, Oct 08, 2017 at 11:19:17PM +0200, Juraj Markotic wrote:<br>
&gt; &gt; &gt; &gt; &gt; we would need some functionality on manipulating packets when packet<br>
&gt; &gt; is<br>
&gt; &gt; &gt; &gt; &gt; exiting outgoing OVS port.<br>
&gt; &gt; &gt; &gt; &gt; I.e. some actions could be: change/anonymize mac/IPs for src/dst, or<br>
&gt; &gt; &gt; &gt; remove<br>
&gt; &gt; &gt; &gt; &gt; some tunnel header (vxlan, gtp, gre), truncate the payload etc.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; OVS has actions for modifying headers and it can decapsulate tunnels<br>
&gt; &gt; and<br>
&gt; &gt; &gt; &gt; truncate payloads.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; So, one option can be to write some code than can be attached to OVS<br>
&gt; &gt; to<br>
&gt; &gt; &gt; &gt; &gt; packet exiting out port (i.e. some lua scripts for manipulation).<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Lua isn&#39;t needed.  You can use OpenFlow.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt;<br>
</div></div></blockquote></div><br></div>