亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 3365 | 回復(fù): 7
打印 上一主題 下一主題

如何根據(jù)IP找相應(yīng)的主機名 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2010-06-23 10:24 |只看該作者 |倒序瀏覽
各位大俠:
    我碰到一個問題,比如我有一個網(wǎng)址的IP地址,我用gethostbyaddr()去獲取他的域名。為什么返回的都是一些奇怪的地址,不是我想要的地址。
    例如:外部IP為211.144.92.240。 我想得到他的hostname是www.sina.com.cn,可是執(zhí)行后卻是reserve.cableplus.com.cn
      請問如何才能正確獲得遠端主機的域名呢?
  1. #include <sys/socket.h>
  2. #include <stdio.h>
  3. #include <netinet/in.h>
  4. #include <arpa/inet.h>
  5. #include <netdb.h>
  6. #include <sys/socket.h>

  7. int main ()
  8. {
  9.         struct in_addr addr;
  10.         struct hostent *hostname;
  11.         addr.s_addr = inet_addr("211.144.92.240");
  12.         printf("loop ip:%s\n", inet_ntoa(addr));

  13.         hostname = gethostbyaddr((char *)&addr, 4, AF_INET);
  14.         if (hostname == NULL){
  15.                 printf("error, ");
  16.                 return -1;
  17.         }
  18.         printf("h_name:%s\n", hostname->h_name);
  19.         printf("h_alia:%s\n", hostname->h_aliases[0]);
  20.         printf("h_ip:%s\n", inet_ntoa(*((struct in_addr *)hostname->h_addr_list[0])));
  21.         return 0;
  22. }
復(fù)制代碼

論壇徽章:
0
2 [報告]
發(fā)表于 2010-06-23 10:34 |只看該作者
你已經(jīng)獲得了正確的 rDNS。
一個 IP 可以對應(yīng)多個主機名,同樣一個主機名可以對應(yīng)多個 IP。
你要指定一個 IP 的反向解析結(jié)果就得聯(lián)系 ISP,比如這里 211.144.64.0/19 屬于 AS9812,請致電 96877 或發(fā)送電子郵件到 ipas@cnnic.net.cn

論壇徽章:
0
3 [報告]
發(fā)表于 2010-06-23 11:26 |只看該作者
我抓了報文,這個遠端主機的名字reserve.cableplus.com.cn是從DNS上解析出來的。有沒有辦法可以讓DNS解析出正確的名字?

論壇徽章:
0
4 [報告]
發(fā)表于 2010-06-23 11:48 |只看該作者
請問你有 rDNS 的控制權(quán)嗎?如果有,自己改 PTR 記錄;如果沒有,聯(lián)系 ISP。

論壇徽章:
0
5 [報告]
發(fā)表于 2010-06-23 12:36 |只看該作者
哦,那我沒有,那么多的IP和域名總不能都聯(lián)系ISP吧。我們也不能保證用戶用什么樣的IP去查域名啊。不管怎么說還是謝謝你!

論壇徽章:
0
6 [報告]
發(fā)表于 2010-06-23 13:31 |只看該作者
確實,你不能保證用戶的正向查詢與反向查詢總能對應(yīng)上,反向解析與正向解析的對應(yīng)關(guān)系只在郵件服務(wù)器這一塊比較看重。

通常呢,反向解析的結(jié)果只告訴你這個 IP 所在的運營商,或者機房地理位置,甚至具體的網(wǎng)卡編號都有。

例如

1) Google 的一個 IP 是 216.239.61.104,反向查詢的結(jié)果是 sin01s01-in-f104.1e100.net

1e100.net 是 Google 的域名,以上 PTR 記錄表明 216.239.61.104 是新加坡(sin)01s01 號機房的入口地址(in),IPv4 十進制(f),IP 編號 104。

2) Google 的一個 IPv6 地址是 2001:4860:8011::63,反向查詢結(jié)果是 lax04s01-in-x63.1e100.net

洛杉磯(lax)04s01 號機房的入口地址,IPv6 十六進制(x),IP 編號 0x63。

3) 66.160.158.241 -> 10gigabitethernet1-2.core1.fmt1.he.net

Hurricane Electric 核心路由網(wǎng)絡(luò)(core)在 Fremont, CA 1 號機房的 10GE 接口 1-2

論壇徽章:
0
7 [報告]
發(fā)表于 2010-06-23 13:45 |只看該作者
反向解析的結(jié)果是使用該IP的主機名嗎?

論壇徽章:
0
8 [報告]
發(fā)表于 2010-06-23 13:47 |只看該作者
應(yīng)該是域名或者主機名吧
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP