我目前正在开展一个学校项目,要求我实现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;
};
Run Code Online (Sandbox Code Playgroud)
我有一个char*buffer [],其中我存储了我从服务器收到的响应.并且,我需要从此缓冲区中提取信息并填充结构结果.
谢谢,Chander