![如果主机无法解析,如何进行 DNS 回退](https://linux22.com/image/696795/%E5%A6%82%E6%9E%9C%E4%B8%BB%E6%9C%BA%E6%97%A0%E6%B3%95%E8%A7%A3%E6%9E%90%EF%BC%8C%E5%A6%82%E4%BD%95%E8%BF%9B%E8%A1%8C%20DNS%20%E5%9B%9E%E9%80%80.png)
对于一些 docker 容器,我需要容器之间的链接。这是由 docker-compose 完成的,如果容器启动了(有时这也是问题所在),它就会运行得非常好。
我正在寻找一个像 DNS 解析器一样工作的解决方案,它执行以下操作:
- 尝试解析 $HOSTNAME
- 如果 $HOSTNAME 可解析 - 很好,只需返回 IP
- 如果 $HOSTNAME 无法解析且看起来像 .+?_.+?.+? - 好的,返回例如 127.0.0.1 作为 IP
- 如果没有返回任何内容,则返回不可解析
我尝试使用 dnsmasq 来执行此操作,但失败了,也许我写错了配置,但我的所有尝试都失败了。
有没有软件可以做到这一点?有人知道在 GO 中编写这个是否需要大量工作还是只需三行代码?