他們的解法是設計出一套 DSL (Domain Specific Language),然後從 DSL 轉出各 DNS 商的格式:「Introducing DnsControl – “DNS as Code” has Arrived」。
以 stackoverflow.com
來說,可以看到有同時使用 AWS 的 Route 53 與 Google 的 Cloud DNS:
;; ANSWER SECTION: stackoverflow.com. 36458 IN NS ns-cloud-e2.googledomains.com. stackoverflow.com. 36458 IN NS ns-358.awsdns-44.com. stackoverflow.com. 36458 IN NS ns-1033.awsdns-01.org. stackoverflow.com. 36458 IN NS ns-cloud-e1.googledomains.com.
於是他們就用 DSL 管理:
D(“stackoverflow.com”, REG_NAMEDOTCOM, DnsProvider(R53), DnsProvider(GCLOUD), A(“@”, “198.252.206.16”), A(“blog”, “198.252.206.20”), CNAME(“chat”, “chat.stackexchange.com.”), CNAME(“www”, “@”, TTL(3600)), A(“meta”, “198.252.206.16”) )
這套程式碼在「StackExchange/dnscontrol」這邊,但這樣搞有種微妙的感覺... 不考慮直接用兩家有支援 AXFR 架構的 DNS 商來架設嗎?這樣就只要用 BIND 這類已經很熟悉的軟體設定就好?
4 thoughts on “StackOverflow 對於多 DNS 商的同步方式...”