Documentation
¶
Index ¶
Constants ¶
View Source
const SchemeMimic = "mimic"
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ClientConfig ¶
type ClientConfig struct {
Server string // Server address (IP:PORT)
UUID string // Unique authorization identifier
Domains []string // List of domains for masking
Transport string // Transport type: "mtp" or "tcp"
Proxies []ProxyConfig // Local proxy server settings
DNS string // Custom DNS server
Settings ClientSettings // Fine-tuning settings
Routing RoutingConfig // Routing rules
ServerName string // Server name from URL
LocalPort int // Local proxy port (for backward compatibility)
}
ClientConfig represents the client configuration
func LoadClientConfig ¶
func LoadClientConfig(path string) (*ClientConfig, error)
LoadClientConfig loads client configuration from YAML file
func ParseMimicURL ¶ added in v0.3.1
func ParseMimicURL(uri string) (*ClientConfig, error)
ParseMimicURL parses a mimic:// URI into a ClientConfig. Format: mimic://<uuid>@<server_ip>:<port>?domains=d1,d2&transport=mtp&dns=8.8.8.8:53
type ClientSettings ¶
type ClientSettings struct {
SwitchTimeRangeStr string // Time range for domain switching (e.g., "60s-300s")
SwitchMin time.Duration // Minimum switch interval
SwitchMax time.Duration // Maximum switch interval
Randomize bool // Randomize domain order
}
ClientSettings represents fine-tuning settings
type ProxyConfig ¶
ProxyConfig represents local proxy configuration
type RoutingConfig ¶
type RoutingConfig struct {
DefaultPolicy string // Default policy: "proxy", "direct", "block"
Rules []RoutingRule // Routing rules
}
RoutingConfig represents routing configuration
type RoutingRule ¶
type RoutingRule struct {
Type string // Rule type: "domain_suffix", "domain_keyword", "ip_cidr"
Value string // Rule value (domain, keyword, or CIDR)
Policy string // Policy: "proxy", "direct", "block"
}
RoutingRule represents a single routing rule
type ServerConfig ¶
type ServerConfig struct {
Port int // Listening port
MaxClients int // Maximum number of clients
UUID string // Server UUID for authentication
DomainList []string // List of domains for masking
Transport string // Transport type: "mtp" or "tcp"
DNS string // DNS server
Name string // Server name
}
ServerConfig represents the server configuration
func LoadServerConfig ¶
func LoadServerConfig(path string) (*ServerConfig, error)
LoadServerConfig loads server configuration from YAML file
Click to show internal directories.
Click to hide internal directories.