DNS 응답의 원시 바이트를 검색하는 방법은 무엇입니까?

DNS 응답의 원시 바이트를 검색하는 방법은 무엇입니까?

디버깅을 위해 DNS 응답의 원시 바이트를 검색하고 싶습니다. 예를 들면 다음과 같습니다.

dig  -t https clickhouse.com

;; ANSWER SECTION:
clickhouse.com.         242     IN      HTTPS   1 . alpn="h3,h3-29,h2" ipv4hint=172.66.40.249,172.66.43.7 ipv6hint=2606:4700:3108::ac42:28f9,2606:4700:3108::ac42:2b07

이러한 답변 부분의 바이트를 어떻게 얻을 수 있습니까? 일반 텍스트로 디코딩하기 전에 이러한 원시 바이트를 표시할 수 있는 기존 도구가 있습니까?

Wireshark를 사용해 보았지만 암호화되어 있고 다른 DNS 서버를 사용해 보았으나 응답이 없습니다(ISP에 의해 차단된 것 같습니다).

고쳐 쓰다:

그래서 저는 수동 접근 방식을 취하고 Go에서 간단한 프로그램을 만들었습니다.

    m := &dns.Msg{
        MsgHdr: dns.MsgHdr{
            Authoritative:     false,
            AuthenticatedData: false,
            CheckingDisabled:  true,
            RecursionDesired:  true,
            Opcode:            dns.OpcodeQuery,
        },
        Question: make([]dns.Question, 1),
    }
    q := &m.Question[0]
    q.Qclass = dns.ClassINET
    q.Qtype = dns.TypeHTTPS
    q.Name = "clickhouse.com."

    // 0 = {uint8} 0

    r, err := dns.Exchange(m, "9.9.9.9:9953")

중단점을 설정 dns.Answer, off, err = unpackRRslice(int(dh.Ancount), msg, off)하고 github.com/miekg/dns/msg.go:840복사하여 msg텍스트 파일에 붙여넣습니다.

답변1

버전 dig(9.11.0 이상) 에 따라 +unknownformat플래그를 전달할 수 있습니다.

+[no]unknownformat
    This option prints all RDATA in unknown RR type presentation format (RFC 3597).
    The default is to print RDATA for known types in the type's presentation format.

예를 들어 쿼리는 다음을 example.com. IN SOA제공합니다 .

$ dig +unknownformat example.com. soa
...
;; ANSWER SECTION:
example.net.        3532    CLASS1  TYPE6   \# 53 026E73056963616E6E036F726700036E6F6303646E73056963616E6E 036F7267007886A9DA00001C2000000E100012750000000E10
...

이 형식(RFC 3597\# <rdata-length> <rdata>...)는 원시 레코드 데이터 라인 형식을 16진수 인코딩 형식으로 렌더링 rdata하고 여러 단어로 분할할 수 있으므로 위의 내용은 다음과 같습니다.

00000000: 026e 7305 6963 616e 6e03 6f72 6700 036e  .ns.icann.org..n
00000010: 6f63 0364 6e73 0569 6361 6e6e 036f 7267  oc.dns.icann.org
00000020: 0078 86a9 da00 001c 2000 000e 1000 1275  .x...... ......u
00000030: 0000 000e 10                             .....

관련 정보