python扫描ip的端口打开情况
生活随笔
收集整理的這篇文章主要介紹了
python扫描ip的端口打开情况
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
我們的韓國(guó)bss系統(tǒng)上線之后,要求對(duì)主機(jī)的端口、資源使用進(jìn)行統(tǒng)計(jì),端口每個(gè)主機(jī)去看,太費(fèi)勁了,所以,就寫(xiě)了這樣一個(gè)小程序,不是很完美但是,可以用啊!哈哈哈,別噴,本人是個(gè)菜鳥(niǎo)
#!/usr/bin/python #?-*-?coding:utf-8?-*- import?socket import?sys#connector,使用socket模塊,設(shè)定超時(shí)時(shí)間為0.1【內(nèi)網(wǎng)環(huán)境下】,連接成功返回1,連接失敗返回0 def?connector(ip,port):s?=?socket.socket(socket.AF_INET,socket.SOCK_STREAM)try:s.settimeout(0.1)s.connect((ip,int(port)))s.shutdown(2)return?1except:return?0finally:s.close()#程序開(kāi)始,定義所有server,此處用了json,便于后面腳本好寫(xiě) server_list={"server-list":?[{"name":?"api-1-18","ip":?"xxx.xxx.xxx.18"},{"name":?"api-2-19","ip":?"xxx.xxx.xxx.19"},{"name":?"web-1-24","ip":?"xxx.xxx.xxx.24"},{"name":?"db-1-21","ip":?"xxx.xxx.xxx.21"},{"name":?"db-2-23","ip":?"xxx.xxx.xxx.23"},{"name":?"ftp-1-26","ip":?"xxx.xxx.xxx.26"},{"name":?"***-1-30","ip":?"xxx.xxx.xxx..30"}] } #對(duì)列表中所有server的所有端口進(jìn)行遍歷掃描,并將打開(kāi)的端口輸出到終端 for?server?in?server_list['server-list']:for?port?in?range(1,65535):state=connector(server['ip'],?port)if?state?==?1:print?"["+str(port)+"]?is?open?on?this?server?["+str(server['name'])+"]" sys.exit()轉(zhuǎn)載于:https://blog.51cto.com/diamondlich/1870689
總結(jié)
以上是生活随笔為你收集整理的python扫描ip的端口打开情况的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 洛谷P1130 红牌
- 下一篇: 生成对象