Documentation ¶
Index ¶
- Constants
- func AddressCount(network *net.IPNet) float64
- func BigInt2Ip(ipInt *big.Int) string
- func CIDRConflict(a, b string) bool
- func CIDRContainIP(cidrStr, ipStr string) bool
- func CheckProtocol(address string) string
- func ContainsString(slice []string, s string) bool
- func DiffStringSlice(slice1, slice2 []string) []string
- func FirstSubnetIP(subnet string) (string, error)
- func GenerateMac() string
- func GenerateRandomV4IP(cidr string) string
- func Ip2BigInt(ipStr string) *big.Int
- func IsNetworkVlan(networkType string, vlanID string, vlanRange string) bool
- func IsProviderVlan(networkType, provider string) bool
- func IsStringIn(str string, slice []string) bool
- func IsStringsOverlap(a, b []string) bool
- func LastIP(subnet string) (string, error)
- func ParsePodNetworkAnnotation(podNetworks, defaultNamespace string) ([]*types.NetworkSelectionElement, error)
- func RemoveString(slice []string, s string) (result []string)
- func SubnetBroadCast(subnet string) string
- func SubnetNumber(subnet string) string
- func UniqString(a []string) []string
- func ValidatePodNetwork(annotations map[string]string) error
- func ValidateSubnet(subnet kubeovnv1.Subnet) error
- func ValidateVlan(vlan int, vlanRange string) error
- type IPTableRule
Constants ¶
View Source
const ( ControllerName = "kube-ovn-controller" AllocatedAnnotation = "ovn.kubernetes.io/allocated" RoutedAnnotation = "ovn.kubernetes.io/routed" MacAddressAnnotation = "ovn.kubernetes.io/mac_address" IpAddressAnnotation = "ovn.kubernetes.io/ip_address" CidrAnnotation = "ovn.kubernetes.io/cidr" GatewayAnnotation = "ovn.kubernetes.io/gateway" IpPoolAnnotation = "ovn.kubernetes.io/ip_pool" BgpAnnotation = "ovn.kubernetes.io/bgp" SnatAnnotation = "ovn.kubernetes.io/snat" EipAnnotation = "ovn.kubernetes.io/eip" PortSecurityAnnotation = "ovn.kubernetes.io/port_security" NorthGatewayAnnotation = "ovn.kubernetes.io/north_gateway" AllocatedAnnotationTemplate = "%s.kubernetes.io/allocated" MacAddressAnnotationTemplate = "%s.kubernetes.io/mac_address" IpAddressAnnotationTemplate = "%s.kubernetes.io/ip_address" CidrAnnotationTemplate = "%s.kubernetes.io/cidr" GatewayAnnotationTemplate = "%s.kubernetes.io/gateway" IpPoolAnnotationTemplate = "%s.kubernetes.io/ip_pool" LogicalSwitchAnnotationTemplate = "%s.kubernetes.io/logical_switch" ExcludeIpsAnnotation = "ovn.kubernetes.io/exclude_ips" IngressRateAnnotation = "ovn.kubernetes.io/ingress_rate" EgressRateAnnotation = "ovn.kubernetes.io/egress_rate" PortNameAnnotation = "ovn.kubernetes.io/port_name" LogicalSwitchAnnotation = "ovn.kubernetes.io/logical_switch" SubnetNameLabel = "ovn.kubernetes.io/subnet" ICGatewayLabel = "ovn.kubernetes.io/ic-gw" ExGatewayLabel = "ovn.kubernetes.io/external-gw" ProtocolTCP = "tcp" ProtocolUDP = "udp" VlanIdAnnotation = "ovn.kubernetes.io/vlan_id" VlanRangeAnnotation = "ovn.kubernetes.io/vlan_range" NetworkType = "ovn.kubernetes.io/network_types" NetworkTypeVlan = "vlan" ProviderInterfaceName = "ovn.kubernetes.io/provider_interface_name" HostInterfaceName = "ovn.kubernetes.io/host_interface_name" NodeNic = "ovn0" NodeAllowPriority = "3000" IngressExceptDropPriority = "2002" IngressAllowPriority = "2001" IngressDefaultDrop = "2000" EgressExceptDropPriority = "2002" EgressAllowPriority = "2001" EgressDefaultDrop = "2000" SubnetAllowPriority = "1001" DefaultDropPriority = "1000" GeneveHeaderLength = 100 TcpIpHeaderLength = 40 OvnProvider = "ovn" AttachmentNetworkAnnotation = "k8s.v1.cni.cncf.io/networks" SRIOVResourceName = "mellanox.com/cx5_sriov_switchdev" InterconnectionConfig = "ovn-ic-config" ExternalGatewayConfig = "ovn-external-gw-config" InterconnectionSwitch = "ts" ExternalGatewaySwitch = "ovn-external" )
Variables ¶
This section is empty.
Functions ¶
func AddressCount ¶ added in v0.7.0
func CIDRConflict ¶ added in v0.6.0
func CIDRContainIP ¶ added in v1.1.0
func CheckProtocol ¶ added in v0.6.0
func ContainsString ¶ added in v0.9.1
Helper functions to check and remove string from a slice of strings.
func DiffStringSlice ¶ added in v0.5.0
func FirstSubnetIP ¶ added in v0.5.0
func GenerateRandomV4IP ¶ added in v1.4.0
func IsNetworkVlan ¶ added in v1.2.0
func IsProviderVlan ¶ added in v1.2.0
func IsStringIn ¶ added in v0.9.0
func IsStringsOverlap ¶ added in v0.6.0
IsStringsOverlap check if two string slices are overlapped
func ParsePodNetworkAnnotation ¶ added in v1.1.0
func ParsePodNetworkAnnotation(podNetworks, defaultNamespace string) ([]*types.NetworkSelectionElement, error)
func RemoveString ¶ added in v0.9.1
func SubnetBroadCast ¶ added in v1.3.0
func SubnetNumber ¶ added in v1.3.0
func UniqString ¶ added in v0.6.0
UniqString creates an array of string with unique values.
func ValidatePodNetwork ¶ added in v0.4.0
func ValidateSubnet ¶ added in v0.6.0
func ValidateVlan ¶ added in v1.2.0
Types ¶
type IPTableRule ¶
IPTableRule wraps iptables rule
Click to show internal directories.
Click to hide internal directories.