Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds an ACCEPT rule for untracked pkts in filter:CILIUM_OUTPUT #17585

Merged
merged 1 commit into from
Nov 11, 2021

Commits on Nov 10, 2021

  1. Adds an ACCEPT rule for untracked pkts in filter:CILIUM_OUTPUT

    Currently, when `no-track-port` is specified for a pod (the only use
    case for now is nodelocaldns), we insert several iptable rules to skip
    conntrack for packet to and from the pod to achieve pararity with OSS
    node-local-dns.
    
    However, we need to add a specific accept rule int the CILIUM_OUTPUT
    chain to accept such packets. Otherwise, a dns query pkt originated from
    the hostns will skip conntrack and gets dropped in the filter OUTPUT
    chain. This rule is however NOT needed for standard OSS node-local-dns
    because it relies on the loopback rule installed by the OS to allowlist
    this traffic pattern. With Cilium, we DNAT such packet in a way that its
    dst is the pod IP of the local node-cache pod, so it will NOT hit the
    loopback dev, hence we need to punch a specific hole to allowlist it.
    
    Fixes: 16694
    
    Signed-off-by: Weilong Cui <cuiwl@google.com>
    Weil0ng committed Nov 10, 2021
    Configuration menu
    Copy the full SHA
    b908885 View commit details
    Browse the repository at this point in the history