corednsを触り始めた

pdns-mrubybackendの開発はやめてしまったが、やはりDNSのおもちゃが欲しくなった。

通常だとサービスディスカバリや内部DNSとして使うのが一般的だと思うがgolang製・軽量なcorednsを触ってみることにした。

インストールの手順は https://coredns.io/manual/toc/#installation の通り。

自分は CentOS 7の環境で試したが、golangさえ入って入ればOSXでもなんでも良いと思う。

golang入ってない人はgoenvでgolang入れて。

とりあえず動いてるのを見る、ならこんな感じで。

1
2
3
4
5
[rhykw@95ee70a9c23f ~]$ go get github.com/coredns/coredns
[rhykw@95ee70a9c23f ~]$ coredns --version
CoreDNS-1.2.0
linux/amd64, go1.10.3,
[rhykw@95ee70a9c23f ~]$

とりあえず起動。

1
2
3
4
5
6
[rhykw@95ee70a9c23f coredns]$ ./coredns -dns.port=1053
.:1053
2018/07/16 01:27:17 [INFO] CoreDNS-1.2.0
2018/07/16 01:27:17 [INFO] linux/amd64, go1.10.3,
CoreDNS-1.2.0
linux/amd64, go1.10.3,

とりあえずdig。

1
2
3
[root@95ee70a9c23f /]# dig +noall +answer +additional +nocmd @localhost -p 1053 A www.example.org.
www.example.org. 0 IN A 127.0.0.1
_udp.www.example.org. 0 IN SRV 0 0 57137 .

とりあえずあれこれはここまで。

嘘つきDNSをcorednsでもやってみたいので Writing Plugins for CoreDNS を読んでプラグインを書いてみよ。

きょうはここまで。

このエントリーをはてなブックマークに追加