dns-debug

Diagnose DNS resolution failures by querying Blocky logs and editing allowlist configuration.

12|Updated Jun 22, 2025
One-click install
npx skills add https://github.com/rcdailey/home-ops --skill dns-debug-rcdailey
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dns-debug
Source: https://github.com/rcdailey/home-ops/tree/main/.opencode/skills/dns-debug
Command: npx skills add https://github.com/rcdailey/home-ops --skill dns-debug-rcdailey

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill helps you quickly determine whether Blocky DNS is blocking a domain when a website or app is reported as broken, so you can resolve the failure without guessing.

Core Features & Use Cases

  • Query Blocky DNS logs from CNPG: Uses Blocky query log entries stored in PostgreSQL to see what was requested and what response type occurred.
  • Identify blocked domains by client: Finds blocked queries for a specific device/client (IP, partial name, CIDR, or VLAN) and highlights the matching reason group.
  • Guide safe configuration remediation: Recommends the correct allowlist/denylist configuration changes in the Blocky config and how to verify the result after Flux reconciliation.

Quick Start

Run the dns debugging workflow for a reported failure by searching the domain for the affected client, inspecting blocked queries and reasons, then applying an allowlist change in the Blocky config and re-checking logs for resolution within minutes.

Frequently Asked Questions about dns-debug

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I tell if Blocky DNS is blocking a specific domain for a client?

To diagnose DNS blocking, search Blocky query logs stored in your PostgreSQL database to identify blocked domains for a specific client IP or VLAN and highlight the matching reason group.

What's the best way to check Blocky query logs in Kubernetes for blocked websites?

Checking Blocky query logs in Kubernetes involves querying the CNPG log_entries table to see requested domains and response types, confirming whether a specific client's traffic was blocked.

How do I allowlist a blocked domain in Blocky config after Flux reconciliation?

To allowlist a blocked domain, edit the kubernetes/apps/dns-private/blocky/data/config.yaml file and verify the result after Flux reconciliation completes.

Can I search Blocky DNS logs by client IP or partial name?

Yes, you can search Blocky DNS logs by client using an IP address, partial name, CIDR range, or VLAN to find blocked queries and identify the matching reason group.

Why does my app break when Blocky DNS blocks a required domain?

Your app breaks because Blocky DNS blocks a required domain, causing DNS resolution failures that you can identify by searching Blocky query logs for the affected client.

Do I need PostgreSQL to troubleshoot DNS resolution failures with Blocky?

Yes, troubleshooting DNS resolution failures requires accessing Blocky query log entries stored in a PostgreSQL database to see what was requested and what response type occurred.