0
点赞
收藏
分享

微信扫一扫

力扣sql中等篇练习(十二)

1. 目标

  • 本文要实现一个DNS的客户端解析器(DNS resolver),意即通过直接与DNS服务器通讯,将一个域名转换成其所对应的IP地址;
  • 对DNS客户端解析器的要求:
    1. 命令行接受用户输入的域名
    2. 向DNS服务器发出查询请求,并将查询结果显示在屏幕上
    3. 仅查询域名的A记录(QTYPE=HOST,QCLASS=IN),后面会讨论相关细节
    4. 如果查询结果有多条记录,要求显示所有查询结果
    5. 如果查询的域名为别名(Alias),要求显示其实际域名(Canonical Name)
    6. 仅查询IPv4地址。
  • 在C语言编程中,当需要将一个域名转换成IP地址时,通常是使用getaddrbyname()或者getaddrinfo()函数,这两个函数会使用系统设定的DNS服务器,本文实现的DNS客户端将使用自己定义的DNS服务器;
  • 一个DNS的客户端无非就是按照一定的格式向DNS服务器发送一个报文,然后接收来自DNS服务器的响应,并解析收到的信息,从而获得结果。

举报

相关推荐

0 条评论