- A+
所属分类:Python
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import ipaddress
import sys
def check_ip(ip_addr):
try:
print('检查地址: '+str(ipaddress.ip_interface(ip_addr)))
print('地址版本: IPV'+str(ipaddress.ip_network(ip_addr, strict=False).version))
print('所属网段: '+str(ipaddress.ip_network(ip_addr, strict=False)))
print('子网掩码: '+str(ipaddress.ip_network(ip_addr, strict=False).netmask))
addr_total = ipaddress.ip_network(ip_addr, strict=False).num_addresses
if addr_total != 1:
print('广播地址: ' + str(ipaddress.ip_network(ip_addr, strict=False).broadcast_address))
print('网络号码: ' + str(ipaddress.ip_network(ip_addr, strict=False).network_address))
print('地址总数: ' + str(ipaddress.ip_network(ip_addr, strict=False).num_addresses))
print('可用数量: '+str(ipaddress.ip_network(ip_addr, strict=False).num_addresses - 2))
print('起始可用IP地址: '+str(ipaddress.ip_network(ip_addr, strict=False)[1]))
print('起始可用IP地址: '+str(ipaddress.ip_network(ip_addr, strict=False)[-2]))
print('可用IP地址范围: '+str(ipaddress.ip_network(ip_addr, strict=False)[1])+' ~ '+str(ipaddress.ip_network(ip_addr, strict=False)[-2]))
except:
print('输入地址有误,请检查!')
ip_list = list(sys.argv)
del ip_list[0]
for ip in ip_list:
check_ip(ip)
print('==========================end==========================')