CoreDNS plugins need to be compiled into CoreDNS, you can follow the build instructions to build the binaries or use the provided docker images.
- Create Omada user
- Run CoreDNS with omada plugin
- Setup network
- Login to Omada controller
- Go to Admin > Add New Admin
- Choose "Local User"
- Role: "Viewer"
- Site Privileges: "All" or select the individual site
- Make a note of the username and password
./coredns -conf ./Corefile
- requires a
Corefile
in the current directory - set the url/username/password accordingly
docker run \
--rm -it -m 128m \
--expose=53 --expose=53/udp -p 53:53 -p 53:53/udp \
-v "$PWD"/Corefile:/etc/coredns/Corefile \
--env OMADA_URL="<OMADA_URL>" \
--env OMADA_SITE="<OMADA_SITE>" \
--env OMADA_USERNAME="<OMADA_USERNAME>" \
--env OMADA_PASSWORD="<OMADA_PASSWORD>" \
--env OMADA_DISABLE_HTTPS_VERIFICATION="false" \
--env UPSTREAM_DNS="8.8.8.8" \
dougbw1/coredns-omada:1.0.0 -conf /etc/coredns/Corefile
Note: If you do not have a valid https certificate on your controller then set OMADA_DISABLE_HTTPS_VERIFICATION
to true
Some example manifest files to get started are in the k8s directory. Make sure you replace the following values:
- configmap.yaml
omada-url
omada-site
omada-username
upstream-dns
- Note: if you do not have a valid https certification on your controller then set
omada-disable-https-verification
totrue
- secret.yaml
omada-password
- From the Omada controller go to Settings -> Wired Networks -> LAN and choose your network(s):
Domain Name
must be set (e.gomada.home
)DNS Server
set toManual
and enter the IP address of your CoreDNS instance