Documentation ¶
Index ¶
Constants ¶
View Source
const ( DHCPTTL = time.Hour DHCPTimeout = time.Minute )
View Source
const ( DNSProviderAliDNS = "alidns" DNSProviderCloudflare = "cloudflare" )
View Source
const ( ProtocolTLS = "tls" ProtocolHTTP = "http" ProtocolQUIC = "quic" ProtocolDNS = "dns" ProtocolSTUN = "stun" ProtocolBitTorrent = "bittorrent" ProtocolDTLS = "dtls" ProtocolSSH = "ssh" ProtocolRDP = "rdp" ProtocolNTP = "ntp" )
View Source
const ( ClientChromium = "chromium" ClientSafari = "safari" ClientFirefox = "firefox" ClientQUICGo = "quic-go" ClientUnknown = "unknown" )
View Source
const ( TypeTun = "tun" TypeRedirect = "redirect" TypeTProxy = "tproxy" TypeDirect = "direct" TypeBlock = "block" TypeDNS = "dns" TypeSOCKS = "socks" TypeHTTP = "http" TypeMixed = "mixed" TypeShadowsocks = "shadowsocks" TypeVMess = "vmess" TypeTrojan = "trojan" TypeNaive = "naive" TypeWireGuard = "wireguard" TypeHysteria = "hysteria" TypeTor = "tor" TypeSSH = "ssh" TypeShadowTLS = "shadowtls" TypeShadowsocksR = "shadowsocksr" TypeVLESS = "vless" TypeTUIC = "tuic" TypeHysteria2 = "hysteria2" )
View Source
const ( TypeSelector = "selector" TypeURLTest = "urltest" )
View Source
const ( RuleTypeDefault = "default" RuleTypeLogical = "logical" )
View Source
const ( LogicalTypeAnd = "and" LogicalTypeOr = "or" )
View Source
const ( RuleSetTypeInline = "inline" RuleSetTypeLocal = "local" RuleSetTypeRemote = "remote" RuleSetFormatSource = "source" RuleSetFormatBinary = "binary" )
View Source
const ( RuleSetVersion1 = 1 + iota RuleSetVersion2 RuleSetVersion3 RuleSetVersionCurrent = RuleSetVersion3 )
View Source
const ( RuleActionTypeRoute = "route" RuleActionTypeRouteOptions = "route-options" RuleActionTypeDirect = "direct" RuleActionTypeReject = "reject" RuleActionTypeHijackDNS = "hijack-dns" RuleActionTypeSniff = "sniff" RuleActionTypeResolve = "resolve" )
View Source
const ( RuleActionRejectMethodDefault = "default" RuleActionRejectMethodDrop = "drop" )
View Source
const ( TCPKeepAliveInitial = 10 * time.Minute TCPKeepAliveInterval = 75 * time.Second TCPConnectTimeout = 5 * time.Second TCPTimeout = 15 * time.Second ReadPayloadTimeout = 300 * time.Millisecond DNSTimeout = 10 * time.Second UDPTimeout = 5 * time.Minute DefaultURLTestInterval = 3 * time.Minute DefaultURLTestIdleTimeout = 30 * time.Minute StartTimeout = 10 * time.Second StopTimeout = 5 * time.Second FatalStopTimeout = 10 * time.Second FakeIPMetadataSaveInterval = 10 * time.Second )
View Source
const ( V2RayTransportTypeHTTP = "http" V2RayTransportTypeWebsocket = "ws" V2RayTransportTypeQUIC = "quic" V2RayTransportTypeGRPC = "grpc" V2RayTransportTypeHTTPUpgrade = "httpupgrade" )
View Source
const CGO_ENABLED = true
View Source
const IsAndroid = goos.IsAndroid == 1
View Source
const IsDarwin = goos.IsDarwin == 1 || goos.IsIos == 1
View Source
const IsDragonfly = goos.IsDragonfly == 1
View Source
const IsFreebsd = goos.IsFreebsd == 1
View Source
const IsHurd = goos.IsHurd == 1
View Source
const IsIllumos = goos.IsIllumos == 1
View Source
const IsIos = goos.IsIos == 1
View Source
const IsJs = goos.IsJs == 1
View Source
const IsLinux = goos.IsLinux == 1 || goos.IsAndroid == 1
View Source
const IsNacl = goos.IsNacl == 1
View Source
const IsNetbsd = goos.IsNetbsd == 1
View Source
const IsOpenbsd = goos.IsOpenbsd == 1
View Source
const IsPlan9 = goos.IsPlan9 == 1
View Source
const IsSolaris = goos.IsSolaris == 1
View Source
const IsWindows = goos.IsWindows == 1
View Source
const IsZos = goos.IsZos == 1
View Source
const MbpsToBps = 125000
View Source
const TimeLayout = "2006-01-02 15:04:05 -0700"
View Source
const WithQUIC = false
Variables ¶
View Source
var ErrQUICNotIncluded = E.New(`QUIC is not included in this build, rebuild with -tags with_quic`)
View Source
var ErrTLSRequired = E.New("TLS required")
View Source
var PortProtocols = map[uint16]string{ 53: ProtocolDNS, 123: ProtocolNTP, 3478: ProtocolSTUN, 443: ProtocolQUIC, }
View Source
var ProtocolTimeouts = map[string]time.Duration{ ProtocolDNS: 10 * time.Second, ProtocolNTP: 10 * time.Second, ProtocolSTUN: 10 * time.Second, ProtocolQUIC: 30 * time.Second, ProtocolDTLS: 30 * time.Second, }
View Source
var (
StringToInterfaceType = common.ReverseMap(interfaceTypeToString)
)
View Source
var (
StringToNetworkStrategy = common.ReverseMap(networkStrategyToString)
)
View Source
var Version = "unknown"
Functions ¶
func ProxyDisplayName ¶ added in v1.3.6
Types ¶
type InterfaceType ¶
type InterfaceType uint8
const ( InterfaceTypeWIFI InterfaceType = iota InterfaceTypeCellular InterfaceTypeEthernet InterfaceTypeOther )
func (InterfaceType) String ¶
func (t InterfaceType) String() string
type NetworkStrategy ¶
type NetworkStrategy uint8
const ( NetworkStrategyDefault NetworkStrategy = iota NetworkStrategyFallback NetworkStrategyHybrid )
func (NetworkStrategy) String ¶
func (s NetworkStrategy) String() string
Source Files ¶
Click to show internal directories.
Click to hide internal directories.