Documentation ¶
Index ¶
Constants ¶
View Source
const ( // MinMetric max metric input MinMetric = 1 // MaxMetric max metric input MaxMetric = 9999 // MaxNetIDChar Max Network Identifier MaxNetIDChar = 40 )
Windows has some limitation regarding metric size that differ from Unix-like systems. Because of that we are limiting the min and max metric size based on Windows limits: see based on info from https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/route_ws2008
View Source
const ( // InvalidNetworkString invalid network type string InvalidNetworkString = "Invalid" // IPv4NetworkString IPv4 network type string IPv4NetworkString = "IPv4" // IPv6NetworkString IPv6 network type string IPv6NetworkString = "IPv6" // DomainNetworkString domain network type string DomainNetworkString = "Domain" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HAMap ¶ added in v0.27.5
type HAMap map[HAUniqueID][]*Route
type HAUniqueID ¶ added in v0.27.5
type HAUniqueID string
func (HAUniqueID) NetID ¶ added in v0.27.5
func (id HAUniqueID) NetID() NetID
NetID returns the Network ID from the HAUniqueID
func (HAUniqueID) String ¶ added in v0.27.5
func (id HAUniqueID) String() string
type NetworkType ¶
type NetworkType int
NetworkType route network type
const ( // InvalidNetwork invalid network type InvalidNetwork NetworkType = iota // IPv4Network IPv4 network type IPv4Network // IPv6Network IPv6 network type IPv6Network // DomainNetwork domain network type DomainNetwork )
func ParseNetwork ¶
func ParseNetwork(networkString string) (NetworkType, netip.Prefix, error)
ParseNetwork Parses a network prefix string and returns a netip.Prefix object and if is invalid, IPv4 or IPv6
type Route ¶
type Route struct { ID ID `gorm:"primaryKey"` // AccountID is a reference to Account that this object belongs AccountID string `gorm:"index"` // Network and Domains are mutually exclusive Network netip.Prefix `gorm:"serializer:json"` Domains domain.List `gorm:"serializer:json"` KeepRoute bool NetID NetID Description string Peer string PeerGroups []string `gorm:"serializer:json"` NetworkType NetworkType Masquerade bool Metric int Enabled bool Groups []string `gorm:"serializer:json"` AccessControlGroups []string `gorm:"serializer:json"` }
Route represents a route
func (*Route) EventMeta ¶ added in v0.13.0
EventMeta returns activity event meta related to the route
func (*Route) GetHAUniqueID ¶ added in v0.28.0
func (r *Route) GetHAUniqueID() HAUniqueID
Click to show internal directories.
Click to hide internal directories.