数字ip和ip的转化(自编版)
之前转载过一版关于数字ip和ip的转化,但是工作中会遇到负数的形式,所以有没法搞,后来不得已研究了下转化的规律,自己写了一个代码,保证自己的工作效率,今天给大家参考下。
原理简述
ip结构 | 数字ip |
---|---|
000.000.000.000 | 0000000000 |
ip分四段,每段最大数为255,当再加1时,前一段+1,本段变成000
例如:000.000.000.255之后的一个时000.000.001.000
所以数字255对应0.0.0.255
数字256对应0.0.1.0
数字65536对应0.1.0.0
最大数4294967295对应255.255.255.255
至于负数,其实就是正数是相反的
即:-1对应255.255.255.255
-4294967295对应0.0.0.1
所以得到4294967296+(负数)就可得到正数,就可以正常转化了
代码
def IP(x):
#""" 完成数字ip到实际ip的转换
# x:需要转化的数字ip(可以是负数,可以是正数)
# p1:ip中第一个点的位置(从左往右)
# p2:ip中第二个点的位置
# p3:第三个点的位置
# return:返回转化完成的实际ip
#"""x=int(x)p1=256*256*256p2=256*256p3=256if x>=0:a=x//p1#ip第一段数字(从左往右)b=(x-(p1*a))//p2#ip第二段数字c=((x-(p1*a))-(b*p2))//p3#ip第三段数字d=((x-(p1*a))-(b*p2))%p3#ip第四段数字else:x1=4294967296+xa=x1//p1#ip第一段数字(从左往右)b=(x1-(p1*a))//p2#ip第二段数字c=((x1-(p1*a))-(b*p2))//p3#ip第三段数字d=((x1-(p1*a))-(b*p2))%p3#ip第四段数字return str(a)+'.'+str(b)+'.'+str(c)+'.'+str(d)
数字ip和ip的转化(自编版)相关推荐
- 数字IP和iP的转化
最近由于工作需要要转换一些ip,然后去匹配物理地址,有点头大,今天找到这个代码,节省了很多的时间: python整数与IP地址转换 [转] import socket import struct in ...
- mysql日期转换成数字在线转换_MySQL中时间--gt;数字转换和IP地址--gt;数字转换(转) - - ITeye博客...
本文转载自: http://wangwei.cao.blog.163.com/blog/static/1023625262010063402377/ 后台有很字段都是采用时间戳的形式,二者如何转换 ...
- ping 用数字串代替IP地址
Ping命令,大家都比较熟悉,它常被用来测试局域网的连通状态."Ping+IP地址"是大家最常用的一种命令格式,但大家是否注意过Ping命令中的IP地址呢?这里面可是有很多学问和讲 ...
- ip地址转换数字函数 iton_3. IP地址转换函数
一.字符串表示的IP地址需要被转化为整数(二进制数)方能使用 IPv4地址:点分十进制字符串 IPv6地址:十六进制字符串 有时(如记录日志),我们则要把整数(二进制数)表示的IP地址转化为可读的字符 ...
- springboot查看请求ip、ip归属地、设备信息、本地MAC地址、操作系统信息
springboot查看请求ip.ip归属地.设备信息.操作系统信息 1.在pom添加依赖 <dependency><groupId>eu.bitwalker</grou ...
- 三、IP和IP地址区别和联系
IP(internet protocol) 网际协议 和IP地址 有人会把"IP"和"IP 地址"搞混,"IP"其实是一种协议的名称. IP ...
- 网站统计中的PV(访问量):UV(独立访客):IP(独立IP)的定义与区别
--------首先来看看ip.uv和pv的定义---------- PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次. UV(独立访客):即Unique Vis ...
- linux网络配置命令 ifconfig 、route 、ip 、ip route
一.ifconfig 命令(查看或配置Ip) 1.查看网络连接 1 # ifconfig \\ 显示所有活动连接,不包令禁用的设备 或 1 # ifconfig -a \\ 显示所有活动及非活动 ...
- python ip,Python IP处理模块IPy(转载)
安装 使用 1.显示IP类型 IP('192.168.1.1').version() 4 IP('::1').version() 6 类似如上所示,通过version方法可以的判断输入的IP是IPv4 ...
最新文章
- linux 提取字符串一部分,Linux Shell 截取字符串的方法示例
- golang 切片 数组 洗牌
- php中绘画控制包括什么,PhpStorm中绘画UML
- Web Worker的最好文章
- springboot初始化逻辑_详解Spring Boot中初始化资源的几种方式
- import MySQLdb UserWarning
- mysql global locks_mysql8 参考手册--NDB群集线程状态
- Linux虚拟机出现卡死且无法结束进程的解决办法
- IDC 机房空调问题解决方案
- 速成应用免费教你如何制作开发预约类型的美容美发行业微信小程序「教程」
- 【语音识别】基于HMM实现中文语音识别含Matlab源码
- 码码在线总结——java web开发
- java ews appointment_EWS-JAVA-API的使用
- qgg包-续2-大数据集教程
- sonar pdf 插件
- 华为鸿蒙战略发布会内容,万物互联!华为鸿蒙发布会带来无限可能
- 带你手摸手搭建vuepress站点
- 很好用的程序员在线画图软件
- 线程实例分析---线程的综合运用(精灵线程,多线程,中断,通信)【java养成】
- 如何在iPhone手机里创建网页快捷方式图标(Web Clip)