<div dir="ltr">Hi all<br><br>I'm deploying a Queens on Ubuntu 18.04 with one controller, one network controller e for now one compute node. I'm using ML2 with linuxbridge mechanism driver and a self-service type of network. This is is a dual stack environment (v4 and v6). <br><br>IPv4 is working fine, NATs oks and packets flowing. <br><br>With IPv6 I'm having a problem. Packets from external networks to a project network are stopping on qrouter namespace firewall. I've a project with one network, one v4 subnet and one v6 subnet. Adressing are all ok, virtual machines are getting their IPs and can ping the network gateway. <br><br>However, from external to project network, using ipv6, the packets stop in a DROP rule inside de qrouter namespace. <br><br>The ip6tables path is:<br><br>mangle prerouting -> neutron-l3-agent-PREROUTING -> neutron-l3-agent-scope -> here we have a MARK rule:<br><br>pkts bytes target     prot opt in     out     source               destination         <br>    3   296 MARK       all      qr-7f2944e7-cc *       ::/0                 ::/0                 MARK xset 0x4000000/0xffff0000<br><br>qr interface is the internal network interface of the project (subnet gateway). So, packets from this interface are marked. <br><br>But, the returning is the problem. The packets doesn't returns. I've rules from the nexthop firewall and packets arrive on the external bridge (network node). But, when they arrive on external interface of the qrouter namespace, they are filtered. <br><br>Inside qrouter namespace this is the rule:<br><br>ip netns exec qrouter-5689783d-52c0-4d2f-bef5-99b111f8ef5f ip6tables -t mangle -L -n -v<br><br>...<br>Chain neutron-l3-agent-scope (1 references)<br> pkts bytes target     prot opt in     out     source               destination         <br>    0     0 DROP       all      *      qr-7f2944e7-cc  ::/0                 ::/0                 mark match ! 0x4000000/0xffff0000<br>...<br><br>If I create the following rule everything works great:<br><br>ip netns exec qrouter-5689783d-52c0-4d2f-bef5-99b111f8ef5f ip6tables -t mangle -I neutron-l3-agent-scope -i qg-b6757bfe-c1 -j MARK --set-xmark 0x4000000/0xffff0000<br><br>where qg is the external interface of virtual router. So, if I mark packets from external interface on mangle, they are not filtered. <br><br>Is this normal? I've to manually add a rule to do that?<br><br>How to use the "external_ingress_mark" option on l3-agent.ini ? Can I use it to mark packets using a configuration parameter instead of manually inserted ip6tables rule?<br><br><div>Thanks a lot!</div><div><br></div><div><div dir="ltr" class="gmail_signature"><div dir="ltr">- JLC</div></div></div></div>