ip地址的正则表达式

ip地址的正则表达式


        checkIpSpecial: {// 验证IP地址
            validator: function (value) {
                // var reg = /^((1?\d?\d|(2([0-4]\d|5[0-5])))\.){3}(1?\d?\d|(2([0-4]\d|5[0-5])))$/;
                这个正则表达式的意思是:以数字开头,紧接着是一个点,然后再是数字,这			   个序列重复三次。最后一组数字后面没有点。
其中 (?!127) 是一个负向零宽断言,表示匹配时不能包含127这个数字组合。所以,这个正则表达式可以匹配除127.0.0.1以外的任何IP地址。
                // var reg = /^(?:(?!127)\d{1,3}\.){3}(?:(?!127)\d{1,3})$/;
                // 127...回环地址
                var reg = /^(127.)((1?\d?\d|(2([0-4]\d|5[0-5])))\.){2}(1?\d?\d|(2([0-4]\d|5[0-5])))$/;
                //169.254..
                var reg2 = /^(169.254.)((1?\d?\d|(2([0-4]\d|5[0-5])))\.){1}(1?\d?\d|(2([0-4]\d|5[0-5])))$/;
                // 244... 组播地址
                var reg3 = /^(244.)((1?\d?\d|(2([0-4]\d|5[0-5])))\.){2}(1?\d?\d|(2([0-4]\d|5[0-5])))$/;
                if (value === "0.0.0.0" || value === "255.255.255.255" ||reg.test(value)
                ||reg2.test(value)||reg3.test(value)){
                    return false;
                } else {
                    var reg = /^((1?\d?\d|(2([0-4]\d|5[0-5])))\.){3}(1?\d?\d|(2([0-4]\d|5[0-5])))$/;
                    return reg.test(value);
                }
            },
            message: 'IP地址格式不正确,或为特殊IP'
        },

特殊的IP地址:
0.0.0.0 代表任意网络地址。已经不是真正意义上的ip地址,它表示的是所有不清楚主机和目的网络,这里的不清楚指的是在本机路由表里没有特定条目指明如何到达。
127.X.X.X 本地回环地址,用于测试TCP/IP协议。凡是127开头的IP地址都是回环地址,可以理解为虚拟网卡,主要用于本机中各应用之间的网络交互,外部设备是无法通过回环地址访问本机的。
169.254.X.X DHCP服务保留。
224.X.X.X 组播地址
255.255.255.255 本地广播地址。
私有IP地址:
A类地址范围:10.0.0.0—10.255.255.255,即10.0.0.0/8
B类地址范围:172.16.0.0—172.31.255.555,即172.16.0.0/12
C类地址范围:192.168.0.0—192.168.255.255,即192.168.0.0/16

你可能感兴趣的:(tcp/ip,网络协议,网络)