scanner

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: May 24, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Providers = map[string]string{
	"com": "https://rdap.verisign.com/com/v1/domain/",
	"net": "https://rdap.verisign.com/net/v1/domain/",
	"org": "https://rdap.publicinterestregistry.org/rdap/domain/",
	"dev": "https://pubapi.registry.google/rdap/domain/",
	"app": "https://pubapi.registry.google/rdap/domain/",
	"io":  "https://rdap.nic.io/domain/",
	"co":  "https://rdap.nic.co/domain/",
	"xyz": "https://rdap.centralnic.com/xyz/domain/",
}

RDAP providers by TLD — sourced from IANA bootstrap (data.iana.org/rdap/dns.json). Protocol: HTTP GET → 200 = registered, 404 = available.

View Source
var SupportedTLDs = []string{"com", "net", "org", "dev", "app", "io", "co", "xyz"}

Functions

func Generate added in v1.1.0

func Generate(length int, pattern string) []string

Generate produces name strings (without TLD) for given length and pattern.

func GenerateAll added in v1.1.0

func GenerateAll(tlds []string, length int, pattern string) []string

GenerateAll creates domains for given TLDs, length, and pattern.

func GenerateDomains

func GenerateDomains(length int, pattern Pattern, tlds []string) []string

GenerateDomains produces pronounceable domain names for the given config.

Types

type Pattern

type Pattern string
const (
	PatternCVC   Pattern = "CVC"
	PatternVCV   Pattern = "VCV"
	PatternCVCV  Pattern = "CVCV"
	PatternCVCVC Pattern = "CVCVC"
	PatternAll   Pattern = "ALL"
)

type Result

type Result struct {
	Domain    string
	TLD       string
	Available bool
	Error     bool
	Method    string // "dns", "rdap", "dns+rdap"
	Timestamp time.Time
}

type Scanner

type Scanner struct {
	OnResult func(Result)
	Done     chan struct{}
	// contains filtered or unexported fields
}

func New

func New(workers int) *Scanner

func (*Scanner) Results

func (s *Scanner) Results() []Result

func (*Scanner) Run

func (s *Scanner) Run(domains []string)

func (*Scanner) Stats

func (s *Scanner) Stats() Stats

type Stats

type Stats struct {
	Checked   int64
	Available int64
	Errors    int64
	Total     int
	StartTime time.Time
}

Jump to

Keyboard shortcuts

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