我目前正在做一个学校项目,要求我实现一个DNS客户端,而不使用任何库函数。
我已经到了发送DNS请求并接收回复的程度。我在分析答复时遇到麻烦了。我接收到一个char*数组中的回复,我想把它转换成一个有意义的结构,从中我可以解析答案。
我浏览了RFC并阅读了关于包结构的内容,但是在C中实现它会给我带来问题。
有人能给我举个例子吗,用C语言,或者用其他语言来解释。或者任何提及一本书的地方也可以。
其他详细信息:
下面是我正在使用的结构。
struct result{
int type;
struct res_ip_cname ip_cname;
struct res_error error;
struct res_mx_ns mx_ns;
};
struct res_ip_cname{
char* lst;
int sec;
char* auth_flag;
};
struct res_error{
char * info;
};
struct res_mx_ns{
char * name;
unsigned short pref;
int sec;
char* auth_flag;
};
我有一个char*buffer[],其中im存储从服务器接收到的响应。而且,我需要从这个缓冲区中提取信息并填充结构结果。
谢谢,
钱德尔