首页 > 编程语言 > 详细

javascript 检测request请求IP是否为内网IP

时间:2016-01-04 13:12:05      阅读:231      评论:0      收藏:0      [点我收藏+]


//摘抄自:http://www.blueshop.com.tw/board/FUM20041006161839LRJ/BRD2008090916184152L.html
//检测是否为内部IP
/**
* @param req
* @returns {boolean}
*/
var checkIsInsideIP = function(req){
    //檢查是否是內部 IP
    //1.A類地址中:10.0.0.0到10.255.255.255.255
    //2.B類地址中:172.16.0.0到172.31.255.255
    //3.C類地址中:192.168.0.0到192.168.255.255

    var ip = req.connection.remoteAddress;
    var address = ip.split(‘:‘);
    var  ipAddress = address[3];


    if (ipAddress == "127.0.0.1" || ipAddress == "localhost")
    {
        return true;
    }

    var aryIpAddress = ipAddress.split(‘.‘);

    if (aryIpAddress[0] == "10") {
        return true;
    }

    if (aryIpAddress[0] == "192" && aryIpAddress[1] == "168") {
        return true;
    }

    if (aryIpAddress[0] == "172") {
        var num = parseInt(aryIpAddress[1]);
        if (num >= 16 && num <= 31) {
            return true;
        }
    }

    return false;
}

javascript 检测request请求IP是否为内网IP

原文:http://www.cnblogs.com/xiaodongli/p/5098319.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!