dnsclients

package
v0.4.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2022 License: BSD-3-Clause Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DNSPodMaxTTL        int32 = 604800
	DNSPodInternational       = "international"
)
View Source
const CloudFlareAPIEndpoint = "https://api.cloudflare.com/client/v4/"
View Source
const CloudFlareDefaultRoute = "default"
View Source
const HuaweiDNSEndpoint = "https://dns.cn-north-1.myhuaweicloud.com/"

Variables

This section is empty.

Functions

func FindAllProviderTypes

func FindAllProviderTypes() []maps.Map

FindAllProviderTypes 所有的服务商类型

func FindProviderTypeName

func FindProviderTypeName(providerType ProviderType) string

FindProviderTypeName 查找服务商名称

Types

type AliDNSProvider

type AliDNSProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

AliDNSProvider 阿里云服务商

func (*AliDNSProvider) AddRecord

func (this *AliDNSProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*AliDNSProvider) Auth

func (this *AliDNSProvider) Auth(params maps.Map) error

Auth 认证

func (*AliDNSProvider) DefaultRoute

func (this *AliDNSProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*AliDNSProvider) DeleteRecord

func (this *AliDNSProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*AliDNSProvider) GetDomains

func (this *AliDNSProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*AliDNSProvider) GetRecords

