是否有用于查找主机名的定位类型命令?

是否有用于查找主机名的定位类型命令?

我在一个拥有数千台仪器的大型网络上工作,有时,我希望我能使用类似的命令$locate --hostname dawar来查找有关网络上名为“dawar”的计算机的 IP 和完整主机名的信息。我编写了一个使用弃用的 C 函数 gethostsbyname 和 gethostsbyaddress 的小程序,我想我可以编写一个搜索函数。但我很好奇是否有一个类似的程序可以搜索名称服务器,...我不必编写。

或者,C 语言中等效的 gethostbyname 的非贬值函数是什么?

这是 nslookup 的输出,考虑到输出的外观,我不想使用它;

nslookup 123.111.129.108
Server:     127.0.1.1
Address:    127.0.1.1#53

108.129.111.123.in-addr.arpa    name = RM135.domain.

答案1

看看“dig”实用程序

> # dig google.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8753
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.                    IN      A

;; ANSWER SECTION:
google.com.             120     IN      A       209.85.202.100
google.com.             120     IN      A       209.85.202.139
google.com.             120     IN      A       209.85.202.102
google.com.             120     IN      A       209.85.202.101
google.com.             120     IN      A       209.85.202.113
google.com.             120     IN      A       209.85.202.138

;; Query time: 1 msec
;; SERVER: 192.168.0.228#53(192.168.0.228)
;; WHEN: Thu Oct 27 14:43:06 2016
;; MSG SIZE  rcvd: 124

答案2

nslookup dawargetent hosts dawar可能满足您的目的,具体取决于具体用例。两者都假设可以从中指定的搜索域获取 FQDN /etc/resolv.confnslookup也可以进行反向查找,但我不确定getent。还有更强大的dig命令,如果我没记错的话,是hosts命令。

相关内容