route

package
v1.14.0 Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2026 License: GPL-2.0 Imports: 62 Imported by: 19

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ParseNeighborMessage added in v1.14.0

func ParseNeighborMessage(message netlink.Message) (address netip.Addr, macAddress net.HardwareAddr, isDelete bool, ok bool)

func ReadNeighborEntries added in v1.14.0

func ReadNeighborEntries() ([]adapter.NeighborEntry, error)

func ReloadLeaseFiles added in v1.14.0

func ReloadLeaseFiles(leaseFiles []string) (leaseIPToMAC map[netip.Addr]net.HardwareAddr, ipToHostname map[netip.Addr]string, macToHostname map[string]string)

Types

type ConnectionManager added in v1.11.0

type ConnectionManager struct {
	// contains filtered or unexported fields
}

func NewConnectionManager added in v1.11.0

func NewConnectionManager(logger logger.ContextLogger) *ConnectionManager

func (*ConnectionManager) Close added in v1.11.0

func (m *ConnectionManager) Close() error

func (*ConnectionManager) CloseAll added in v1.13.0

func (m *ConnectionManager) CloseAll()

func (*ConnectionManager) Count added in v1.13.0

func (m *ConnectionManager) Count() int

func (*ConnectionManager) NewConnection added in v1.11.0

func (m *ConnectionManager) NewConnection(ctx context.Context, this N.Dialer, conn net.Conn, metadata adapter.InboundContext, onClose N.CloseHandlerFunc)

func (*ConnectionManager) NewPacketConnection added in v1.11.0

func (m *ConnectionManager) NewPacketConnection(ctx context.Context, this N.Dialer, conn N.PacketConn, metadata adapter.InboundContext, onClose N.CloseHandlerFunc)

func (*ConnectionManager) Start added in v1.11.0

func (m *ConnectionManager) Start(stage adapter.StartStage) error

func (*ConnectionManager) TrackConn added in v1.13.0

func (m *ConnectionManager) TrackConn(conn net.Conn) net.Conn

func (*ConnectionManager) TrackPacketConn added in v1.13.0

func (m *ConnectionManager) TrackPacketConn(conn net.PacketConn) net.PacketConn

type NetworkManager added in v1.11.0

type NetworkManager struct {
	// contains filtered or unexported fields
}

func NewNetworkManager added in v1.11.0

func NewNetworkManager(ctx context.Context, logger logger.ContextLogger, options option.RouteOptions, dnsOptions option.DNSOptions) (*NetworkManager, error)

func (*NetworkManager) AutoDetectInterface added in v1.11.0

func (r *NetworkManager) AutoDetectInterface() bool

func (*NetworkManager) AutoDetectInterfaceFunc added in v1.11.0

func (r *NetworkManager) AutoDetectInterfaceFunc() control.Func

func (*NetworkManager) AutoRedirectOutputMark added in v1.11.0

func (r *NetworkManager) AutoRedirectOutputMark() uint32

func (*NetworkManager) AutoRedirectOutputMarkFunc added in v1.12.2

func (r *NetworkManager) AutoRedirectOutputMarkFunc() control.Func

func (*NetworkManager) Close added in v1.11.0

func (r *NetworkManager) Close() error

func (*NetworkManager) DefaultNetworkInterface added in v1.11.0

func (r *NetworkManager) DefaultNetworkInterface() *adapter.NetworkInterface

func (*NetworkManager) DefaultOptions added in v1.11.0

func (r *NetworkManager) DefaultOptions() adapter.NetworkOptions

func (*NetworkManager) Initialize added in v1.13.0

func (r *NetworkManager) Initialize(ruleSets []adapter.RuleSet)

func (*NetworkManager) InterfaceFinder added in v1.11.0

func (r *NetworkManager) InterfaceFinder() control.InterfaceFinder

func (*NetworkManager) InterfaceMonitor added in v1.11.0

func (r *NetworkManager) InterfaceMonitor() tun.DefaultInterfaceMonitor

func (*NetworkManager) NeedWIFIState added in v1.13.0

func (r *NetworkManager) NeedWIFIState() bool

