mirror of
https://github.com/mainnika/openwrt-feed-coredns.git
synced 2026-06-22 12:44:58 +00:00
Compare commits
4 Commits
72ff915b46
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| be41f62051 | |||
|
5f6c86549d
|
|||
|
4a28f02407
|
|||
|
fd71c59538
|
@@ -2,9 +2,19 @@
|
||||
|
||||
This is an openwrt feed that contains definitions to include CoreDNS software into your OpenWRT build.
|
||||
|
||||
## how to add the feed into your build
|
||||
## install from a binary
|
||||
|
||||
> see for details: https://openwrt.org/docs/guide-developer/feeds
|
||||
### by using terminal
|
||||
1. download an ipk file from the releases page https://code.tokarch.uk/mainnika/openwrt-feed-coredns/releases
|
||||
2. put the file to the device, e.g. path `/tmp/coredns.ipk` use scp -- `scp coredns_1.8.6-1_arm_cortex-a7_neon-vfpv4.ipk root@[openwrt-ip]:/tmp/coredns.ipk`
|
||||
2. use opkg to install the downloaded file, e.g. `opkg install /tmp/coredns.ipk`
|
||||
|
||||
### by using luci
|
||||
1. download an ipk file from the releases page https://code.tokarch.uk/mainnika/openwrt-feed-coredns/releases
|
||||
2. open luci admin gui and go `System` → `Software`
|
||||
3. use `Upload Package` buttom to upload local release file
|
||||
|
||||
## how to add the feed into your build
|
||||
|
||||
1. open your feeds.conf.default and add the following line:
|
||||
|
||||
@@ -17,3 +27,51 @@ This is an openwrt feed that contains definitions to include CoreDNS software in
|
||||
3. install coredns packages into your build:
|
||||
|
||||
`./scripts/feeds install -a -p feed_coredns`
|
||||
|
||||
> see for details: https://openwrt.org/docs/guide-developer/feeds
|
||||
|
||||
## service init
|
||||
|
||||
The package setups an init script `/etc/init.d/coredns` and uci config section:
|
||||
|
||||
```
|
||||
config coredns 'main'
|
||||
option port '53'
|
||||
option config '/etc/coredns/Corefile'
|
||||
```
|
||||
|
||||
There are two options defined:
|
||||
- port, default: 53 -- a port where coredns will listen for connections
|
||||
- config, default: /etc/coredns/Corefile -- a Corefile config file
|
||||
|
||||
> Use `uci` tool to change these values, e.g.: `uci set coredns.main.port=1053'
|
||||
|
||||
## coredns configuration
|
||||
|
||||
The package provides an empty config `Corefile` located at `/etc/coredns/Corefile`.
|
||||
The empty `Corefile`:
|
||||
|
||||
```
|
||||
. { }
|
||||
```
|
||||
|
||||
To configure the coredns instance properly set Corefile with your content.
|
||||
|
||||
## use cases
|
||||
|
||||
### openwrt hardware as the external dns resolver
|
||||
|
||||
> I assume that in this setup openwrt act as a dhcp client (not a server).
|
||||
> You can set lan network as a dhcp client by using these uci values (use `uci commit` to apply):
|
||||
> ```
|
||||
> uci del network.lan.ipaddr
|
||||
> uci del network.lan.netmask
|
||||
> uci del network.lan.ip6assign
|
||||
> uci set network.lan.proto='dhcp'
|
||||
> ```
|
||||
|
||||
the main goal is to replace `dnsmasq` with `coredns` because they share the same port `53`.
|
||||
|
||||
1. go `System` → `Startup`, disable and stop `dnsmasq`
|
||||
2. enable and start `coredns`
|
||||
3. now coredns acts as a default resolver and listen all interfaces by default.
|
||||
|
||||
@@ -42,7 +42,7 @@ define Package/coredns/install
|
||||
$(INSTALL_BIN) ./files/coredns.init $(1)/etc/init.d/coredns
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/config
|
||||
$(INSTALL_CONF) ./files/coredns.config $(1)/etc/config/coredns
|
||||
$(INSTALL_CONF) ./files/coredns.conf $(1)/etc/config/coredns
|
||||
|
||||
$(INSTALL_DIR) $(1)/etc/coredns
|
||||
$(INSTALL_CONF) ./files/Corefile $(1)/etc/coredns/Corefile
|
||||
|
||||
Reference in New Issue
Block a user