⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gendnspacket.c

📁 我的本科生毕业设计
💻 C
字号:
#include "genDNSPacket.h"void genDNSPacket(char *addr,char *DNSsendBuff) //url is the DNS server ip or address and here we can delete{	memset(DNSsendBuff,'\0',sizeof(DNSsendBuff));	pDNSHDR pDnsHdr = (pDNSHDR)malloc(sizeof(DNSHDR));	pQUERYHDR pQueryHdr = (pQUERYHDR)malloc(sizeof(QUERYHDR));	pDnsHdr->id = htons(0x0000);	pDnsHdr->flags = htons(0x0100);	pDnsHdr->questNum = htons(0x0001);	pDnsHdr->answerNum = htons(0x0000);	pDnsHdr->authorNum = htons(0x0000);	pDnsHdr->additionNum = htons(0x0000);	memcpy(DNSsendBuff,pDnsHdr,sizeof(DNSHDR));	char *name = (char *)malloc(17 *sizeof(char)); // 3www4xjtu3edu2cn0	char num;	char *url;		int cur = 0;	num = 0x03;	url = "www";	memcpy(name + cur,&num,sizeof(num));	cur += sizeof(num);	memcpy(name+ cur,url,strlen(url));	cur += strlen(url);	num = 0x04;	url = "xjtu";	memcpy(name + cur,&num,sizeof(num));	cur += sizeof(num);	memcpy(name + cur,url,strlen(url));	cur += strlen(url);	num = 0x03;	url = "edu";	memcpy(name + cur,&num,sizeof(num));	cur += sizeof(num);	memcpy(name + cur,url,strlen(url));	cur += strlen(url);	num = 0x02;	url = "cn";	memcpy(name + cur,&num,sizeof(num));	cur += sizeof(num);	memcpy(name + cur,url,strlen(url));	cur += strlen(url);	num = 0x00;	memcpy(name + cur,&num,sizeof(num));	memcpy(DNSsendBuff + sizeof(DNSHDR),name,17);	pQueryHdr->type = htons(0x0001);	pQueryHdr->class = htons(0x0001);	memcpy(DNSsendBuff + sizeof(DNSHDR) + 17,pQueryHdr,sizeof(QUERYHDR));}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -