实现在域名解析中使用EdgeDNS

This commit is contained in:
刘祥超
2021-06-02 18:13:48 +08:00
parent fe6c610d56
commit ef5630ba4a
28 changed files with 731 additions and 174 deletions

View File

@@ -1,6 +1,9 @@
package dnsclients
import "github.com/iwind/TeaGo/maps"
import (
"github.com/TeaOSLab/EdgeAPI/internal/dnsclients/dnstypes"
"github.com/iwind/TeaGo/maps"
)
// ProviderInterface DNS操作接口
type ProviderInterface interface {
@@ -8,22 +11,22 @@ type ProviderInterface interface {
Auth(params maps.Map) error
// GetRecords 获取域名解析记录列表
GetRecords(domain string) (records []*Record, err error)
GetRecords(domain string) (records []*dnstypes.Record, err error)
// GetRoutes 读取域名支持的线路数据
GetRoutes(domain string) (routes []*Route, err error)
GetRoutes(domain string) (routes []*dnstypes.Route, err error)
// QueryRecord 查询单个记录
QueryRecord(domain string, name string, recordType RecordType) (*Record, error)
QueryRecord(domain string, name string, recordType dnstypes.RecordType) (*dnstypes.Record, error)
// AddRecord 设置记录
AddRecord(domain string, newRecord *Record) error
AddRecord(domain string, newRecord *dnstypes.Record) error
// UpdateRecord 修改记录
UpdateRecord(domain string, record *Record, newRecord *Record) error
UpdateRecord(domain string, record *dnstypes.Record, newRecord *dnstypes.Record) error
// DeleteRecord 删除记录
DeleteRecord(domain string, record *Record) error
DeleteRecord(domain string, record *dnstypes.Record) error
// DefaultRoute 默认线路
DefaultRoute() string