mirror of
				https://github.com/coredns/coredns.git
				synced 2025-11-04 03:03:14 -05:00 
			
		
		
		
	
		
			
	
	
		
			21 lines
		
	
	
		
			574 B
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			21 lines
		
	
	
		
			574 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| 
								 | 
							
								package kubernetes
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import (
							 | 
						||
| 
								 | 
							
									"github.com/coredns/coredns/middleware"
							 | 
						||
| 
								 | 
							
									"github.com/coredns/coredns/middleware/etcd/msg"
							 | 
						||
| 
								 | 
							
									"github.com/coredns/coredns/middleware/pkg/dnsutil"
							 | 
						||
| 
								 | 
							
									"github.com/coredns/coredns/request"
							 | 
						||
| 
								 | 
							
								)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Reverse implements the ServiceBackend interface.
							 | 
						||
| 
								 | 
							
								func (k *Kubernetes) Reverse(state request.Request, exact bool, opt middleware.Options) ([]msg.Service, []msg.Service, error) {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									ip := dnsutil.ExtractAddressFromReverse(state.Name())
							 | 
						||
| 
								 | 
							
									if ip == "" {
							 | 
						||
| 
								 | 
							
										return nil, nil, nil
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									records := k.getServiceRecordForIP(ip, state.Name())
							 | 
						||
| 
								 | 
							
									return records, nil, nil
							 | 
						||
| 
								 | 
							
								}
							 |