1
This commit is contained in:
@@ -4758,7 +4758,6 @@ func (s *PostgresStore) vpnEntryEndpointCandidates(ctx context.Context, clusterI
|
||||
}
|
||||
|
||||
func vpnEntryEndpointCandidatesFromHeartbeat(nodeID string, capabilities json.RawMessage, metadata json.RawMessage) []map[string]any {
|
||||
localGatewayShortcut := heartbeatCapabilityEnabled(capabilities, "vpn_local_gateway_shortcut")
|
||||
var payload struct {
|
||||
MeshEndpointReport struct {
|
||||
PeerEndpoint string `json:"peer_endpoint"`
|
||||
@@ -4823,9 +4822,6 @@ func vpnEntryEndpointCandidatesFromHeartbeat(nodeID string, capabilities json.Ra
|
||||
if apiBaseURL := vpnEntryAPIBaseURL(address); apiBaseURL != "" {
|
||||
item["api_base_url"] = apiBaseURL
|
||||
}
|
||||
if localGatewayShortcut {
|
||||
item["local_gateway_shortcut"] = true
|
||||
}
|
||||
out = append(out, item)
|
||||
}
|
||||
if len(out) == 0 {
|
||||
@@ -4847,9 +4843,6 @@ func vpnEntryEndpointCandidatesFromHeartbeat(nodeID string, capabilities json.Ra
|
||||
if apiBaseURL := vpnEntryAPIBaseURL(address); apiBaseURL != "" {
|
||||
item["api_base_url"] = apiBaseURL
|
||||
}
|
||||
if localGatewayShortcut {
|
||||
item["local_gateway_shortcut"] = true
|
||||
}
|
||||
out = append(out, item)
|
||||
}
|
||||
}
|
||||
@@ -5129,10 +5122,15 @@ func enrichVPNClientFabricRoute(item VPNClientConnection, preferredEntryNodeID,
|
||||
cfg["vpn_fabric_route"] = map[string]any{
|
||||
"schema_version": "rap.vpn_fabric_route.v1",
|
||||
"status": status,
|
||||
"preferred_data_plane": "fabric_mesh",
|
||||
"fallback_data_plane": "backend_relay",
|
||||
"backend_relay_fallback": true,
|
||||
"selection_mode": "entry_to_fastest_exit",
|
||||
"preferred_data_plane": "fabric_service_channel",
|
||||
"fallback_data_plane": "none",
|
||||
"backend_relay_fallback": false,
|
||||
"selection_mode": "farm_authoritative_entry_to_exit",
|
||||
"route_authority": "fabric_farm",
|
||||
"vpn_builds_routes": false,
|
||||
"vpn_builds_tunnels": false,
|
||||
"farm_builds_routes": true,
|
||||
"farm_builds_tunnels": true,
|
||||
"entry_pool_node_ids": entryPool,
|
||||
"exit_pool_node_ids": exitPool,
|
||||
"selected_entry_node_id": selectedEntry,
|
||||
@@ -5147,20 +5145,28 @@ func enrichVPNClientFabricRoute(item VPNClientConnection, preferredEntryNodeID,
|
||||
"tunnel_type": "universal_ip_packet",
|
||||
"application_protocol_agnostic": true,
|
||||
"packet_forwarding_channel": "vpn_packet",
|
||||
"control_plane_packet_relay_mode": "lab_fallback_only",
|
||||
"control_plane_packet_relay_mode": "fabric_service_channel_only",
|
||||
"route_authority": "fabric_farm",
|
||||
"backend_relay_allowed": false,
|
||||
"requires_fabric_service_channel": true,
|
||||
"vpn_builds_routes": false,
|
||||
"vpn_builds_tunnels": false,
|
||||
"farm_builds_routes": true,
|
||||
"farm_builds_tunnels": true,
|
||||
"traffic_contract": map[string]any{
|
||||
"all_ip_traffic": true,
|
||||
"protocol_specific_routing": false,
|
||||
"diagnostics_only_protocol_summaries": true,
|
||||
},
|
||||
"route_selection": map[string]any{
|
||||
"mode": "lowest_latency_healthy_route",
|
||||
"mode": "farm_authoritative_lowest_latency_healthy_route",
|
||||
"selected_entry_node_id": selectedEntry,
|
||||
"selected_exit_node_id": selectedExit,
|
||||
"route_candidates": routeCandidates,
|
||||
},
|
||||
"failover": map[string]any{
|
||||
"enabled": true,
|
||||
"owner": "fabric_farm",
|
||||
"client_topology_hidden": true,
|
||||
"preserve_vpn_connection_id": true,
|
||||
"alternate_route_count": alternateVPNRouteCount(routeCandidates, selectedEntry, selectedExit),
|
||||
@@ -5178,8 +5184,8 @@ func enrichVPNClientFabricRoute(item VPNClientConnection, preferredEntryNodeID,
|
||||
"drop_policy": "drop_only_when_all_routes_unavailable_or_queue_full",
|
||||
"bulk_and_realtime": "same_packet_path",
|
||||
"flow_isolation": "hash_by_ip_protocol_and_ports",
|
||||
"target_dataplane": "entry_node_to_exit_node_fabric",
|
||||
"temporary_fallback": "backend_http_packet_relay",
|
||||
"target_dataplane": "fabric_farm_entry_to_exit_service_channel",
|
||||
"temporary_fallback": "none",
|
||||
},
|
||||
}
|
||||
out, err := json.Marshal(cfg)
|
||||
|
||||
Reference in New Issue
Block a user