Versions in this module Expand all Collapse all v0 v0.0.1 Jan 1, 2026 Changes in this version + type Connector interface + HitByIp func(ip, vrf string) bool + HitByNetwork func(net network.AbbrNet, vrf string) bool + ID func() string + SelectNodeByIP func(ip, vrf string) (Node, Port, error) + SelectPortsByNetwork func(net network.AbbrNet, vrf string) []Port + type NextHopInfo struct + Connected bool + Interface string + NextHopIP string + Weight int + func NewNextHopInfo(interfaceName, nextHopIP string, connected bool) *NextHopInfo + type Node interface + GetPort func(portID string) (Port, error) + GetPortByName func(name string) (Port, error) + GetRouteTable func(vrf string, ipFamily network.IPFamily) (*RouteTable, error) + ID func() string + ListPorts func() []Port + Name func() string + QueryRoute func(dst network.NetworkList, inPort, vrf string, ipFamily network.IPFamily) (*RouteResult, error) + SetRouteTable func(vrf string, ipFamily network.IPFamily, table *RouteTable) error + Type func() NodeType + type NodeType string + const NodeTypeFirewall + const NodeTypeLB + const NodeTypeRouter + const NodeTypeSwitch + type PathHop struct + HopIndex int + InPort string + IsConnected bool + IsECMP bool + NextHopIP string + Node string + OutPort string + VRF string + type PathResult struct + EndTime time.Time + Error error + Hops []*PathHop + IsECMP bool + Metadata map[string]interface{} + PathID string + StartTime time.Time + Success bool + TotalHops int + func NewPathResult(pathID string) *PathResult + func (pr *PathResult) AddHop(hop *PathHop) + func (pr *PathResult) Complete(success bool, err error) + func (pr *PathResult) PathString() string + type Port interface + ConnectorID func() string + ID func() string + IPAddresses func(ipFamily network.IPFamily) []string + Name func() string + Node func() Node + VRF func() string + type RouteEntry struct + Connected bool + DefaultGw bool + Network *network.IPNet + NextHops []*NextHopInfo + VRF string + type RouteMatchResult struct + Match *tools.Table + Unmatch *tools.Table + type RouteResult struct + IsConnected bool + IsECMP bool + Matched bool + NextHops []*NextHopInfo + OutPorts []string + Routes []*RouteEntry + type RouteTable struct + IPFamily network.IPFamily + VRF string + func NewRouteTable(vrf string, ipFamily network.IPFamily) *RouteTable + func NewRouteTableFromAddressTable(vrf string, ipFamily network.IPFamily, table *network.AddressTable) *RouteTable + func (rt *RouteTable) AddRoute(net *network.IPNet, nextHop *network.NextHop) error + func (rt *RouteTable) GetAddressTable() *network.AddressTable + func (rt *RouteTable) GetDefaultGateway() *network.NextHop + func (rt *RouteTable) QueryRoute(dst network.NetworkList) (*RouteMatchResult, error)