Connection k8s dns to external dns

Greetings, I am looking for some advise on dns configuration.
I am using metallb to give external ip’s to services in the k8s cluster. I want to connect my external dns to kubernetes dns. So if I do: https://plex.home it points to the loadbalancer ip. Any advise would be appreciated.

Not sure I’m getting the question.

How do you point a DNS record to an IP? What is the DNS server for that domain? You usually change the record to point to the A record you want.

Bit I feel I am missing something. Sorry if I didn’t follow your question :slight_smile:

No worries, I may be explaining the problem poorly as I don’t have much experience using dns.
my network has a dns server at 192.168.2.1. The k8s cluster is on that subnet and services exposed on various ip’s(192.168.2.16) for plex. I want to figure out make it so that on this network I can get plex.home to point to that ip.

What happens if you create an A record pointing to that IP? What is the problem with doing that? (I think if I understand the problem, then I’d be able to give you hopefully a better answer. Sorry :))

ok so figure it out but it took some time:

  1. step 1 create a dns services with desired hostname -> lb ip
    k8s has a project called external-dns to do this.For baremetal:
    https://github.com/kubernetes-incubator/external-dns/blob/master/docs/tutorials/coredns.md
    seems to be the easiest solution so far.

  2. connect dns server to the external server.
    which means adding the ip of the dns server to the list of upstream servers.
    This was a challenge was because dnsmasq blocks requests from upstream servers that resolve to internal ip addresses.
    This was fixed by adding:

    server=/home/192.168.2.15 #for anything with home at the end forward to the given dns server
    rebind-domain-ok=/home/ #don’t block requests to home

Hope this helps others who are trying to do the same thing

1 Like

Thanks for sharing :slight_smile: