###背景:常常須要查看網段有哪些IP使用了,須要對網段IP進行ping檢測。用python來編程實現自動檢測網段IP狀況。python
###腳本:編程
import os
IP01=input("輸入網段(好比:192.168.1.0):")
list01=IP01.split(".")
seg01=".".join([list01[0], list01[1], list01[2]])
for i in range(1,3):
dst_IP=".".join([seg01,str(i)])
print(dst_IP.center(30,"*"))
ping_resluts=os.popen('ping {}'.format(dst_IP))
print(ping_resluts.read())
i=i+1
### 技巧點:
### 拆分IP地址段,用到split和join方法。
### 將int變成字符串str(int01)。
### python中執行系統命令。導入os模塊,popen方法執行命令並返回執行結果。
### 將python變量傳遞給系統命令。format方法。
### 效果:ide
''' 優化
輸入網段(好比:192.168.1.0):192.168.1.0spa
*********192.168.1.1**********orm
正在 Ping 192.168.1.1 具備 32 字節的數據:字符串
來自 192.168.1.1 的回覆: 字節=32 時間=2ms TTL=64input
來自 192.168.1.1 的回覆: 字節=32 時間=1ms TTL=64it
來自 192.168.1.1 的回覆: 字節=32 時間=4ms TTL=64form
來自 192.168.1.1 的回覆: 字節=32 時間=1ms TTL=64
192.168.1.1 的 Ping 統計信息:
數據包: 已發送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒爲單位):
最短 = 1ms,最長 = 4ms,平均 = 2ms
*********192.168.1.2**********
正在 Ping 192.168.1.2 具備 32 字節的數據:
來自 192.168.1.102 的回覆: 沒法訪問目標主機
.................................省略
'''
###
### 待優化點:
### 須要多個IP同時ping加快檢測速度
### 將檢測ping IP結果並進行分類