You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// LocalSubnet defines the list of local subnet CIDR blocks
39
-
// +kubebuilder:validation:MinItems=1
40
-
LocalSubnet []string`json:"localSubnet"`
41
-
// RemoteSubnet defines the list of remote subnet CIDR blocks
42
-
// +kubebuilder:validation:MinItems=1
43
-
RemoteSubnet []string`json:"remoteSubnet"`
37
+
Gateways []Gateway`json:"gateways"`
44
38
// VlanID specifies the VLAN identifier (1-4094)
45
39
// +kubebuilder:validation:Minimum=1
46
40
// +kubebuilder:validation:Maximum=4094
@@ -65,9 +59,23 @@ type IPMapping struct {
65
59
Interfacestring`json:"interfaceName"`
66
60
}
67
61
62
+
typeRoutestruct {
63
+
// Destination specifies the target subnet for the route, in CIDR format. For example: "10.0.0.0/24", you can omit the subnet mask, in that case '/32' will be chosen. 10.0.0.0 -> 10.0.0.0/32
// Via specifies the next-hop IP address for the route. If omitted, the route is assumed to be directly connected.
67
+
// +optional
68
+
Via*string`json:"via"`
69
+
// Source determines how the source IP is selected for this route. Allowed values: "self": use an IP assigned from the current VLAN pool, "none": no source IP (use default behavior)
70
+
// +kubebuilder:validation:Enum=self;none
71
+
Sourcestring`json:"src"`
72
+
}
73
+
68
74
typeVlanNetworkPoolstruct {
69
75
// Description provides a human-readable description of the IP pool
70
-
Descriptionstring`json:"description"`
76
+
// +optional
77
+
Descriptionstring`json:"description"`
78
+
Routes []Route`json:"routes"`
71
79
// Addresses contains the list of IP addresses or CIDR blocks in this pool
0 commit comments