-
Notifications
You must be signed in to change notification settings - Fork 257
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
[Q&A + HELP] How to make k8s coredns work with OVN DNS #228
Comments
@bzhaoopenstack thanks for the bug report! It really looks like ovn-controller can't handle DNS requests that include
Without bufsize as option:
With bufsize set:
|
Ah, this is due to 4b10571 @brianphaley do you think there's a safe way to ignore additional (EDNS) records or accept some of the common ones? In this case dig seems to set +bufsize by default (I see it set at 4K on my system). |
@dceara Thanks so much for your verify. And I also see the associated bug issue in openstack https://bugs.launchpad.net/neutron/+bug/2030294 . And we are using the OVN based openstack, so we are confused that why the behavior is different than linux bridge/ovs based deployment. During we deep into the DNS resp nw package, we found the package is very strange and wrong. Such as, That's why the tcpdump msg looks so confused. ;-) |
In our product deployment, we use CoreDNS for K8S deployment, and K8S runs on the openstack based Cloud. But seems CoreDNS enable the EDNS by default, we are considering to change the CoreDNS to other DNS service. If you could provide more advice towards this issue, that's really helpful to us. Thank you. |
Disabling EDNS would be a way forward for now. However, I really think OVN should try to handle this and ignore unknown resource requests of unknown type. |
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]>
@bzhaoopenstack Would you be able to test the following change? It's quite a rough first approach and not really tested but I think it should work: |
Sorry, I was on extended leave until today, but hopefully that change can be tested and verified. My original change might have been too big a hammer, even if it did seem to work for us. |
@dceara Thank you so much for such quick fix. Let me check whether there is any resource to verify this. |
@brianphaley @bzhaoopenstack OK, I'll wait a few days from confirmation from you guys before posting this as a formal patch for review on ovs-dev. Thanks, |
@brianphaley @bzhaoopenstack Did you happen to have time to try out the potential fix? Thanks! |
I went ahead and posted the patch on the dev mailing list: |
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Signed-off-by: 0-day Robot <[email protected]>
I posted a v2 (it's the same fix as in v1 it just adds a test case): |
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Signed-off-by: 0-day Robot <[email protected]>
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]>
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
EDNS is backwards compatible so it's safe to just ignore additional ARs. Reported-at: ovn-org#228 Reported-at: https://issues.redhat.com/browse/FDP-222 Signed-off-by: Dumitru Ceara <[email protected]> Acked-by: Mark Michelson <[email protected]> (cherry picked from commit b7fe2c8)
Hello team,
We have a DNS specific problem. What we want is making K8S coredns can forwarding the POD dns request traffic into the OVN world, and OVN can give back the openstack DNS records.
We have an openstack-based Cloud with OVN, enable domain and DNS in neutron. The VMs can be pinged by its domain name with the correct FQDN. Then we deploy a K8S env on the said VMs with coredns, the PODs on the K8S can work well with the internal DNS name, but can not reach the VMs DNS world. Both of openstack and K8S deployments were configured with the same internal DNS service.
The DNS request of VMs is "hijacked" by OVN, but the coredns will forward the DNS request from POD to outside of K8S, it will be the similar network frame just like the VM sent the DNS request itself. I saw the very strange network packages on the compute node, they were generated by the VM nic tcpdump capture.
VM ping the domain name in openstack world. (Work well)
Pod ping the domain name in openstack world.(NOT WORK)
The last package VM received looks strange, as we got a zero A record. I'm not sure whether OVN is failed to
dns_lookup
in somehow and return the wrong DNS resp.Could any one can help to leave a suggest about how to make them work as wish in our situation? Thank you.
The text was updated successfully, but these errors were encountered: