RoutingConfig

The RoutingConfig resource defines tenant-specific routing intent, including BGP neighbors and VXLAN or VRF attachment.

Mutual exclusivity rules:

  • One of vxlanRef or vrf is required.

  • vxlanRef and vrf are mutually exclusive — specify only one.

spec

Field

Type

Required

Description

templateRef

object

Yes

Reference to the RoutingTemplate used to render the tenant configuration.

vxlanRef

string

Conditional

Soft reference to a VXLAN CR by name. Use for VXLAN/EVPN overlay scenarios. The VRF configuration is read from the referenced VXLAN CR. Mutually exclusive with vrf.

vrf

string

Conditional

VRF name for direct VRF assignment without VXLAN. Use for north–south BGP with tenant VRF scenarios where VXLAN/EVPN overlays are not required. Mutually exclusive with vxlanRef.

neighbors

array

Optional

List of tenant-specific BGP neighbor definitions. Defaults to [].

neighborSecrets

array

Optional

List of BGP neighbor authentication secrets. Defaults to [].

irbInterfaces

array

Optional

List of Integrated Routing and Bridging (IRB) interfaces for this tenant.

spec.templateRef

Field

Type

Required

Description

name

string

Yes

The metadata.name of the RoutingTemplate CR. Minimum length is 1.

spec.neighbors[]

Each neighbor must specify either ip or interface, but not both.

Field

Type

Required

Constraints

Description

ip

string

Conditional

Must be a valid IPv4 or IPv6 address.

The IP address of the BGP neighbor.

interface

string

Conditional

Minimum length is 1.

The interface name of the BGP neighbor.

remoteAs

integer (int64)

Yes

Minimum length is 1 and maximum length is 4294967295

The remote ASN of the BGP neighbor.

families

array of strings

Optional

—

The address families to enable for this neighbor.

Note

ip and interface are not mutually exclusive. You can define either one or both for a single neighbor.

spec.neighborSecrets[]

Field

Type

Required

Description

address

string

Yes

The address of the BGP neighbor to authenticate.

secretRef

object

Yes

Reference to the Kubernetes Secret containing the authentication password.

spec.irbInterfaces[]

Field

Type

Required

Constraints

Description

id

string

Yes

Minimum length is 1

Unique identifier for the IRB interface.

ipv4Address

string

Conditional

Must be a valid IPv4 address. Required if ipv4Prefix is set; must be omitted if ipv4Prefix is omitted.

IPv4 address for the IRB interface.

ipv4Prefix

integer (int64)

Conditional

Minimum value is 1, Maximum value is 32. Required if ipv4Address is set; must be omitted if ipv4Address is omitted.

Prefix length for the IPv4 IRB address.

ipv6Addresses

array

Optional

—

List of IPv6 addresses for the IRB interface. IPv6 supports multiple addresses per interface (RFC 4291).

Note

ipv4Address and ipv4Prefix must both be specified or both be omitted.

spec.irbInterfaces[].ipv6Addresses[]

Field

Type

Required

Constraints

Description

address

string

Yes

Must be a valid IPv6 address.

IPv6 address for the IRB interface.

prefix

integer

Yes

—

Prefix length for the IPv6 address.