DNS查询是什么样子的?

huangapple go评论89阅读模式
英文:

What does a DNS query look like?

问题

我想用Go语言创建一个简单的DNS服务器。我知道DNS的工作原理,但对于DNS查询的实际样子并不完全确定。

例如,一个HTTP GET请求的样子是这样的:

GET /index.html HTTP/1.1

所以我的问题是,一个DNS查询是不是看起来像这样:

QUERY google.com A

或者DNS服务器是解释被查询的域名的二进制表示形式呢?

英文:

I'd like to make a simple DNS server using Go. I know how DNS works but I'm not 100% sure as to how a DNS query actually looks.

For example, a HTTP GET request looks like this:

GET /index.html HTTP/1.1

So my question is, does a DNS query look something like this:

QUERY google.com A

Or do DNS servers interpret the binary representation the domain name being queried?

答案1

得分: 2

你可以查看miekg/dns项目。它构建了一个由MsgHdr组成的Msg,其中包括QUERY code(以及其他OpCodes)。

在“第15章 DNS消息”中,你可以看到这个消息头。

英文:

You could check out the miekg/dns project.
It builds Msg compose of a MsgHdr which includes the QUERY code (amongst other OpCodes).

That follows the Message Header you can see in "Chapter 15 DNS Messages".

huangapple
  • 本文由 发表于 2015年1月17日 21:21:55
  • 转载请务必保留本文链接:https://go.coder-hub.com/27999870.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定