func (*NetworkManager) NetworkEnvironment added in v1.14.0

func (r *NetworkManager) NetworkEnvironment() uint64

func (*NetworkManager) NetworkInterfaces added in v1.11.0

func (r *NetworkManager) NetworkInterfaces() []adapter.NetworkInterface

func (*NetworkManager) NetworkMonitor added in v1.11.0

func (r *NetworkManager) NetworkMonitor() tun.NetworkUpdateMonitor

func (*NetworkManager) OnPackagesUpdated added in v1.11.0

func (r *NetworkManager) OnPackagesUpdated(packages int, sharedUsers int)

func (*NetworkManager) PackageManager added in v1.11.0

func (r *NetworkManager) PackageManager() tun.PackageManager

func (*NetworkManager) ProtectFunc added in v1.11.0

func (r *NetworkManager) ProtectFunc() control.Func

func (*NetworkManager) RegisterAutoRedirectOutputMark added in v1.11.0

func (r *NetworkManager) RegisterAutoRedirectOutputMark(mark uint32) error

func (*NetworkManager) ResetNetwork added in v1.11.0

func (r *NetworkManager) ResetNetwork(ctx context.Context)

func (*NetworkManager) Start added in v1.11.0

func (r *NetworkManager) Start(stage adapter.StartStage) error

func (*NetworkManager) UpdateInterfaces added in v1.11.0

func (r *NetworkManager) UpdateInterfaces() error

func (*NetworkManager) UpdateWIFIState added in v1.11.4

func (r *NetworkManager) UpdateWIFIState(ctx context.Context)

func (*NetworkManager) WIFIState added in v1.11.0

func (r *NetworkManager) WIFIState() adapter.WIFIState

type Router

type Router struct {
	// contains filtered or unexported fields
}

func NewRouter

func NewRouter(ctx context.Context, logFactory log.Factory, options option.RouteOptions, dnsOptions option.DNSOptions) *Router

func (*Router) AppendTracker added in v1.11.7

func (r *Router) AppendTracker(tracker adapter.ConnectionTracker)

func (*Router) Close

func (r *Router) Close() error

func (*Router) HijackDNSPacket added in v1.14.0

func (r *Router) HijackDNSPacket(ctx context.Context, payload []byte, writer N.PacketWriter, metadata adapter.InboundContext)

func (*Router) Initialize

func (r *Router) Initialize(rules []option.Rule, ruleSets []option.RuleSet) error

func (*Router) NeedFindNeighbor added in v1.14.0

func (r *Router) NeedFindNeighbor() bool

func (*Router) NeedFindProcess added in v1.13.0

func (r *Router) NeedFindProcess() bool

func (*Router) NeighborResolver added in v1.14.0

func (r *Router) NeighborResolver() adapter.NeighborResolver

func (*Router) PreMatch added in v1.11.0

func (r *Router) PreMatch(metadata adapter.InboundContext, firstPacket []byte) adapter.PreMatchResult

func (*Router) ResetNetwork added in v1.3.0

func (r *Router) ResetNetwork()

func (*Router) RouteConnection deprecated

func (r *Router) RouteConnection(ctx context.Context, conn net.Conn, metadata adapter.InboundContext) error

Deprecated: use RouteConnectionEx instead.

func (*Router) RouteConnectionEx added in v1.11.0

func (r *Router) RouteConnectionEx(ctx context.Context, conn net.Conn, metadata adapter.InboundContext, onClose N.CloseHandlerFunc)

func (*Router) RoutePacketConnection

func (r *Router) RoutePacketConnection(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext) error

func (*Router) RoutePacketConnectionEx added in v1.11.0

func (r *Router) RoutePacketConnectionEx(ctx context.Context, conn N.PacketConn, metadata adapter.InboundContext, onClose N.CloseHandlerFunc)

func (*Router) RuleSet added in v1.8.0

func (r *Router) RuleSet(tag string) (adapter.RuleSet, bool)

func (*Router) Rules

func (r *Router) Rules() []adapter.Rule

func (*Router) Start

func (r *Router) Start(stage adapter.StartStage) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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