Documentation ¶
Index ¶
- func AddVIP(vip string) error
- func DeleteVIP(vip string) error
- func GetIndexFromName(name string) (int, error)
- type Bridge
- type FWMarkRoute
- type Interface
- func (intf *Interface) AddLocalPrefix(prefix string) error
- func (intf *Interface) Equals(iface networking.Iface) bool
- func (intf *Interface) GetGatewayPrefixes() []string
- func (intf *Interface) GetIndex() int
- func (intf *Interface) GetInterfaceType() networking.InterfaceType
- func (intf *Interface) GetLocalPrefixes() []string
- func (intf *Interface) GetName() string
- func (intf *Interface) GetNeighborPrefixes() []string
- func (intf *Interface) RemoveLocalPrefix(prefix string) error
- func (intf *Interface) SetGatewayPrefixes(gateways []string)
- func (intf *Interface) SetInterfaceType(ifaceType networking.InterfaceType)
- func (intf *Interface) SetLocalPrefixes(localPrefixes []string)
- func (intf *Interface) SetNeighborPrefixes(neighborPrefixes []string)
- type InterfaceMonitor
- type InterfaceOption
- type KernelUtils
- func (ku *KernelUtils) AddVIP(vip string) error
- func (ku *KernelUtils) DeleteVIP(vip string) error
- func (ku *KernelUtils) GetIndexFromName(name string) (int, error)
- func (ku *KernelUtils) GetInterfaceMonitor(ctx context.Context) networking.InterfaceMonitor
- func (ku *KernelUtils) NewBridge(name string) (networking.Bridge, error)
- func (ku *KernelUtils) NewFWMarkRoute(ip string, fwmark int, tableID int) (networking.FWMarkRoute, error)
- func (ku *KernelUtils) NewInterface(index int) networking.Iface
- func (ku *KernelUtils) NewInterfaceMonitor() (networking.InterfaceMonitor, error)
- func (ku *KernelUtils) NewSourceBasedRoute(tableID int, prefix string) (networking.SourceBasedRoute, error)
- func (ku *KernelUtils) WithInterfaceMonitor(parent context.Context, monitor networking.InterfaceMonitor) context.Context
- type NFSetIP
- type SourceBasedRoute
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetIndexFromName ¶
GetIndexFromName - Get the index of an interface from its name
Types ¶
type Bridge ¶
type Bridge struct { Interface // contains filtered or unexported fields }
func (*Bridge) LinkInterface ¶
func (b *Bridge) LinkInterface(intf networking.Iface) error
LinkInterface set the bridge as master of another interface
func (*Bridge) UnLinkInterface ¶
func (b *Bridge) UnLinkInterface(intf networking.Iface) error
type FWMarkRoute ¶
type FWMarkRoute struct {
// contains filtered or unexported fields
}
FWMarkRoute -
func NewFWMarkRoute ¶
func NewFWMarkRoute(ip string, fwmark int, tableID int) (*FWMarkRoute, error)
NewFWMarkRoute -
func (*FWMarkRoute) Verify ¶
func (fwmr *FWMarkRoute) Verify() bool
type Interface ¶
type Interface struct { LocalIPs []string NeighborIPs []string Gateways []string InterfaceType networking.InterfaceType // contains filtered or unexported fields }
func NewInterface ¶
func NewInterface(index int, options ...InterfaceOption) *Interface
func (*Interface) AddLocalPrefix ¶
func (*Interface) GetGatewayPrefixes ¶
func (*Interface) GetInterfaceType ¶
func (intf *Interface) GetInterfaceType() networking.InterfaceType
func (*Interface) GetLocalPrefixes ¶
func (*Interface) GetNeighborPrefixes ¶
func (*Interface) RemoveLocalPrefix ¶
func (*Interface) SetGatewayPrefixes ¶
func (*Interface) SetInterfaceType ¶
func (intf *Interface) SetInterfaceType(ifaceType networking.InterfaceType)
func (*Interface) SetLocalPrefixes ¶
func (*Interface) SetNeighborPrefixes ¶
type InterfaceMonitor ¶
type InterfaceMonitor struct {
// contains filtered or unexported fields
}
func NewInterfaceMonitor ¶
func NewInterfaceMonitor() (*InterfaceMonitor, error)
NewInterfaceMonitor -
func (*InterfaceMonitor) Subscribe ¶
func (im *InterfaceMonitor) Subscribe(subscriber networking.InterfaceMonitorSubscriber)
Subscribe -
func (*InterfaceMonitor) UnSubscribe ¶
func (im *InterfaceMonitor) UnSubscribe(subscriber networking.InterfaceMonitorSubscriber)
UnSubscribe -
type InterfaceOption ¶
type InterfaceOption func(o *interfaceOptions)
func WithInterfaceName ¶
func WithInterfaceName(name string) InterfaceOption
type KernelUtils ¶
type KernelUtils struct { }
func (*KernelUtils) AddVIP ¶
func (ku *KernelUtils) AddVIP(vip string) error
func (*KernelUtils) DeleteVIP ¶
func (ku *KernelUtils) DeleteVIP(vip string) error
func (*KernelUtils) GetIndexFromName ¶
func (ku *KernelUtils) GetIndexFromName(name string) (int, error)
func (*KernelUtils) GetInterfaceMonitor ¶
func (ku *KernelUtils) GetInterfaceMonitor(ctx context.Context) networking.InterfaceMonitor
GetInterfaceMonitor - Returns InterfaceMonitor from Context
func (*KernelUtils) NewBridge ¶
func (ku *KernelUtils) NewBridge(name string) (networking.Bridge, error)
func (*KernelUtils) NewFWMarkRoute ¶
func (ku *KernelUtils) NewFWMarkRoute(ip string, fwmark int, tableID int) (networking.FWMarkRoute, error)
func (*KernelUtils) NewInterface ¶
func (ku *KernelUtils) NewInterface(index int) networking.Iface
func (*KernelUtils) NewInterfaceMonitor ¶
func (ku *KernelUtils) NewInterfaceMonitor() (networking.InterfaceMonitor, error)
func (*KernelUtils) NewSourceBasedRoute ¶
func (ku *KernelUtils) NewSourceBasedRoute(tableID int, prefix string) (networking.SourceBasedRoute, error)
func (*KernelUtils) WithInterfaceMonitor ¶
func (ku *KernelUtils) WithInterfaceMonitor(parent context.Context, monitor networking.InterfaceMonitor) context.Context
WithInterfaceMonitor - Stores InterfaceMonitor in Context
type NFSetIP ¶
NFSetIP is a wrapper for IP type nftables.Set (either IPv4 or IPv6) Supports update of IPs
type SourceBasedRoute ¶
type SourceBasedRoute struct {
// contains filtered or unexported fields
}
SourceBasedRoute -
func NewSourceBasedRoute ¶
func NewSourceBasedRoute(tableID int, vip string) (*SourceBasedRoute, error)
NewSourceBasedRoute -
func (*SourceBasedRoute) AddNexthop ¶
func (sbr *SourceBasedRoute) AddNexthop(nexthop string) error
AddNexthop -
func (*SourceBasedRoute) Delete ¶
func (sbr *SourceBasedRoute) Delete() error
func (*SourceBasedRoute) RemoveNexthop ¶
func (sbr *SourceBasedRoute) RemoveNexthop(nexthop string) error
RemoveNexthop -
Click to show internal directories.
Click to hide internal directories.