{"enrichment":{"faq":[{"a":"Cloudflare VPC Services enables Workers to reach private APIs across cloud providers and on-premise infrastructure using encrypted tunnels. Start by creating a VPC service in the Cloudflare dashboard, then configure a cloudflared tunnel to bridge your private network. In wrangler.toml, bind the VPC service to your Worker using the service ID. Finally, use fetch() with the correct internal URL format\u2014absolute URLs pointing to your private endpoint\u2014to route requests through the encrypted tunnel instead of the public internet.","q":"How do I set up Cloudflare VPC Services to securely route Workers to private APIs?"},{"a":"Cloudflare VPC Services dns_error typically stems from incorrect URL formatting, mismatched service IDs, or firewall rules blocking UDP port 7844 (required for QUIC protocol). Verify that your fetch() call uses an absolute URL matching your VPC service configuration, that the service binding environment variable is correctly declared in wrangler.toml, and that your private network allows outbound traffic on port 7844. Port mismatch errors also occur when the internal service listens on a different port than your VPC binding expects.","q":"What causes dns_error and connection issues with VPC service bindings?"},{"a":"Cloudflare VPC Services relies on cloudflared tunnels to establish encrypted connections. Install cloudflared (version 2025.7.0 or later for full QUIC support), then authenticate and create a tunnel pointing to your private network's gateway. Enable QUIC protocol in your tunnel configuration for optimal performance. The tunnel handles UDP 7844 traffic automatically; ensure your firewall permits this port bidirectionally. Once the tunnel is active, Workers can route requests through it by referencing the VPC service binding.","q":"How do I configure cloudflared tunnels and QUIC protocol for Workers VPC access?"},{"a":"Cloudflare VPC Services requires absolute URLs in fetch() calls\u2014never relative paths. Format your URL as https://your-internal-hostname:port/path, matching exactly what your VPC service binding specifies. The hostname must resolve within your private network, and the port must align with your internal service's listening port. Avoid hardcoding IPs; use hostnames for better maintainability. Requests formatted incorrectly may leak to public endpoints or trigger dns_error, so validate your URL structure against your VPC service configuration.","q":"What are the correct fetch() patterns and URL formatting for internal services?"},{"a":"Cloudflare VPC Services lets Workers access private APIs by combining three components: a cloudflared tunnel bridging your private network, a VPC service binding in your Worker, and correctly formatted fetch() calls. First, deploy a cloudflared tunnel from your private network to Cloudflare. Next, create a VPC service in the dashboard linking to that tunnel. Finally, bind the service in wrangler.toml and call fetch() with the internal service's absolute URL. This routes traffic securely without exposing your private APIs to the public internet.","q":"How do I access private APIs from Cloudflare Workers using VPC services?"},{"a":"Cloudflare VPC Services migration involves updating your wrangler.toml to add VPC service bindings, then refactoring fetch() calls to use internal URLs instead of public endpoints. First, establish a cloudflared tunnel from your on-premise network to Cloudflare. Create a VPC service pointing to that tunnel. Add the binding to wrangler.toml with the service ID. Finally, update your Worker code to replace public API URLs with internal hostnames and ports. Test thoroughly to ensure requests route correctly and no traffic leaks to public endpoints.","q":"How do I migrate existing Workers to use VPC bindings for on-premise networks?"}],"shadow_tags":["private-network-access","tunnel-configuration","internal-api-routing","secure-service-binding","hybrid-infrastructure","network-troubleshooting","protocol-configuration","endpoint-management"],"summary_rewrite":"Configure Workers to reach private APIs across cloud providers and on-premise infrastructure using encrypted tunnels. This skill covers tunnel setup, VPC service creation, wrangler binding configuration, and the critical rules that prevent common errors like dns_error and requests leaking to public endpoints."},"files":[{"bytes":8210,"path":".claude/skills/cloudflare-vpc-services/SKILL.md","sha256":"8f2fc6d0789aae409143caba366d0b1e6b67db899f3334385077358feca1954b","url":"https://skillfed.io/files/nodnarbnitram/claude-code-extensions/cloudflare-vpc-services/eab810c8/SKILL.md"}],"id":"nodnarbnitram/claude-code-extensions/cloudflare-vpc-services","links":{"html":"https://skillfed.io/nodnarbnitram/claude-code-extensions/cloudflare-vpc-services","md":"https://skillfed.io/nodnarbnitram/claude-code-extensions/cloudflare-vpc-services.md","repo":"https://github.com/nodnarbnitram/claude-code-extensions"},"meta":{"agents_supported":["claude-code"],"first_seen":"2026-07-28","forks":6,"language":"Python","last_updated":"2026-04-20","license":"MIT","name":"cloudflare-vpc-services","publisher":"nodnarbnitram","stars":14},"relations":{"similar":[{"id":"Starchild-ai-agent/official-skills/cloudflare-tunnel-publish"},{"id":"dawiddutoit/custom-claude/cloudflare-tunnel-troubleshoot"},{"id":"BagelHole/DevOps-Security-Agent-Skills/cloudflare-zero-trust"},{"id":"NousResearch/hermes-agent/gitnexus-explorer"},{"id":"dawiddutoit/custom-claude/cloudflare-tunnel-setup"},{"id":"joaoh82/rustunnel/rustunnel"},{"id":"kernel/skills/generate-video"},{"id":"dawiddutoit/custom-claude/infrastructure-health-check"},{"id":"Aradotso/hermes-skills/openclaw-voice-call-realtime"},{"id":"jezweb/claude-skills/nemoclaw-setup"}]},"slug":{"owner":"nodnarbnitram","repo":"claude-code-extensions","skill":"cloudflare-vpc-services"},"version":"eab810c8"}
