如何为使用 Linux 的 Azure 虚拟机设置通配符 DNS 记录?

如何为使用 Linux 的 Azure 虚拟机设置通配符 DNS 记录?

我正在尝试部署工作历险在装有 Linux 的 Azure Linux 虚拟机中进行测试,并从互联网访问它。

为此我找到了这里 #794 (评论)引用好的文档 来自 insensitiveclod 的 technic。
我按照该指南操作,并在 Azure VM 中执行了大部分步骤,该 VM 具有 Ubuntu 20.04.2 LTS、动态 IP 地址和 DNS 名称,例如mytestwa.northeurope.cloudapp.azure.com

我做到了:

  • 使用 Linux 创建 Azure VM
  • 创建 Azure IP 地址(公共地址和 DNS 名称)并分配给 Azure VM
  • 设置docker环境和网络设置
  • 独立于 jitsi/workadventure 设置 Traefik(和 coturn)
  • 设置 WorkAdventure
  • 设置 Jitsi

尽管如此,我还是无法测试任何东西(特拉菲克工作历险, 或者日本信息技术标准协会)因为我不知道如何按照指南完成这一步: *.whatever.your.domain.is“为您想要托管它的机器的公共可访问 IP 设置通配符 DNS 记录。使用 CNAME 记录效果很好。首先将 TTL 设置为 5 分钟可能会更好。(为每个服务创建 DNS 通配符或每个 DNS 条目xyz.whatever.your.domain.is)”

因此,WorkAdventure 需要使用子域名(、、play.*等),而我无法访问其中任何内容(无论是在还是上):pusher.*meet.*mytestwa.northeurope.cloudapp.azuresomefreedomain.tk

  • 管理员.mytestwa.northeurope.cloudapp.azure
  • play.mytestwa.northeurope.cloudapp.azure.com
  • meet.mytestwa.northeurope.cloudapp.azure.com
  • 玩.somefreedomain.tk
  • ...somefreedomain.tk

*.mytestwa.northeurope.cloudapp.azure.com应该从 Azure 门户还是从 Azure VM Linux shell 中将通配符 DNS 记录设置为可公开访问的 IP 或 DNS 名称?

我设法在 freenom.com 中创建了一个免费的自定义域名somefreedomain.tk。这是我在 freenom 管理面板中作为 DNS 设置的内容。

仍然不知道如何继续,因为当我尝试在 DNS 设置中添加另一条记录作为 * CNAME 3600 ...cloudapp.azure.com 时,我收到错误:“不允许使用通配符!”

有人有什么想法并能帮助我吗?

我创建了一个 Azure 资源 IP 地址并将其分配给我的 Azure VM。
如附图所示,我还尝试配置该 Azure IP 地址并在 Azure DNS 中使用 Azure 资源 DNS 区域(名为)创建别名记录,但仍然不起作用,而且我对 DNS 和子域的知识有限。dns.zone somefreedomain.tk

欢迎任何帮助或建议!
非常感谢!

我没有足够的声誉来放置其他链接或图片,所以我会离开最初的 SO 问题的链接

答案1

Azure DNS 支持通配符记录。任何具有匹配名称的查询都会返回通配符记录,除非非通配符记录集有更接近的匹配项。Azure DNS 支持除 NS 和 SOA 之外的所有记录类型的通配符记录集。若要创建通配符记录集,请使用记录集名称*

您可以通过门户、powershell、cli 或 api 创建此类记录。

参考:

相关内容