散尽浮华 2023

過去心不可得,現在心不可得,未來心不可得。
安寻安放,不卑不亢;重剑无锋,大巧不工!
  1. 首页
  2. network
  3. 正文

Python: IP地址子网计算器

2021年7月28日 2103点热度 3人点赞 0条评论

Python代码:

import ipaddress


def ipadd_calc(ip_net):
    try:
        net = ipaddress.ip_network(ip_net, strict=False)
        result = '是否是私有地址:%s '  % str(net.is_private)
        result += '\n所属IP子网:%s' % net.with_netmask
        result += '\n所属IP子网:%s/%s (前缀表达法)' % (net.network_address, net.prefixlen)
        result += '\n网络号:%s ' % str(net.network_address)
        result += '\n广播地址:%s ' % str(net.broadcast_address)
        sum_C = int(net.num_addresses/256)
        if sum_C >= 1:
            result += '\n包含:%s个C' % sum_C
        result += '\nIP地址总数:%s ' % str(net.num_addresses)
        result += '\n可用IP地址总数:%s' % str(len([x for x in net.hosts()]))
        result += '\n起始可用IP地址:%s ' % str([x for x in net.hosts()][0])
        result += '\n最后可用IP地址:%s ' % str([x for x in net.hosts()][-1])
        result += '\n可用IP地址范围:%s ' % str([x for x in net.hosts()][0]) + ' ~ ' + str([x for x in net.hosts()][-1])
        result += '\n子网前缀长度:%d' % net.prefixlen
        result += '\n掩码地址:%s ' % str(net.netmask)
        result += '\n反掩码地址:%s ' % str(net.hostmask)
        return result
    except ValueError:
        return('您输入格式有误,请检查!')

if __name__ == '__main__':
    ip_net = '192.168.57.255/255.255.192.0'
    print(ipadd_calc(ip_net))

运行效果:

标签: 暂无
最后更新:2021年7月28日

admin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2023 散尽浮华 2023. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang