feat(core-api): add DNS lookup service for network troubleshooting
Add comprehensive DNS lookup service using dnspython for domain resolution
and DNS record queries.
Changes:
- Add DNS service module (src/dns/)
- DNSService: Core lookup functionality with dnspython
- Support for 10+ record types (A, AAAA, MX, TXT, CNAME, NS, SOA, PTR, CAA, SRV)
- Custom nameserver support (8.8.8.8, 1.1.1.1, etc.)
- Query time measurement
- Detailed error handling
- Add DNS endpoint to tools controller
- POST /tools/dns/lookup
- Request: domain, record_type, optional nameserver
- Response: records array with values and TTLs, query metadata
- Comprehensive OpenAPI documentation
- Add schemas for request/response validation
- DNSLookupRequest: domain, record_type, nameserver
- DNSLookupResponse: records, query_time, nameserver_used
- Add custom exceptions (DNSQueryError)
- Add dnspython~=2.7.0 to requirements
Supported Record Types:
- A: IPv4 addresses
- AAAA: IPv6 addresses
- MX: Mail servers
- TXT: Text records (SPF, DKIM, DMARC)
- CNAME: Canonical names
- NS: Nameservers
- SOA: Start of authority
- PTR: Reverse DNS
- CAA: Certificate authority
- SRV: Service records
Use Cases:
- Troubleshoot domain configuration
- Verify DNS propagation
- Check mail server settings
- Validate SSL certificate authority
- Reverse DNS lookups
- Custom nameserver testing
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>