원클릭으로
dns-status
Check the health and latency of configured DNS servers
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Check the health and latency of configured DNS servers
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | dns_status |
| description | Check the health and latency of configured DNS servers |
Check the online/offline status and round-trip latency of all configured DNS servers. Useful for diagnosing connectivity issues or verifying server availability before running domain checks.
Before using this skill, verify that the nawala CLI is installed:
nawala --version
If the command is not found, install it:
go install github.com/H0llyW00dzZ/nawala-checker/cmd/nawala@latest
nawala status --format json
{
"nawala": {
"version": "0.7.1",
"status": [
{"server": "180.131.144.144", "online": true, "latency_ms": 12},
{"server": "180.131.145.145", "online": false, "error": "i/o timeout"}
]
}
}
Each status object contains:
| Field | Type | Description |
|---|---|---|
server | string | DNS server IP address |
online | bool | true if server is responding |
latency_ms | int | Round-trip time in ms (only when online) |
error | string | Error message (only when offline) |
nawala status --format json --config config.json
nawala.status array"online": true are healthy — latency_ms shows response time"online": false have connectivity issues — check error for details[!WARNING] This method is a programmatic interface and requires an advanced AI agent setup with a properly configured Go development environment. Your AI framework must be able to compile and run Go code natively. If unsure, use Method 1 (CLI) instead.
package main
import (
"context"
"fmt"
"time"
"github.com/H0llyW00dzZ/nawala-checker/src/nawala"
)
func main() {
checker := nawala.New()
defer checker.Close()
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()
statuses, err := checker.DNSStatus(ctx)
if err != nil {
// Handle error
return
}
for _, s := range statuses {
if s.Error != nil {
fmt.Printf("%s: OFFLINE (%v)\n", s.Server, s.Error)
continue
}
fmt.Printf("%s: ONLINE (%dms)\n", s.Server, s.LatencyMs)
}
}
type ServerStatus struct {
Server string // DNS server address
Online bool // Whether responding (only valid when Error is nil)
LatencyMs int64 // Round-trip time in ms
Error error // Non-nil if health check failed
}
checker := nawala.New(
nawala.WithServers([]nawala.DNSServer{
{Address: "8.8.8.8", Keyword: "blocked", QueryType: "A"},
{Address: "1.1.1.1", Keyword: "blocked", QueryType: "A"},
}),
)
statuses, _ := checker.DNSStatus(ctx)