Skip to main content

Routed Networks

A Routed Network connects your entire Project VPC to specific destinations on an external corporate or datacenter network. Your platform administrator manages the physical connection and BGP; an Organization administrator decides which Projects may use an allocated network.

This is not a second workload interface:

NeedUse
Every workload in a Project should route to approved external prefixesRouted Network
Selected pods or VMs need a NIC directly on a physical segmentDatacenter VLAN
Publish a Service or VM to the InternetService exposure or Floating IP

Three guarantees are always visible in the console:

  • Internet gateway: unchanged. Only the approved destinations use the Routed Network; your existing default route remains in place.
  • BGP is managed by your Organization. You do not provide peers, ASNs, passwords, route maps, or advertisements.
  • These routes are available to this Project only. Attaching another Project does not connect the two Projects.

Who can do what

  • A platform administrator creates the physical routing fabric, approves destination prefixes, and allocates the Routed Network to an Organization.
  • An Organization administrator attaches or detaches the allocation from a Project in that Organization.
  • Project administrators and users can view Project status but cannot attach, change routing policy, or edit generated gateways.

Routed Networks may not appear in your console until the platform enables this feature and assigns an allocation to your Organization.

Attach a Project

Open Organization → Networks → Routed Networks. The page lists allocations for your Organization, their approved destinations, aggregate BGP health, and the Projects currently attached.

Choose a Project and select Attach. Kube-DC then creates two managed routing gateways, establishes BGP, and adds only the approved destination routes to the Project VPC. No pod or VM restart is required because the relationship belongs to the VPC, not to an individual interface.

The equivalent request is:

apiVersion: kube-dc.com/v1
kind: ProjectRouteAttachment
metadata:
name: corporate
namespace: acme-production
spec:
allocationRef: corporate-services
direction: routed-egress

Organization administrator RBAC permits create and delete, but deliberately does not permit get, list, update, or patch across cluster resources. Use the Organization console for filtered discovery and status. If you create a known attachment manifest with an Organization token, admission still verifies the allocation and Project ownership.

View Project status

Open Project → Network → Routed Networks. The Project view shows:

  • connection state and redundancy;
  • the destinations available to this Project;
  • accepted, rejected, and advertised route counts;
  • confirmation that the Internet gateway is unchanged; and
  • confirmation that BGP policy is managed outside the Project.
StateMeaning
ProgrammingGateways or BGP are not ready yet. Approved destinations are not steered.
ReadyBoth managed gateways and their peers are available.
DegradedAt least one healthy path remains, but redundancy is reduced.
FailedOwnership, collision, policy, or programming validation failed. Ask the platform administrator for the condition message.
TerminatingSteering is withdrawn and the managed gateways are draining.

If every gateway or BGP peer fails, approved external destinations fail closed. They do not fall through the Project's Internet route. Ordinary Internet traffic continues through the same gateway and source address it used before.

Traffic behavior

v1 supports routed-egress:

  • a pod or VM may initiate traffic to an approved destination;
  • established reply traffic may return;
  • a new connection initiated from the external network is denied; and
  • the Project cannot relay traffic between external networks or to another Project.

Only the prefixes shown in the allocation are eligible. A peer-advertised default route or an address overlapping any tenant/platform network is rejected. The platform derives the Project prefix it advertises; there is no tenant field for arbitrary exports.

Projects sharing one external routing domain must have non-overlapping VPC CIDRs. If attachment reports a CIDR overlap, create the Project with a distinct CIDR or ask the platform team for a separately isolated external VRF. Attaching the same Routed Network to two Projects still does not permit Project-to-Project traffic.

Detach

From Organization → Networks → Routed Networks, choose the attached Project and select Detach. Kube-DC first withdraws steering, then drains and removes the gateways. The approved destinations remain fail closed until teardown is complete.

Detaching does not remove the allocation from your Organization. You can attach it to another eligible Project afterwards, subject to its sharing policy.

Do not try to delete the controller-owned ProjectRoutingGateway, Deployment, Subnet, NAD, ConfigMap, Secret, or VPC routes. Admission blocks those mutations because they could expose another tenant or bypass fail-closed teardown.

Troubleshooting

What you seeWhat to do
No Routed Networks page or no allocationsAsk whether the feature is enabled and an allocation is assigned to your Organization.
Attach is deniedConfirm you are an Organization administrator and selected a Project in the same Organization.
CIDR overlap errorUse a non-overlapping Project CIDR or request an externally isolated VRF.
Programming for several minutesContact the platform administrator; they can inspect the provider VLAN and BGP peers.
DegradedTraffic should still work through one path. Avoid detaching during an unrelated network incident.
External destination unreachable but Internet worksThe route is intentionally fail closed. Report the network name, Project, destination, and time.
Internet source address changedReport this immediately; Routed Networks are not allowed to replace the Project default route.

Do not include peer addresses or credentials in a support ticket. Organization and Project name, Routed Network handle, destination prefix, status, and timestamp are sufficient for the platform team to correlate alerts and audit events.