zoukankan      html  css  js  c++  java
  • php随机生成国内ip地址

    获得一个国家所有ip段,随机生成国内ip地址的缩水实现。
    注意:  $ip_long数组中后5个值在64位系统中可能是错误的(下面代码中  $ip_long 数组的后五个值在32位系统中为负数,64位系统中为正数,前五个值在64位系统中也可能有错误)

    32位系统
    echo ip2long(“172.16.1.63″);
    结果 -1408237249
    64位操作系统
    echo ip2long(“172.16.1.63″);

    来源:http://www.liangkun.net/archives/681.html

    所有ip地址网段下载
    http://www.ipaddresslocation.org/ip_ranges/get_ranges.php

    缩水随机生成国内ip地址
    总共有1600多个网段,只取了其中10个确定是国内的网段
    使用了2个php函数

    ip2long($ip)把ip转为int

    long2ip($int_ip)把int转回ip

    代码:

            $ip_long = array(

                array('607649792', '608174079'), //36.56.0.0-36.63.255.255

                array('1038614528', '1039007743'), //61.232.0.0-61.237.255.255

                array('1783627776', '1784676351'), //106.80.0.0-106.95.255.255

                array('2035023872', '2035154943'), //121.76.0.0-121.77.255.255

                array('2078801920', '2079064063'), //123.232.0.0-123.235.255.255

                array('-1950089216', '-1948778497'), //139.196.0.0-139.215.255.255

                array('-1425539072', '-1425014785'), //171.8.0.0-171.15.255.255

                array('-1236271104', '-1235419137'), //182.80.0.0-182.92.255.255

                array('-770113536', '-768606209'), //210.25.0.0-210.47.255.255

                array('-569376768', '-564133889'), //222.16.0.0-222.95.255.255

            );

            $rand_key = mt_rand(0, 9);

            $ip= long2ip(mt_rand($ip_long[$rand_key][0], $ip_long[$rand_key][1]));

    转载:http://blog.csdn.net/zlking02/article/details/8614071

  • 相关阅读:
    2016百度之星资格赛 Problem B(大数+组合数)
    HDU 4380 Farmer Greedy(叉积和三角形知识的综合应用)
    C++ STL (备忘)
    【Linked List Cycle II】cpp
    【Linked List Cycle】cpp
    【Copy List with Random Pointer】cpp
    【Reverse Nodes in k-Group】cpp
    【Swap Nodes in Pairs】cpp
    【Remove Nth Node From End of List】cpp
    【Rotate List】cpp
  • 原文地址:https://www.cnblogs.com/lygsbbs/p/4294037.html
Copyright © 2011-2022 走看看