linux下快速列出局域网中所有主机名(计算机名)的脚本
作者:RDX 发布时间:2023-07-22 14:13:38
标签:linux,局域网,主机名
最近有列出局域网中所有主机名的需求(SMB协议里的),但是findsmb命令总是列不全,搜了搜网上也没什么现成的解决方案,于是自己写了个python脚本
脚本会扫描局域网arp表中所有ip,并尝试解析其主机名,这样可以较为彻底地列出相关信息。
注意,运行这个脚本需要samba-common-bin和arp-scan这两个包,没有的请先apt install它们。
用法:直接运行或用python3运行,然后输入需要扫描的网卡名(network interface)(不知道的运行ifconfig可查,一般是ens33、eth0等,出现在该命令输出最左列),然后回车等待,可能需要运行几分钟。
需要root权限运行!!
#!/usr/bin/env python3
import os
def shellrun(cmd):
a = os.popen(cmd)
b = a.read()
c = b.split('\n')
return c
def cutarpresult(lst):
a = []
b = []
for line in lst[2:]:
if line != '':
a.append(line)
else:
break
for line in a:
b.append(line.split('\t')[0])
return b
def commandmaker(ip):
return 'nmblookup -A ' + ip
def getrst(iplist):
rst = []
for ip in iplist:
rst.append(shellrun(commandmaker(ip)))
return rst
def washrst(rst):
rtn = []
for line in rst:
if line[1].split(' ')[1] != 'reply':
rtn.append(line[:-1])
return rtn
def main():
interface = input('which interface to use: ')
iplist = cutarpresult(shellrun('arp-scan -I ' + interface + ' -l'))
for rs in washrst(getrst(iplist)):
for line in rs:
print(line)
if __name__ == '__main__':
main()
来源:https://www.cnblogs.com/jz3025/archive/2020/07/29/13395728.html


猜你喜欢
- Vmware CentOS7最小化安装Linux的学习使用什么版本比较合适?个人认为是从命令行开始是最好的,因为以后操作服务器(做系统运维)
- 2020年4月23日,今天Windows 上的 Ubuntu 20.04 允许使用 Ubuntu Terminal 并运行 Ubuntu 命
- 2008年我国网络零售行业首次突破了三个“1”——全国网络零售消费者数量突破了1个亿;交易额突破了1千亿元;在全国社会消费品零售总额中所占比
- mkdir命令语法linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前
- 有同学说搞wm是浪费时间,那我来发点有用的东西。一切关于linux和windows,cli和X的辩论请绕行。本系统由以下软件组成:getma
- 其实学生站长是幸福的,因为你们没有经济的强大压力。其实学生站长前途是光明的,因为你们有的是青春年华。其实学生站长是充满活力的,因为新点子,新
- Linux动态库函数的详解加载动态库void *dlopen(const char *filename, int flag);flag的可能
- 什么是ssh管理员可以通过远程登陆的方式,对通过网相连的分散于各处的多台主机进行管理操作。管理员可以对远程主机进行如下操作: 远程
- 6. 修改 advanced.acl.population 以设定管理者帐号# cd /usr/local/twig-2.7.5/setup
- 一、域名过期后第一阶段域名过期后1~45天内,将处于注册商保留状态whois英文状态:REGISTRAR-HOLD二、域名过期后第二阶段 注
- 自己的第一篇博文,由于时(shuǐ)间(píng)原(yǒu)因(xiàn),不知道怎么排版好看,所以诸位就暂且将就一下吧。注:笔者这里用的
- 网赚常见英文信范例网赚中,有时难免遇到问题需要跟外国网赚公司交流,这就要求你会写英文信。 以下列出了几个最常见的问题及范例信写法,希望对网赚
- 对于 Linux 管理员来说这是一个重要(美妙)的话题,所以每个人都必须知道,并练习怎样才能更高效的使用它们。在 Linux 中,无论何时当
- 还记得诺基亚的成名广告语吗——“科技以人为本”。您可千万别小看这句话,西方科技之所以如此发达,很大程度上就源自于“以人为本”理念的贯彻。小到
- 利用强大的技术,可以把基于wordpress的网站做成各种各样的形式,这除了要求wordpress主题开发人员精通html,PHP,JS,C
- Windows2000 含有很多的安全功能和选项,如果你合理的配置它们,那么windows 2000将会是一个很安全的操作系统。初级安全篇
- 前言本文主要介绍了关于ubantu 16.4 Hadoop完全分布式搭建的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的
- 本以为很火星,后来没有发现其他网站谈论此事,所以决定发此新闻:带来的好处我非常喜欢,再也不用搜索时候强迫用鼠标了!说明:J:下K:上O 或
- 北京时间9月30日下午消息,国庆前夕,谷歌中国正式上线“国庆北京交通限行地图”,图示北京市在国庆期间
- Google AdWords账户可以制作25个广告系列,而每个系列可以制作100个广告组,但其实每个广告系列中可以添加2000甚至3000的