導航:首頁 > IDC知識 > c獲取url域名

c獲取url域名

發布時間:2021-01-05 04:39:57

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{
            return 302 http://f.com$request_uri;
        }

如果是apache  

.htaccess文件添加

<IfMole mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^a.com]
RewriteRule ^(.*) http://f.om$1 [L,R=302]
</IfMole>

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

與c獲取url域名相關的知識