<netinet/in.h> 头文件下有下列这些宏用于判断IPv6地址合法性

返回0代表true,返回非零值代表ipv6地址为非指定类型的的地址(false)

int IN6_IS_ADDR_UNSPECIFIED(const struct in6_addr *aptr);
如果地址是未指定的IPv6地址,则IN6_IS_ADDR_UNSPECIFIED返回true,否则返回false

int IN6_IS_ADDR_LOOPBACK(const struct in6_addr *aptr);
如果地址是环回IPv6地址,则IN6_IS_ADDR_LOOPBACK返回true,否则返回false。

int IN6_IS_ADDR_MULTICAST(const struct in6_addr *aptr);
如果地址是多播IPv6地址,则IN6_IS_ADDR_MULTICAST返回true,否则返回false。

int IN6_IS_ADDR_LINKLOCAL(const struct in6_addr *aptr);
如果地址是链接本地IPv6地址,则IN6_IS_ADDR_LINKLOCAL返回true,否则返回false。

int IN6_IS_ADDR_SITELOCAL(const struct in6_addr *aptr);
如果地址是站点本地IPv6地址,则IN6_IS_ADDR_SITELOCAL返回true,否则返回false。

int IN6_IS_ADDR_V4MAPPED(const struct in6_addr *aptr);
如果地址是IPv4映射的IPv6地址,则IN6_IS_ADDR_V4MAPPED返回true,否则返回false。

int IN6_IS_ADDR_V4COMPAT(const struct in6_addr *aptr);
如果地址是IPv4兼容的IPv6地址,则IN6_IS_ADDR_V4COMPAT返回true,否则返回false

int IN6_IS_ADDR_MC_NODELOCAL(const struct in6_addr *aptr);
如果地址是具有节点本地范围的IPv6多播地址,则IN6_IS_ADDR_MC_NODELOCAL返回true,否则返回false。

int IN6_IS_ADDR_MC_LINKLOCAL(const struct in6_addr *aptr);
如果地址是具有链接本地范围的IPv6多播地址,则IN6_IS_ADDR_MC_LINKLOCAL返回true,否则返回false。

int IN6_IS_ADDR_MC_SITELOCAL(const struct in6_addr *aptr);
如果地址是具有站点本地作用域的IPv6多播地址,则IN6_IS_ADDR_MC_SITELOCAL返回true,否则返回false。

int IN6_IS_ADDR_MC_ORGLOCAL(const struct in6_addr *aptr);
如果地址是具有组织本地范围的IPv6多播地址,则IN6_IS_ADDR_MC_ORGLOCAL返回true,否则返回false。

int IN6_IS_ADDR_MC_GLOBAL(const struct in6_addr *aptr);
如果地址是具有全局范围的IPv6多播地址,则IN6_IS_ADDR_MC_GLOBAL返回true,否则返回false。

参考文档:http://uw714doc.sco.com/en/man/html.3N/inet.3N.html

判断IPv6地址合法性的更多相关文章

  1. 19届华为实习生笔试之判断iPv6地址类型

    题二: 答案: #coding=utf-8 import re,sys str = sys.stdin.readline().strip() def regex(str): result = &quo ...

  2. Java 检查IPv6地址的合法性

    Java 检查IPv6地址的合法性 由于IPv4资源即将耗尽,IPv6将要正式启用,这是大势所趋. 一些现有的服务和应用逐步要对IPv6支持,目前还处在过渡阶段. 提前了解一些IPv6的知识,还是有必 ...

  3. 校验IPv4和IPv6地址和URL地址

    1.校验IPV4地址: function validateIp(obj) { var ip=$(obj).val(); var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;// ...

  4. 浏览器访问IPv6地址

    http://[IPv6]:port/index.html http://[3ffe:3201:1200:1::91]:8080/index.html 目前现在的网络运营商基本都不支持基于IPv6地址 ...

  5. awk函数实现将简化IPV6地址补全

    在用awk处理文本时,有些场景需要将简化的IPV6地址补充成完整的IPV6地址,下边函数可简单实现: IPV6地址补全函数 # ipv6地址补全函数 function compipv6(orig_ad ...

  6. win10 localhost 解析为 ipv6地址 ::1 的解决办法

    今天遇到个奇怪的问题,localhost 访问时提示 not found 404,但是有127.0.0.1可以访问.最后找到原因,是因为 windows 把 localhost 解析为 ipv6 地址 ...

  7. IP地址(IPv4)/IPv6地址的正则表达式

    原地址:http://pfeishao.blog.163.com/blog/static/18162337020112113130453/ Pv4地址正则表达式:^((25[0-5]|2[0-4]\d ...

  8. IPv6地址介绍

    IPv6地址介绍 2008 年 04 月 10 日 1. 认识IPv6地址 IPv4地址是类似 A.B.C.D 的格式,它是32位,用\".\"分成四段,用10进制表示:而IPv6 ...

  9. Ajax请求中带有IPv6地址后的百分号的问题

    IPv6地址后的百分号: 对于连入网络但没有IPv6路由器或DHCPv6服务器的IPv6客户端,它们始终使用fe80::/64链路本地网络地址.如果运行Windows的计算机中有多个网络适配器连接到不 ...

随机推荐

  1. Python 多级目录选择+一键正反排序

    效果如图所示,可以根据条件来选择对象 cat pc.py #!/usr/bin/pythonfrom flask import Flask,render_template,request,redire ...

  2. Java-终止应用程序

    参考了:http://www.cnblogs.com/xwdreamer/archive/2011/01/07/2297045.html 理论在上面链接中有详细的解释 package com.tj; ...

  3. angular controller与directive相互引用

    /** * Created by Administrator on 2017/8/28. */ var app =angular.module('app',[]); app.directive('fo ...

  4. PHP过滤器 filter_has_var() 函数

    定义和用法 filter_has_var() 函数检查是否存在指定输入类型的变量. 如果成功则返回 TRUE,如果失败则返回 FALSE. 语法 filter_has_var(type, variab ...

  5. 【转载】CentOS 7安装Python3.5,并与Python2.7兼容并存

    CentOS 7下安装Python3.5 CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载Python源码后编译安装. 1.安装python3.5可能使用的 ...

  6. document.execCommand

    document.execCommand 在firefox浏览器执行不好,但是在其他浏览器有时候使用会非常方便. 比如在input标签中使用: onkeyup="if(isNaN(value ...

  7. HDU-5536 Chip Factory,又见字典树,好题+1!

    Chip Factory 题意:一个n个数的数列,求三个数其中两个数的和与另外一个数的异或值最大,输出这个最大值. 思路:和前面那个百度之星资格赛HDU4825的类似,多了两个过程,一个是枚举和,另一 ...

  8. 九度oj 题目1537:买卖股票

    题目描述: 给定一个大小为n的数组,数组的元素a[i]代表第i天的股票价格. 设计一个算法,计算在最多允许买卖k次(一买一卖记为一次)的条件下的最大收益. 需要注意的是,你不能同时拥有两份股票.也就是 ...

  9. 九度oj 题目1114:神奇的口袋

    题目描述: 有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40.John现在有n个想要得到的物品,每个物品的体积分别是a1,a2……an.John可以从这些物品中 ...

  10. SPOJ QTREE4 Query on a tree IV ——动态点分治

    [题目分析] 同bzoj1095 然后WA掉了. 发现有负权边,只好把rmq的方式改掉. 然后T了. 需要进行底(ka)层(chang)优(shu)化. 然后还是T 下午又交就A了. [代码] #in ...