###背景:常常须要查看网段有哪些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结果并进行分类