ovs 的流表(table)有個大幾十個, 流表過濾可以用 metadata 快速過濾,medatada 一致再根據優先順序決定匹配順序。
最近在排查一個 kube-ovn 子網 ACL 優先順序高於 安全組的反常現象,經過對比 子網 ACL 和 安全組 ACL 的ovs 流表發現,新插入了兩條流表,可以根據下圖中的存活時間看到多了兩條10幾秒的。
子網 ACL 目前是基於 from-port的,源物理節點已經看到包發出去了,證明源物理節點的 ovs 流表中 子網 ACL 的優先順序是低於安全組的優先順序的,所以能出來。
但是上面的圖顯示目標節點的流表多了兩條,且這兩條流表導致to port 的流量被drop,因為pod內部抓不到進來的包。