Linux學習之域名解析命令


 

(1) /etc/hosts :記錄hostname對應的ip地址

 

  /etc/resolv.conf :設置DNS服務器的ip地址

 

  /etc/host.conf :指定域名解析的順序(是從本地的hosts文件解析還是從DNS解析)

(2) DNS的查詢指令:host、nslookup、dig,host 語法:

host命令是常用的分析域名查詢工具,可以用來測試域名系統工作是否正常。

host(選項)(參數)

-a:顯示詳細的DNS信息;

-c<類型>:指定查詢類型,默認值為“IN“;

-C:查詢指定主機的完整的SOA記錄;

-r:在查詢域名時,不使用遞歸的查詢方式;

-t<類型>:指定查詢的域名信息類型;

-v:顯示指令執行的詳細信息;

-w:如果域名服務器沒有給出應答信息,則總是等待,直到域名服務器給出應答;

-W<時間>:指定域名查詢的最長時間,如果在指定時間內域名服務器沒有給出應答信息,則退出指令;

-4:使用IPv4;

-6:使用IPv6.

1 [root@localhost ~]# host www.linuxde.net 
www.linuxde.net is an alias for host.1.linuxde.net. host.1.linuxde.net has address 100.42.212.8
[root@localhost ~]# host -a www.linuxde.net Trying "www.linuxde.net" ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34671 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.linuxde.net. IN ANY ;; ANSWER SECTION: www.linuxde.net. 463 IN CNAME host.1.linuxde.net. Received 54 bytes from 202.96.104.15#53 in 0 ms

(3) Nslookup 語法:

Nslookup [FQDN] [server]

Nslookup

參數說明:

可以直接在nslookup后加上待查詢的主機名稱或者ip,【server】可有可無。

如果在nslookup后面沒有加上任何主機名稱或ip,那將進入nslookup的查詢功能。在nslookup的查詢功能當中,可以輸入其他參數來進行特殊查詢,例如:

Set type=any    :列出所有的信息

Set type=mx    :列出與mx相關的信息

(4) Dig 語法:

Dig [@server] [FQDN] [type]

參數說明:

@server :如果不想以/etc/resolv.conf來作為dns主機,則可以在此填入其他的ip

Type :預設是查詢A記錄,你可以在這里寫入其他的記錄,如:MX,NS等。

此功能亦可使用[-t type]來處理。

下面是 dig 的一些比較常用的命令:

# dig 最基本的用法

1 dig @server sina.com.cn.

# 用 dig 查看 zone 數據傳輸

1 dig @server zx.xmgd.com. AXFR

# 用 dig 查看 zone 數據的增量傳輸

1 dig @server zx.xmgd.com. IXFR=N

# 用 dig 查看反向解析

1 dig -x 210.52.83.228 @server

# 查找一個域的授權 dns 服務器

1 dig xmgd.com. +nssearch

# 從根服務器開始追蹤一個域名的解析過程

1 dig xmgd.com +trace

# 查看你使用的是哪個 F root dns server

1 dig +norec @F.ROOT-SERVERS.NET HOSTNAME.BIND CHAOS TXT

    一般來說linux下查詢域名解析有兩種選擇,nslookup或者dig,而在使用上我覺得dig更加方便順手,如果是在debian下的話,只要裝上dnsutils這個包就可以使用dig命令了,最基本的使用方式就是:

1 dig www.baidu.com

 

    即查詢域名的A記錄,查詢的dns服務器將采用系統配置的服務器,即/etc/resovle.conf 中的,如果要查詢其他類型的記錄,比如MX,CNAME,NS,PTR等,只需將類型加在命令后面即可

1 dig www.baidu.com mx
2 dig www.baidu.com ns

 

    此外,如果你是一個系統管理員,部署好了一台dns服務器之后想對它進行解析測試,就必須要顯式指定待測試的dns服務器地址了,例如

1 dig @180.97.33.107 www.baidu.com a

 

    默認情況下dig將采用udp協議進行查詢,如果要采用tcp方式,可以加上 +tcp參數

1 dig www.baidu.com a +tcp

 

    另外一個重要的功能是+trace參數,使用這個參數之后將顯示從根域逐級查詢的過程

1 dig www.baidu.com a +trace

 

    比如,對本站域名www.linuxers.cn A記錄的trace查詢可以看到根域.,頂級域.cn,以及linuxers.cn的域名權威服務器的地址及其各自的返回結果,這樣對於追蹤dns解析中的問題有很大的幫助。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM