首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >识别ipv4和ipv6地址的方法

识别ipv4和ipv6地址的方法
EN

Stack Overflow用户
提问于 2016-04-13 08:25:46
回答 2查看 1.1K关注 0票数 1

我在postgres数据库中有一个ip字段,定义为inet字段。

目前,要确定ipv4还是ipv6,我似乎可以使用冒号计数和/或‘’。一定程度上算,但一定有更好的办法,对吧?

代码语言:javascript
复制
COLON_COUNT = (length(ip::text) - length(replace(ip::text, ':', '')));
DOT_COUNT = (length(ip::text) - length(replace(ip::text, '.', '')));

确定地址是ipv4还是ipv6的干净/好方法是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-13 08:49:45

使用 function。IPv4将返回4,IPv6将返回6。

票数 6
EN

Stack Overflow用户

发布于 2016-04-13 08:47:20

我认为,如果没有省略尾随零点,您只需将字段转换为一个数字,并查看该数字是否小于2倍32 IPv4 (IPV6)。

这意味着在数字转换之前过滤掉冒号和点。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36592642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档