skills/hybrid-cloud-networking/SKILL.md
Use this skill when designing or troubleshooting hybrid cloud networking across on-prem and cloud environments, including secure connectivity, routing, VPN or Direct Connect style links, and traffic diagnostics.
npx skillsauth add chatandbuild/skills-repo Hybrid Cloud NetworkingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Design and troubleshoot reliable connectivity between on-prem and cloud systems with explicit routing, DNS, and security controls.
IPsec VPN vs WireGuard vs dedicated interconnect: IPsec site-to-site VPNs are widely supported, integrate with cloud managed VPN offerings, and support BGP. Use for moderate throughput (typically under 1 Gbps per tunnel) and when cost matters. WireGuard offers simpler config, lower CPU overhead, and often better performance on commodity hardware; use when you control both endpoints and can run your own VPN stack. Dedicated interconnects (AWS Direct Connect, Azure ExpressRoute, GCP Partner Interconnect) provide predictable latency, higher bandwidth, and SLAs; use for production-critical or high-volume traffic.
BGP route exchange: Use BGP to advertise on-prem prefixes to cloud and cloud prefixes to on-prem. Configure route filters to avoid leaking internal routes. Set appropriate MED/local-pref and AS-path prepending for path control. Validate received routes before accepting into your routing table.
Transit gateway hub-and-spoke: Centralize connectivity through a transit gateway or virtual hub. Attach VPCs and on-prem VPNs as spokes. Use route tables to control which spokes can reach each other. Reduces tunnel count and simplifies policy but creates a single point of failureΓÇödesign for HA (multiple tunnels, redundant hubs).
Split-horizon: Resolve internal names (e.g., api.internal) to private IPs from on-prem and cloud; resolve public names to public IPs. Use separate DNS servers or views per context.
Private DNS zones: Host private zones in cloud (Route 53 Private Hosted Zones, Azure Private DNS, Cloud DNS) and associate with VPCs. Use conditional forwarding from on-prem DNS to forward *.internal to cloud resolvers. Ensure resolvers are reachable over the hybrid path.
Conditional forwarding: Configure on-prem DNS to forward specific domains to cloud resolvers over the VPN/interconnect. Avoid forwarding everything; scope to required zones to reduce latency and failure blast radius.
CIDR overlap discovered late: On-prem and cloud ranges (e.g., 10.0.0.0/16) can overlap, breaking routing. Resolve before establishing tunnels. Use NAT, renumbering, or secondary ranges where supported.
Asymmetric routing through NAT gateways: Return traffic may take a different path than ingress, causing drops. Ensure symmetric paths or use stateful NAT/firewall rules that allow return flows.
MTU issues on encrypted tunnels: Encapsulation reduces effective MTU. Fragmentation causes drops and retransmits. Set TCP MSS clamping (e.g., 1400) or reduce interface MTU on tunnel endpoints. Test with large packets.
BGP route leakage: Misconfigured filters can advertise internal routes to the internet or peer networks. Use strict import/export policies and prefix lists.
DNS cache poisoning across boundaries: Stale or poisoned cache in one environment can affect the other. Use DNSSEC where possible; keep TTLs low during changes; validate resolver configuration.
traceroute / mtr: Identify path and hop-by-hop latency. Use mtr for continuous monitoring. Compare from both directions to detect asymmetric paths.
tcpdump: Capture on tunnel interfaces or host interfaces to verify packets. Filter by IP/port: tcpdump -i eth0 host 10.0.0.1 and port 443. Check for fragments and retransmits.
dig: Verify DNS resolution path: dig @resolver-ip api.internal from both on-prem and cloud. Check +trace for delegation issues. Compare results across environments.
Route and BGP checks: ip route, show ip bgp, netstat -rn to confirm expected routes. Validate that advertised prefixes match expectations.
## Topology Summary
- On-prem: <CIDRs, gateways>
- Cloud: <VPCs, CIDRs, transit/hub>
- Connectivity: <IPsec | WireGuard | interconnect>, <tunnel count, BGP?>
## Connectivity Model and Rationale
- Chosen pattern: <hub-spoke | mesh | point-to-point>
- Trade-offs: <throughput, cost, complexity>
## DNS Strategy
- Split-horizon: <internal vs public resolution>
- Private zones: <cloud provider, conditional forwarding>
- Resolver path: <on-prem → cloud, cloud → on-prem>
## Route and Security Decisions
- BGP: <advertised/imported prefixes, filters>
- Firewall/NACL: <allowed ports, direction>
- Rationale: <per decision>
## Pitfalls Addressed
- <pitfall> -> <mitigation>
## Validation Results
- Connectivity: <success/failure, evidence>
- DNS: <resolution test results>
- Path symmetry: <traceroute/mtr findings>
## Troubleshooting Command Reference
- Path: `traceroute`, `mtr`
- Packets: `tcpdump -i <if> host <ip>`
- DNS: `dig @<resolver> <name>`
## Open Risks and Fallback
- <risk> -> <rollback path>
tools
Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).
development
Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.
development
Use this skill when turning messy workout information into clear logs, comparing user-provided sessions, surfacing trends or likely PRs, and suggesting realistic next-session steps.
tools
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.