func (this *AliDNSProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名列表

func (*AliDNSProvider) GetRoutes

func (this *AliDNSProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*AliDNSProvider) QueryRecord

func (this *AliDNSProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*AliDNSProvider) UpdateRecord

func (this *AliDNSProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type BaseProvider

type BaseProvider struct {
}

func (*BaseProvider) WrapError

func (this *BaseProvider) WrapError(err error, domain string, record *dnstypes.Record) error

WrapError 封装解析相关错误

type CloudFlareProvider

type CloudFlareProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

func (*CloudFlareProvider) AddRecord

func (this *CloudFlareProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*CloudFlareProvider) Auth

func (this *CloudFlareProvider) Auth(params maps.Map) error

Auth 认证

func (*CloudFlareProvider) DefaultRoute

func (this *CloudFlareProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*CloudFlareProvider) DeleteRecord

func (this *CloudFlareProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*CloudFlareProvider) GetDomains

func (this *CloudFlareProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*CloudFlareProvider) GetRecords

func (this *CloudFlareProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名解析记录列表

func (*CloudFlareProvider) GetRoutes

func (this *CloudFlareProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*CloudFlareProvider) QueryRecord

func (this *CloudFlareProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*CloudFlareProvider) UpdateRecord

func (this *CloudFlareProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type CustomHTTPProvider

type CustomHTTPProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

CustomHTTPProvider HTTP自定义DNS

func (*CustomHTTPProvider) AddRecord

func (this *CustomHTTPProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*CustomHTTPProvider) Auth

func (this *CustomHTTPProvider) Auth(params maps.Map) error

Auth 认证 参数:

  • url
  • secret

func (*CustomHTTPProvider) DefaultRoute

func (this *CustomHTTPProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*CustomHTTPProvider) DeleteRecord

func (this *CustomHTTPProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*CustomHTTPProvider) GetDomains

func (this *CustomHTTPProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*CustomHTTPProvider) GetRecords

func (this *CustomHTTPProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名解析记录列表

func (*CustomHTTPProvider) GetRoutes

func (this *CustomHTTPProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*CustomHTTPProvider) QueryRecord

func (this *CustomHTTPProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*CustomHTTPProvider) UpdateRecord

func (this *CustomHTTPProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type DNSPodProvider

type DNSPodProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

DNSPodProvider DNSPod服务商

func (*DNSPodProvider) AddRecord

func (this *DNSPodProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*DNSPodProvider) Auth

func (this *DNSPodProvider) Auth(params maps.Map) error

Auth 认证

func (*DNSPodProvider) DefaultRoute

func (this *DNSPodProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*DNSPodProvider) DeleteRecord

func (this *DNSPodProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*DNSPodProvider) GetDomains

func (this *DNSPodProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*DNSPodProvider) GetRecords

func (this *DNSPodProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名列表

func (*DNSPodProvider) GetRoutes

func (this *DNSPodProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取线路数据

func (*DNSPodProvider) QueryRecord

func (this *DNSPodProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*DNSPodProvider) UpdateRecord

func (this *DNSPodProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type HuaweiDNSProvider

type HuaweiDNSProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

HuaweiDNSProvider 华为云DNS 相关文档链接:https://support.huaweicloud.com/api-dns/dns_api_62001.html

func (*HuaweiDNSProvider) AddRecord

func (this *HuaweiDNSProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*HuaweiDNSProvider) Auth

func (this *HuaweiDNSProvider) Auth(params maps.Map) error

Auth 认证

func (*HuaweiDNSProvider) DefaultRoute

func (this *HuaweiDNSProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*HuaweiDNSProvider) DeleteRecord

func (this *HuaweiDNSProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*HuaweiDNSProvider) GetDomains

func (this *HuaweiDNSProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*HuaweiDNSProvider) GetRecords

func (this *HuaweiDNSProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名解析记录列表

func (*HuaweiDNSProvider) GetRoutes

func (this *HuaweiDNSProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*HuaweiDNSProvider) QueryRecord

func (this *HuaweiDNSProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*HuaweiDNSProvider) UpdateRecord

func (this *HuaweiDNSProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type LocalEdgeDNSProvider

type LocalEdgeDNSProvider struct {
	BaseProvider
	// contains filtered or unexported fields
}

func (*LocalEdgeDNSProvider) AddRecord

func (this *LocalEdgeDNSProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*LocalEdgeDNSProvider) Auth

func (this *LocalEdgeDNSProvider) Auth(params maps.Map) error

Auth 认证

func (*LocalEdgeDNSProvider) DefaultRoute

func (this *LocalEdgeDNSProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*LocalEdgeDNSProvider) DeleteRecord

func (this *LocalEdgeDNSProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*LocalEdgeDNSProvider) GetDomains

func (this *LocalEdgeDNSProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*LocalEdgeDNSProvider) GetRecords

func (this *LocalEdgeDNSProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名解析记录列表

func (*LocalEdgeDNSProvider) GetRoutes

func (this *LocalEdgeDNSProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*LocalEdgeDNSProvider) QueryRecord

func (this *LocalEdgeDNSProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*LocalEdgeDNSProvider) UpdateRecord

func (this *LocalEdgeDNSProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

type ProviderInterface

type ProviderInterface interface {
	// Auth 认证
	Auth(params maps.Map) error

	// GetDomains 获取所有域名列表
	GetDomains() (domains []string, err error)

	// GetRecords 获取域名解析记录列表
	GetRecords(domain string) (records []*dnstypes.Record, err error)

	// GetRoutes 读取域名支持的线路数据
	GetRoutes(domain string) (routes []*dnstypes.Route, err error)

	// QueryRecord 查询单个记录
	QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

	// AddRecord 设置记录
	AddRecord(domain string, newRecord *dnstypes.Record) error

	// UpdateRecord 修改记录
	UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

	// DeleteRecord 删除记录
	DeleteRecord(domain string, record *dnstypes.Record) error

	// DefaultRoute 默认线路
	DefaultRoute() string
}

ProviderInterface DNS操作接口

func FindProvider

func FindProvider(providerType ProviderType) ProviderInterface

FindProvider 查找服务商实例

type ProviderType

type ProviderType = string
const (
	ProviderTypeDNSPod       ProviderType = "dnspod"       // DNSPod
	ProviderTypeAliDNS       ProviderType = "alidns"       // 阿里云DNS
	ProviderTypeHuaweiDNS    ProviderType = "huaweiDNS"    // 华为DNS
	ProviderTypeCloudFlare   ProviderType = "cloudFlare"   // CloudFlare DNS
	ProviderTypeLocalEdgeDNS ProviderType = "localEdgeDNS" // 和当前系统集成的EdgeDNS
	ProviderTypeUserEdgeDNS  ProviderType = "userEdgeDNS"  // 通过API连接的EdgeDNS
	ProviderTypeCustomHTTP   ProviderType = "customHTTP"   // 自定义HTTP接口
)

服务商代号

type UserEdgeDNSProvider

type UserEdgeDNSProvider struct {
}

func (*UserEdgeDNSProvider) AddRecord

func (this *UserEdgeDNSProvider) AddRecord(domain string, newRecord *dnstypes.Record) error

AddRecord 设置记录

func (*UserEdgeDNSProvider) Auth

func (this *UserEdgeDNSProvider) Auth(params maps.Map) error

Auth 认证

func (*UserEdgeDNSProvider) DefaultRoute

func (this *UserEdgeDNSProvider) DefaultRoute() string

DefaultRoute 默认线路

func (*UserEdgeDNSProvider) DeleteRecord

func (this *UserEdgeDNSProvider) DeleteRecord(domain string, record *dnstypes.Record) error

DeleteRecord 删除记录

func (*UserEdgeDNSProvider) GetDomains

func (this *UserEdgeDNSProvider) GetDomains() (domains []string, err error)

GetDomains 获取所有域名列表

func (*UserEdgeDNSProvider) GetRecords

func (this *UserEdgeDNSProvider) GetRecords(domain string) (records []*dnstypes.Record, err error)

GetRecords 获取域名解析记录列表

func (*UserEdgeDNSProvider) GetRoutes

func (this *UserEdgeDNSProvider) GetRoutes(domain string) (routes []*dnstypes.Route, err error)

GetRoutes 读取域名支持的线路数据

func (*UserEdgeDNSProvider) QueryRecord

func (this *UserEdgeDNSProvider) QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)

QueryRecord 查询单个记录

func (*UserEdgeDNSProvider) UpdateRecord

func (this *UserEdgeDNSProvider) UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error

UpdateRecord 修改记录

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL