我有这个家庭工作,其中我必须使DNS客户端,这是连接到一个DNS服务器与一个套接字。DNS服务器已经建立,所以我的工作是创建DNS client.The客户端应该发送一个域名到服务器,服务器应该响应与该域名等效的IP地址。因此,我想知道在编写DNS客户端代码时将使用的基本步骤。
另外,在互联网上,我发现了一个叫做"DNS查询程序“的程序。什么是DNS查询程序?我已经在下面附上了一个链接,它将引导您到该查询程序。这个程序对我制作DNS客户端有用吗?http://www.binarytides.com/dns-query-code-in-c-with-linux-sockets/
提前谢谢。
发布于 2014-11-02 02:22:05
根据您所描述的,您所要做的似乎就是编写普通的tcp (或udp)客户端,并使用它将特定的消息发送到服务器并读取该消息。要做到这一点,您必须开始阅读一些linux网络教程,我建议您阅读W. Richard Stevens的"UNIX网络编程“。简而言之,您必须填写struct sockaddr_in,调用socket()、connect()和write/read close()。下面是一个示例,带有大写字母的函数只是相应的小写标准例程的包装器。
int main(int argc, char** argv) {
int sockfd;
struct sockaddr_in servaddr;
if ( argc != 2)
err_quit("usage: tcpcli <IPaddress>");
sockfd = Socket(AF_INET, SOCK_STREAM, 0);
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons( SERV_PORT);
Inet_pton(AF_INET, argv[1], &servaddr.sin_addr);
Connect(sockfd, (SA *) &servaddr, sizeof(servaddr));
str_cli( stdin, sockfd); /* do it all: write/read from socket */
close( sockfd);
exit(0);
}https://stackoverflow.com/questions/26691393
复制相似问题