最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實現(xiàn)DNS正向查詢、反向查詢的例子

 更新時間:2014年04月25日 10:53:07   作者:  
這篇文章主要介紹了python實現(xiàn)DNS正向查詢、反向查詢的例子,需要的朋友可以參考下

1.DNS查詢過程:

以查詢 www.baidu.com為例

(1)電腦向本地域名服務(wù)器發(fā)送解析www.baidu.com的請求
(2)本地域名服務(wù)器收到請求后,先查詢本地的緩存,如果找到直接返回查詢結(jié)果,如果沒有該記錄,本地域名服務(wù)器把www.baidu.com的請求發(fā)送給根域名服務(wù)器
(3)根域名服務(wù)器收到請求后,把.com域的服務(wù)器IP地址返回給本地域名服務(wù)器
(4)本地域名服務(wù)器連接.com服務(wù)器,向其請求解析域名www.baidu.com, .com服務(wù)器把baidu.com服務(wù)器的IP地址返回給本地DNS服務(wù)器
(5)本地DNS服務(wù)器向baidu.com服務(wù)器發(fā)送解析域名請求,baidu.com服務(wù)器將www.baidu.com的IP地址返回給本地DNS服務(wù)器
(6)本地DNS服務(wù)器把www.baidu.com的IP地址返回給電腦。

2.域名和IP地址的對應(yīng)關(guān)系:

一個域名可以對應(yīng)多個IP地址,但在同一時刻,一個域名只能有一個IP地址,一個IP地址可以對應(yīng)多個域名。

3.查詢DNS

Python可以實現(xiàn)DNS的正向和反向查詢。下面是正向查詢的代碼:

復(fù)制代碼 代碼如下:

#!/usr/bin/env python
import sys,socket
result=socket.getaddrinfo(sys,argv[1],None)
print result[0][4]

因為一個域名可以有多個IP地址,所以上述程序兩次運行的結(jié)果可能會不同。

運行程序 :

復(fù)制代碼 代碼如下:
./test.py www.baidu.com

結(jié)果為 :
復(fù)制代碼 代碼如下:
(‘111.13.100.91',80)

反向查詢:

復(fù)制代碼 代碼如下:

#!/usr/bin/env python
import sys,socket
try:
 result=socket.gethostbyaddr(sys.argv[1])
 print "hostname is "+result[0]
except socket.herror,e:
 print "can't look up"

運行程序

復(fù)制代碼 代碼如下:
./test2  127.0.0.1

結(jié)果為:
復(fù)制代碼 代碼如下:
hostname is localhost

相關(guān)文章

  • Python使用requirements.txt和pip打包批量安裝的實現(xiàn)

    Python使用requirements.txt和pip打包批量安裝的實現(xiàn)

    本文主要介紹了Python使用requirements.txt和pip打包批量安裝的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python中函數(shù)參數(shù)匹配模型詳解

    Python中函數(shù)參數(shù)匹配模型詳解

    這篇文章主要介紹了Python函數(shù)參數(shù)匹配模型,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-06-06
  • Pycharm關(guān)于遠(yuǎn)程JupyterLab以及JupyterHub登錄問題

    Pycharm關(guān)于遠(yuǎn)程JupyterLab以及JupyterHub登錄問題

    這篇文章主要介紹了Pycharm關(guān)于遠(yuǎn)程JupyterLab以及JupyterHub登錄問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • 淺析Python中壓縮zipfile與解壓縮tarfile模塊的使用

    淺析Python中壓縮zipfile與解壓縮tarfile模塊的使用

    Python?提供了兩個標(biāo)準(zhǔn)庫模塊來處理文件的壓縮和解壓縮操作:zipfile和tarfile,本文將分享?這兩個模塊的使用方法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • Python教程之成員和身份運算符的用法詳解

    Python教程之成員和身份運算符的用法詳解

    身份運算符是python用來判斷的兩個對象的存儲單元是否相同的一種運算符號。Python的成員運算符是“是否包含運算符”,主要應(yīng)用在字符串或者集合中。本文將通過示例聊聊二者的使用,需要的可以參考一下
    2022-09-09
  • Python基于list的append和pop方法實現(xiàn)堆棧與隊列功能示例

    Python基于list的append和pop方法實現(xiàn)堆棧與隊列功能示例

    這篇文章主要介紹了Python基于list的append和pop方法實現(xiàn)堆棧與隊列功能,結(jié)合實例形式分析了Python使用list定義及使用隊列的相關(guān)操作技巧,需要的朋友可以參考下
    2017-07-07
  • python中的eval函數(shù)使用實例

    python中的eval函數(shù)使用實例

    eval() 函數(shù)用來執(zhí)行一個字符串表達(dá)式,并返回表達(dá)式的值,這篇文章主要介紹了python中的eval函數(shù),需要的朋友可以參考下
    2022-11-11
  • Python如何向IP地址發(fā)送字符串

    Python如何向IP地址發(fā)送字符串

    在Python中,向IP地址發(fā)送字符串通常意味著你需要通過某種協(xié)議來實現(xiàn)通信,最常見的協(xié)議包括TCP和UDP,這篇文章主要介紹了Python向IP地址發(fā)送字符串的示例代碼,需要的朋友可以參考下
    2024-08-08
  • Python sys.argv用法實例

    Python sys.argv用法實例

    這篇文章主要介紹了Python sys.argv用法實例,sys.argv[]是用來獲取命令行參數(shù)的,sys.argv[0]表示代碼本身文件路徑,其它則用來表示獲取輸入?yún)?shù),需要的朋友可以參考下
    2015-05-05
  • Python模擬用戶登錄驗證

    Python模擬用戶登錄驗證

    這篇文章主要為大家詳細(xì)介紹了Python模擬用戶登錄驗證的相關(guān)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09

最新評論

庄浪县| 基隆市| 桦川县| 宣恩县| 湖州市| 房产| 体育| 邢台县| 米泉市| 南安市| 曲阳县| 沿河| 乌苏市| 丹东市| 彭山县| 昭觉县| 监利县| 南宁市| 彰武县| 十堰市| 黄平县| 揭阳市| 唐山市| 临夏县| 海原县| 灵武市| 万盛区| 武强县| 高青县| 鞍山市| 安西县| 卫辉市| 龙州县| 县级市| 新郑市| 蕲春县| 木兰县| 巴彦县| 九江县| 建阳市| 盘山县|