1、用C语言编写一个域名提取的程序,如何选择抓包工具,域名的正则表达式怎么写?
用libpcap这个工具,很强大。
抓包部分在中文手册中有源代码。我就给你讲讲获取域名吧。
首先http包才有域名,并且是你三次握手后第一个包。
包到手后累加14+20+tcp->doff*4后边的信息中有host:*****的消息
14是MAC头 20是ip头 后边那个 是 tcp头 长度(由于tcp头长度不定,但是有标志位的。)
至于怎么提取你自己写吧
2、如果浏览器里面有域名A那么当我访问域名B的时候让域名A自动跳转的域名C能实现吗
现在域名不能直接设置URL转发了,不过你可到今日的网站申请M1-S型空间。
可通过跳转将您的域名指向到其他网址上。
3、如何只用C语言,通过域名得到IP地址
#
4、接入internet的每台主机都有一个唯一的可识别地址,称为什么?A. URL B. TCP地址 C. IP地址 D. 域名
C、IP地址。
IP地址是唯一的,可识别的地址。而URL、域名都是可以域名解析到多台主机上的,TCP地址不是唯一的。
IP地址被用来给Internet上的电脑一个编号。每台联网的PC上都需要有IP地址,才能正常通信。可以把“个人电脑”比作“一台电话”,那么“IP地址”就相当于“电话号码”,而Internet中的路由器,就相当于电信局的“程控式交换机”。
IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。
(4)c获取url域名扩展资料:
IP地址的分类:
1、A类IP地址
一个A类IP地址是指, 在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话,A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”。
A类IP地址中网络的标识长度为8位,主机标识的长度为24位,A类网络地址数量较少,有126个网络,每个网络可以容纳主机数达1600多万台。
2、B类IP地址
一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码。如果用二进制表示IP地址的话,B类IP地址就由2字节的网络地址和2字节主机地址组成,网络地址的最高位必须是“10”。
B类IP地址中网络的标识长度为16位,主机标识的长度为16位,B类网络地址适用于中等规模的网络,有16384个网络,每个网络所能容纳的计算机数为6万多台。
3、C类IP地址
一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。如果用二进制表示IP地址的话,C类IP地址就由3字节的网络地址和1字节主机地址组成,网络地址的最高位必须是“110”。
C类IP地址中网络的标识长度为24位,主机标识的长度为8位,C类网络地址数量较多,有209万余个网络。适用于小规模的局域网络,每个网络最多只能包含254台计算机。
4、D类IP地址
D类IP地址在历史上被叫做多播地址(multicast address),即组播地址。在以太网中,多播地址命名了一组应该在这个网络中应用接收到一个分组的站点。多播地址的最高位必须是“1110”,范围从224.0.0.0到239.255.255.255。
5、用C语言编写一个得到域名的IP的程序,得到的IP放入指定的变量中
我可以得出IP,但是不能把IP赋给变量,本人菜鸟一只,学C不到两个月,所以只能做到这了,代码给楼主
#include<stdio.h>
#include<stdlib.h>
void main()
{
char str[50],str1[40];
printf("请输入域名:");
gets(str1);
sprintf(str,"ping %s",str1);
system(str);
}
满意就给分,不满意就不用了
6、域名a,b,c跳转到域名F
302跳转啊 如果你的服务器是nginx
if ($host ~ '^a.com{如果是apache
.htaccess文件添加
<IfMole mod_rewrite.c>302是临时跳转 301是永久跳转。
7、linux c下已经获得域名如何得知SMTP服务器?
用MX RECORD查询, 网上有很多例子。
8、C语言中 如何实现域名转换为IP 高分
char cmd[100];
char url[]="www.BAIDU.COM";
char tmp_file_name[]="tmp.txt";
FILE *fp;
sprintf(cmd,"nslookup %s > %s",url,tmp_file_name);
system(cmd);
if ( (fp=fopen(tmp_file_name,"r"))==NULL ){
printf("can not open %s\n",tmp_file_name);
exit(0);
}
// 然后按行读。跳过前两行。找后面的行。
// 如果某行第一个字符串是Addresses:
// 第二个字符串就是 IP
tmp.txt:
Server: aaaaaaaaaa
Address: nnn.nnn.nnn.nnn
Non-authoritative answer:
Name: www.a.shifen.COM
Addresses: 119.75.213.61, 119.75.216.30
Aliases: www.BAIDU.COM
9、用C语言编写一个得到域名的IP的程序
||输入 域名
结果的 4小节整数 存 int d1,d2,d3,d4 变量中。
#include <stdio.h>
#include <stdlib.h>
void main()
{
char ym[80]="www.baidu.com";
FILE *fp;
char cmd[120];
char nameout[]="tmp_ping.txt"; // 临时文件
char str3[32];
int i,len,d1,d2,d3,d4;
printf("Enter domain address\n");
scanf("%s",&ym[0]);
sprintf(cmd,"ping %s -n 1 > %s\0",ym,nameout);
system(cmd);
fp = fopen(nameout,"r");
fscanf(fp,"%*s %*s %s",&str3[0]);
fclose(fp);
len = strlen(str3);
for (i=0;i<len;i++) if ( str3[i] == '[' || str3[i] == ']'|| str3[i] == '.') str3[i] = ' ';
sscanf(str3, "%d %d %d %d",&d1,&d2,&d3,&d4);
printf("ip=%d.%d.%d.%d\n",d1,d2,d3,d4);
sprintf(cmd,"ERASE /F /Q %s\0",nameout); // 删去临时文件
system(cmd);
getchar();
}
程序未考虑错误域名和无IP返回的域名,你可以自己补充几行处理程序。