descriptor

package
v0.0.0-...-ae01f8c Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// NAT64AddressPoolDescriptorName is the name of the descriptor for NAT64 IP address pools.
	NAT64AddressPoolDescriptorName = "vpp-nat64-address-pool"
)
View Source
const (
	// NAT64IPv6PrefixDescriptorName is the name of the descriptor for configuring NAT64 IPv6 prefix.
	NAT64IPv6PrefixDescriptorName = "vpp-nat64-ipv6-prefix"
)
View Source
const (
	// NAT64InterfaceDescriptorName is the name of the descriptor for enabling/disabling NAT64 for VPP interfaces.
	NAT64InterfaceDescriptorName = "vpp-nat64-interface"
)
View Source
const (
	// NAT64StaticBIBDescriptorName is the name of the descriptor for configuring NAT64 Static BIBs.
	NAT64StaticBIBDescriptorName = "vpp-nat64-static-BIB"
)

Variables

This section is empty.

Functions

func NewNAT64AddressPoolDescriptor

func NewNAT64AddressPoolDescriptor(natHandler vppcalls.Nat64VppAPI, log logging.PluginLogger) *kvs.KVDescriptor

NewNAT64AddressPoolDescriptor creates a new instance of the NAT64AddressPoolDescriptor.

func NewNAT64IPv6PrefixDescriptor

func NewNAT64IPv6PrefixDescriptor(natHandler vppcalls.Nat64VppAPI, log logging.PluginLogger) *kvs.KVDescriptor

NewNAT64IPv6PrefixDescriptor creates a new instance of the NAT64IPv6Prefix descriptor.

func NewNAT64InterfaceDescriptor

func NewNAT64InterfaceDescriptor(natHandler vppcalls.Nat64VppAPI, log logging.PluginLogger) *kvs.KVDescriptor

NewNAT64InterfaceDescriptor creates a new instance of the NAT64Interface descriptor.

func NewNAT64StaticBIBDescriptor

func NewNAT64StaticBIBDescriptor(natHandler vppcalls.Nat64VppAPI, log logging.PluginLogger) *kvs.KVDescriptor

NewNAT64StaticBIBDescriptor creates a new instance of the NAT64StaticBIB descriptor.

Types

type NAT64AddressPoolDescriptor

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

NAT64AddressPoolDescriptor teaches KVScheduler how to add/remove VPP NAT64 IP address pools.

func (*NAT64AddressPoolDescriptor) Create

func (d *NAT64AddressPoolDescriptor) Create(key string, pool *nat64.Nat64AddressPool) (metadata interface{}, err error)

Create adds IP address pool into VPP NAT64 address pools.

func (*NAT64AddressPoolDescriptor) Delete

func (d *NAT64AddressPoolDescriptor) Delete(key string, pool *nat64.Nat64AddressPool, metadata interface{}) error

Delete removes IP address pool from VPP NAT64 address pools.

func (*NAT64AddressPoolDescriptor) Dependencies

func (d *NAT64AddressPoolDescriptor) Dependencies(key string, pool *nat64.Nat64AddressPool) []kvs.Dependency

Dependencies lists non-zero and non-all-ones (IPv4) VRF as the only dependency.

func (*NAT64AddressPoolDescriptor) EquivalentAddressPools

func (d *NAT64AddressPoolDescriptor) EquivalentAddressPools(key string, oldPool, newPool *nat64.Nat64AddressPool) bool

EquivalentAddressPools compares two address pools for equivalency.

func (*NAT64AddressPoolDescriptor) Retrieve

Retrieve returns NAT64 IP address pools configured on VPP.

func (*NAT64AddressPoolDescriptor) Validate

Validate validates configuration for NAT64 IP addresses pool.

type NAT64IPv6PrefixDescriptor

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

NAT64IPv6PrefixDescriptor teaches KVScheduler how to configure NAT64 IPv6 Prefix.

func (*NAT64IPv6PrefixDescriptor) Create

func (d *NAT64IPv6PrefixDescriptor) Create(key string, prefix *nat64.Nat64IPv6Prefix) (metadata interface{}, err error)

Create configures NAT64 IPv6 prefix for a given VRF.

func (*NAT64IPv6PrefixDescriptor) Delete

func (d *NAT64IPv6PrefixDescriptor) Delete(key string, prefix *nat64.Nat64IPv6Prefix, metadata interface{}) (err error)

Delete removes NAT64 IPv6 prefix from a given VRF.

func (*NAT64IPv6PrefixDescriptor) Dependencies

func (d *NAT64IPv6PrefixDescriptor) Dependencies(key string, prefix *nat64.Nat64IPv6Prefix) (deps []kvs.Dependency)

Dependencies lists the VRF (for both IP versions) as the only dependency.

func (*NAT64IPv6PrefixDescriptor) Retrieve

Retrieve returns the currently configured NAT64 IPv6 prefixes.

func (*NAT64IPv6PrefixDescriptor) Validate

func (d *NAT64IPv6PrefixDescriptor) Validate(key string, prefix *nat64.Nat64IPv6Prefix) error

Validate validates NAT64 IPv6 prefix.

type NAT64InterfaceDescriptor

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

NAT64InterfaceDescriptor teaches KVScheduler how to enable NAT64 for VPP interfaces.

func (*NAT64InterfaceDescriptor) Create

func (d *NAT64InterfaceDescriptor) Create(key string, natIface *nat64.Nat64Interface) (metadata interface{}, err error)

Create enables NAT64 on an interface.

func (*NAT64InterfaceDescriptor) Delete

func (d *NAT64InterfaceDescriptor) Delete(key string, natIface *nat64.Nat64Interface, metadata interface{}) (err error)

Delete disables NAT64 on an interface.

func (*NAT64InterfaceDescriptor) Dependencies

func (d *NAT64InterfaceDescriptor) Dependencies(key string, natIface *nat64.Nat64Interface) []kvs.Dependency

Dependencies lists the interface as the only dependency.

func (*NAT64InterfaceDescriptor) Retrieve

Retrieve returns the current NAT64 interface configuration.

type NAT64StaticBIBDescriptor

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

NAT64StaticBIBDescriptor teaches KVScheduler how to configure NAT64 static bindings.

func (*NAT64StaticBIBDescriptor) Create

func (d *NAT64StaticBIBDescriptor) Create(key string, bib *nat64.Nat64StaticBIB) (metadata interface{}, err error)

Create adds new NAT44 static binding.

func (*NAT64StaticBIBDescriptor) Delete

func (d *NAT64StaticBIBDescriptor) Delete(key string, bib *nat64.Nat64StaticBIB, metadata interface{}) (err error)

Delete removes existing NAT44 static binding.

func (*NAT64StaticBIBDescriptor) Dependencies

func (d *NAT64StaticBIBDescriptor) Dependencies(key string, bib *nat64.Nat64StaticBIB) (deps []kvs.Dependency)

Dependencies lists the VRF (for both IP versions) as the only dependency.

func (*NAT64StaticBIBDescriptor) Retrieve

Retrieve returns the currently configured static NAT64 bindings.

func (*NAT64StaticBIBDescriptor) Validate

func (d *NAT64StaticBIBDescriptor) Validate(key string, bib *nat64.Nat64StaticBIB) error

Validate validates NAT64 BIB configuration.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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