0

I need to proxy DNS requests based on hostname. enter image description here

I've configured the Kong to stream 53 udp.

I can create service:

curl -X POST http://localhost:8001/services \
-H "Content-Type: application/json" \
-d '{"name":"jerry", "protocol":"udp", "host": "jerry-coredns", "port": 53}'

But when trying to create a route based on hostname:

curl -X POST http://localhost:8001/services/jerry/routes \
-H "Content-Type: application/json" \
-d '{"name":"jerry-dns-route", "hosts": ["jerry.kong.local"], "destinations":[{"port":53}],"protocols":["udp"]}'

The Kong response is:

cannot set 'hosts' when 'protocols' is 'tcp', 'tls', 'tls_passthrough' or 'udp'

We know there's no hostname header on UDP protocol like HTTP. So the question is, How do cloud providers like Cloudflare or Amazon, create the DNS server for their customers? I can't use valid IP addresses per DNS server Obviously.

0 Answers0