繁体   English   中英

从 ip 地址获取本地主机名,即 Windows 10 上的 192.168.1.x python 3

[英]get local hostname from ip adress i.e. 192.168.1.x python 3 on windows 10

当前使用:- 导入套接字

hostip='192.168.1.62'
getip=socket.getaddrinfo(hostip,port=22)

返回信息但不包括主机名。 似乎是其他讨论中的本地 DNS 问题。 本地路由器查找所有主机名。

主机名仅由 windows 或 netbios 维护,因此从命令提示符几乎不可能找到它。 所以我切换到通过引用Mac地址来搜索IP地址。 迄今为止最好的解决方案是使用 nmap 并解析结果。 我的 IP 地址高达 192.268.1.99 的代码是这样的

mac='0a:0b:0c:0d'
arpin=os.popen('nmap -sP -n 192.168.1.0/24',"r").read()
arl=arpin.split("\n")
fmac=[arl.index(i) for i in arl if mac in i]
fip=arl[fmac[0]-2][-12:]

fip 获取设备的 IP 地址。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM