diff options
author | 2017-02-07 21:30:13 +0000 | |
---|---|---|
committer | 2017-02-07 21:30:13 +0000 | |
commit | b8e75509cc7d3f73a8526ad515e85f76b9ccf59d (patch) | |
tree | e5f0142cbbfe35f94976c2f4ec2b2aec9c261073 /middleware/kubernetes | |
parent | fa0abe747327b7dda0b2566f45dcea649f26fb0b (diff) | |
parent | 4b6860fc8189495a23c99543e6e7bee3733f58f9 (diff) | |
download | coredns-b8e75509cc7d3f73a8526ad515e85f76b9ccf59d.tar.gz coredns-b8e75509cc7d3f73a8526ad515e85f76b9ccf59d.tar.zst coredns-b8e75509cc7d3f73a8526ad515e85f76b9ccf59d.zip |
Merge branch 'master' of github.com:miekg/coredns
Diffstat (limited to 'middleware/kubernetes')
-rw-r--r-- | middleware/kubernetes/handler.go | 14 | ||||
-rw-r--r-- | middleware/kubernetes/kubernetes.go | 4 |
2 files changed, 11 insertions, 7 deletions
diff --git a/middleware/kubernetes/handler.go b/middleware/kubernetes/handler.go index 12277911a..3efe6e722 100644 --- a/middleware/kubernetes/handler.go +++ b/middleware/kubernetes/handler.go @@ -26,11 +26,15 @@ func (k Kubernetes) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.M // otherwise delegate to the next in the pipeline. zone := middleware.Zones(k.Zones).Matches(state.Name()) if zone == "" { - // If this is a PTR request, and a the request is in a defined - // pod/service cidr range, process the request in this middleware, - // otherwise pass to next middleware. - if state.Type() != "PTR" || !k.IsRequestInReverseRange(state) { - return middleware.NextOrFailure(k.Name(), k.Next, ctx, w, r) + if state.Type() == "PTR" { + // If this is a PTR request, and a the request is in a defined + // pod/service cidr range, process the request in this middleware, + // otherwise pass to next middleware. + if !k.IsRequestInReverseRange(state) { + return middleware.NextOrFailure(k.Name(), k.Next, ctx, w, r) + } + // Set the zone to this specific request. + zone = state.Name() } } diff --git a/middleware/kubernetes/kubernetes.go b/middleware/kubernetes/kubernetes.go index 8c4e08e5d..f5d3d55be 100644 --- a/middleware/kubernetes/kubernetes.go +++ b/middleware/kubernetes/kubernetes.go @@ -508,7 +508,7 @@ func (k *Kubernetes) getServiceRecordForIP(ip, name string) []msg.Service { return nil } for _, service := range svcList { - if !dnsstrings.StringInSlice(service.Namespace, k.Namespaces) { + if (len(k.Namespaces) > 0) && !dnsstrings.StringInSlice(service.Namespace, k.Namespaces) { continue } if service.Spec.ClusterIP == ip { @@ -522,7 +522,7 @@ func (k *Kubernetes) getServiceRecordForIP(ip, name string) []msg.Service { return nil } for _, ep := range epList.Items { - if !dnsstrings.StringInSlice(ep.ObjectMeta.Namespace, k.Namespaces) { + if (len(k.Namespaces) > 0) && !dnsstrings.StringInSlice(ep.ObjectMeta.Namespace, k.Namespaces) { continue } for _, eps := range ep.Subsets { |