mirror of
https://github.com/coredns/coredns.git
synced 2025-10-27 08:14:18 -04:00
@@ -25,6 +25,27 @@ var podModeInsecureCases = []test.Case{
|
||||
test.A("172-0-0-2.podns.pod.cluster.local. 5 IN A 172.0.0.2"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Qname: "blah.podns.pod.cluster.local.", Qtype: dns.TypeA,
|
||||
Rcode: dns.RcodeNameError,
|
||||
Ns: []dns.RR{
|
||||
test.SOA("cluster.local. 300 IN SOA ns.dns.cluster.local. hostmaster.cluster.local. 1515173576 7200 1800 86400 30"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Qname: "blah.podns.pod.cluster.local.", Qtype: dns.TypeAAAA,
|
||||
Rcode: dns.RcodeNameError,
|
||||
Ns: []dns.RR{
|
||||
test.SOA("cluster.local. 300 IN SOA ns.dns.cluster.local. hostmaster.cluster.local. 1515173576 7200 1800 86400 30"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Qname: "blah.podns.pod.cluster.local.", Qtype: dns.TypeHINFO,
|
||||
Rcode: dns.RcodeNameError,
|
||||
Ns: []dns.RR{
|
||||
test.SOA("cluster.local. 300 IN SOA ns.dns.cluster.local. hostmaster.cluster.local. 1515173576 7200 1800 86400 30"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Qname: "blah.pod-nons.pod.cluster.local.", Qtype: dns.TypeA,
|
||||
Rcode: dns.RcodeNameError,
|
||||
@@ -32,6 +53,13 @@ var podModeInsecureCases = []test.Case{
|
||||
test.SOA("cluster.local. 300 IN SOA ns.dns.cluster.local. hostmaster.cluster.local. 1515173576 7200 1800 86400 30"),
|
||||
},
|
||||
},
|
||||
{
|
||||
Qname: "podns.pod.cluster.local.", Qtype: dns.TypeA,
|
||||
Rcode: dns.RcodeNameError,
|
||||
Ns: []dns.RR{
|
||||
test.SOA("cluster.local. 300 IN SOA ns.dns.cluster.local. hostmaster.cluster.local. 1515173576 7200 1800 86400 30"),
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
func TestServeDNSModeInsecure(t *testing.T) {
|
||||
|
||||
@@ -321,6 +321,12 @@ func (k *Kubernetes) findPods(r recordRequest, zone string) (pods []msg.Service,
|
||||
if !wildcard(namespace) && !k.namespace(namespace) { // no wildcard, but namespace does not exist
|
||||
return nil, errNoItems
|
||||
}
|
||||
|
||||
// If ip does not parse as an IP address, we return an error, otherwise we assume a CNAME and will try to resolve it in backend_lookup.go
|
||||
if net.ParseIP(ip) == nil {
|
||||
return nil, errNoItems
|
||||
}
|
||||
|
||||
return []msg.Service{{Key: strings.Join([]string{zonePath, Pod, namespace, podname}, "/"), Host: ip, TTL: k.ttl}}, err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user