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返回的域名,你可以自己補充幾行處理程序。