nextdeveloper/dns
Composer 安装命令:
composer require nextdeveloper/dns
包简介
NextDeveloper DNS Package
README 文档
README
DNS module for the PlusClouds cloud platform - unified zone/record management across two backends:
- PowerDNS (self-hosted) - managed through pdns-agent, a NATS-connected
Go agent forked from
vm.agent, talking to PowerDNS's own local REST API. - CloudFlare (enterprise) - customers connect their own CloudFlare API token; this module calls CloudFlare's REST API v4 directly, no agent involved.
Both sit behind one DnsProviderInterface contract, resolved per-zone by
DnsProviderManager based on DnsZones.provider - mirrors the interface +
driver + dispatcher pattern in NextDeveloper\IAAS\Services\HypervisorsV2.
Resources
DnsServers- individual PowerDNS instances (primary/secondary), identified by their pdns-agent'sagent_uuid.DnsProviderCredentials- a customer's own CloudFlare API token, encrypted at rest, never exposed back through the API.DnsZones- a DNS zone, backed by either aDnsServersrow or aDnsProviderCredentialsrow depending onprovider.DnsRecords- A/AAAA/CNAME/MX/TXT/SRV/NS/CAA records within a zone.
Command dispatch
PowerDNS operations go through the platform's existing generic agent-command
layer (NextDeveloper\Events\Services\AgentCommandsService::dispatch('dns', ...)
- the same mechanism vm.agent already uses, just with
agent_type = 'dns'), publishing toagent.dns.{server_uuid}.cmdover NATS. Results come back onagent.dns.{server_uuid}.evtand are picked up byphp artisan dns:pdns-agent-listen, which flipsDnsZones/DnsRecordsstatus fromprovisioningtoactive/failed.
CloudFlare operations are synchronous HTTP calls - no agent, no NATS.
统计信息
- 总下载量: 1
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-07-11