diff --git a/config/default-config.json b/config/default-config.json index 5898f80..b24951a 100644 --- a/config/default-config.json +++ b/config/default-config.json @@ -5,7 +5,7 @@ "id": "botIpRange", "desc": "Common Bot IP range", "bot": 50 }, - {"func": "matchesClient", "params": ["aol", "msie", "chromeold","oldedge","operaold"], + {"func": "matchesClient", "params": ["aol","msie","ffold","chromeold","oldedge","operaold"], "id": "oldClient", "desc": "Obsolete browser version", "bot": 40 }, @@ -41,7 +41,7 @@ "id": "langMatch", "desc": "Client’s ‘Accept-Language’ header does not match the page language", "bot": 30 }, - {"func": "matchesClient", "params": ["brave"], + {"func": "matchesClient", "params": ["brave","operaold","msie"], "id": "susClient", "desc": "Client identifier that is popular with bot networks", "bot": 10 }, @@ -73,39 +73,40 @@ "ipRanges": [ {"from": "3.0.0.0", "to": "3.255.255.254", "label": "Amazon Data Services [US]"}, {"from": "8.127.0.0", "to": "8.223.255.254", "label": "Alibaba [CN]"}, - {"from": "14.160.0.0", "to": "14.191.255.255", "m": 11, "label": "VNPT [VN]"}, + {"from": "14.160.0.0", "to": "14.191.255.254", "m": 11, "label": "VNPT [VN]"}, {"from": "24.240.0.0", "to": "24.247.255.255", "m": 13, "label": "Charter [US]"}, - {"from": "27.106.0.0", "to": "27.106.127.254", "label": "Huawei [US]"}, + {"from": "27.106.0.0", "to": "27.106.127.254", "m": 17, "label": "Huawei [US]"}, {"from": "34.0.0.0", "to": "34.191.255.254", "label": "Google LLC"}, {"from": "43.132.0.0", "to": "43.132.255.254", "m": 16, "label": "Tencent [CN]"}, {"from": "43.133.0.0", "to": "43.133.255.254", "m": 16, "label": "Tencent [CN]"}, {"from": "45.0.0.0", "to": "45.255.255.254", "label": "Various small ISPs, mostly BR"}, - {"from": "46.250.160.0", "to": "46.250.191.254", "label": "Huawei [MX]"}, - {"from": "47.200.0.0", "to": "47.203.255.255", "m": 14, "label": "Frontier Communications [US]"}, - {"from": "49.0.200.0", "to": "49.0.255.254", "label": "Huawei [SG]"}, + {"from": "46.250.160.0", "to": "46.250.191.254", "m": 19, "label": "Huawei [MX]"}, + {"from": "47.200.0.0", "to": "47.203.255.254", "m": 14, "label": "Frontier Communications [US]"}, + {"from": "49.0.192.0", "to": "49.0.255.255", "m": 18, "label": "Huawei [SG]"}, {"from": "52.220.0.0", "to": "52.222.255.254", "label": "Amazon Data Services"}, - {"from": "66.249.64.0", "to": "66.249.95.255", "m": 19, "label": "Google LLC"}, + {"from": "66.249.64.0", "to": "66.249.95.254", "m": 19, "label": "Google LLC"}, {"from": "84.37.35.0", "to": "84.37.255.254", "label": "GTT.net [US]"}, - {"from": "94.74.64.0", "to": "94.74.127.254", "label": "Huawei [HK]"}, + {"from": "94.74.64.0", "to": "94.74.127.254", "m": 18, "label": "Huawei [HK]"}, {"from": "101.0.0.0", "to": "101.255.255.254", "label": "ChinaNet [CN]"}, - {"from": "104.196.0.0", "to": "104.199.255.255", "m": 14, "label": "Google LLC"}, - {"from": "110.238.80.0", "to": "110.238.127.254", "label": "Huawei [SG]"}, - {"from": "111.119.192.0", "to": "111.119.255.254", "label": "Huawei [SG]"}, + {"from": "104.196.0.0", "to": "104.199.255.254", "m": 14, "label": "Google LLC"}, + {"from": "110.238.64.0", "to": "110.238.127.254", "m": 18, "label": "Huawei [SG]"}, + {"from": "111.119.192.0", "to": "111.119.255.254", "m": 18, "label": "Huawei [SG]"}, {"from": "113.160.0.0", "to": "113.191.255.254", "m": 11, "label": "VNPT [VN]"}, - {"from": "119.0.0.0", "to": "119.207.255.254", "label": "Unicom [CN]"}, - {"from": "121.91.168.", "to": "121.91.175.254", "label": "Huawei [HK]"}, + {"from": "119.8.0.0", "to": "119.8.255.254", "m": 16, "label": "Huawei [HK]"}, + {"from": "121.91.168.0", "to": "121.91.175.254", "m": 21, "label": "Huawei [HK]"}, {"from": "122.8.0.0", "to": "122.8.255.254", "label": "CN-ISP [CN]"}, - {"from": "122.9.0.0", "to": "122.9.255.254", "label": "Huawei [CN]"}, - {"from": "123.16.0.0", "to": "123.31.255.255", "m": 12, "label": "VNPT [VN]"}, - {"from": "124.243.128.0", "to": "124.243.191.254", "label": "Huawei [SG]"}, + {"from": "122.9.0.0", "to": "122.9.255.254", "m": 16, "label": "Huawei [CN]"}, + {"from": "123.16.0.0", "to": "123.31.255.254", "m": 12, "label": "VNPT [VN]"}, + {"from": "124.243.128.0", "to": "124.243.191.254", "m": 18, "label": "Huawei [SG]"}, {"from": "142.147.128.0", "to": "1142.147.255.254", "label": "Web2Objects LLC [US]"}, - {"from": "150.40.128.0", "to": "150.40.255.254", "label": "Huawei [HK]"}, - {"from": "159.138.0.0", "to": "159.138.225.254", "label": "Huawei [TH]"}, + {"from": "146.174.128.0", "to": "146.174.191.254", "m": 18, "label": "Huawei [SG]"}, + {"from": "150.40.128.0", "to": "150.40.255.254", "m": 17, "label": "Huawei [HK]"}, + {"from": "159.138.0.0", "to": "159.138.225.254", "m": 16, "label": "Huawei [TH]"}, {"from": "162.128.0.0", "to": "162.128.255.254", "label": "Zenlayer [SG]"}, - {"from": "166.108.192.0", "to": "166.108.255.254", "label": "Huawei [SG]"}, + {"from": "166.108.192.0", "to": "166.108.255.254", "m": 18, "label": "Huawei [SG]"}, {"from": "177.0.0.0", "to": "177.255.255.254", "label": "BrasilNET [BR]"}, {"from": "179.0.0.0", "to": "179.255.255.254", "label": "BrasilNET [BR]"}, - {"from": "183.87.32.0", "to": "183.87.159.254", "label": "Huawei [HK]"}, + {"from": "183.87.32.0", "to": "183.87.63.254", "label": "Huawei [HK]"}, {"from": "186.0.0.0", "to": "186.255.255.254", "m": 8, "label": "South-American ISPs (186.x)"}, {"from": "187.0.0.0", "to": "187.255.255.254", "m": 8, "label": "South-American ISPs (187.x)"}, {"from": "188.0.0.0", "to": "188.255.255.254", "m": 8, "label": "South-American ISPs (188.x)"}, diff --git a/config/known-clients.json b/config/known-clients.json index 2d30ce1..f1d94c0 100644 --- a/config/known-clients.json +++ b/config/known-clients.json @@ -5,7 +5,7 @@ }, {"n": "Opera Old", "id": "operaold", - "rx": [ "\\sOpera\\/.*?Version\\/(\\d\\d)\\.", "Opera\\/(\\d\\d)\\.", "\\sOPR\\/(\\d\\d)\\." ] + "rx": [ "\\sOpera\\/.*?Version\\/(\\d\\d)\\.", "Opera\\/(\\d\\d?)\\.", "\\sOPR\\/(\\d\\d?)\\." ] }, {"n": "Firefox on iOS", "id": "firefox", @@ -75,16 +75,16 @@ "id": "safari", "rx": [ "\\sSafari\\/(\\d+)" ] }, + {"n": "AppleWebKit", + "id": "webkit", + "rx": [ "AppleWebKit\\/(\\d*)\\." ] + }, {"n": "Firefox Old", "id": "ffold", - "rx": [ "\\sFirefox\\/(\\d\\d)\\.", "\\sFirefox\\s" ] + "rx": [ "\\sFirefox\\/(\\d\\d?)\\.", "\\sFirefox\\s" ] }, {"n": "Firefox", "id": "firefox", "rx": [ "\\sFirefox\\/(\\d\\d\\d)\\." ] - }, - {"n": "AppleWebKit", - "id": "webkit", - "rx": [ "\\sAppleWebKit\\/(\\d\\d\\d)\\." ] } ] diff --git a/config/known-ipranges.json b/config/known-ipranges.json index ca451b6..ff73d73 100644 --- a/config/known-ipranges.json +++ b/config/known-ipranges.json @@ -1,5 +1,5 @@ [ - {"from": "3.0.0.0", "to": "3.255.255.254", "label": "Amazon Data Services [US]"}, + {"from": "3.0.0.0", "to": "3.255.255.254", "m": 8, "label": "Amazon Data Services [US]"}, {"from": "8.127.0.0", "to": "8.223.255.254", "label": "Alibaba [CN]"}, {"from": "14.160.0.0", "to": "14.191.255.255", "m": 11, "label": "VNPT [VN]"}, {"from": "24.240.0.0", "to": "24.247.255.255", "m": 13, "label": "Charter [US]"}, @@ -50,5 +50,6 @@ {"from": "2603:8000::::::", "to": "2603:80ff:ffff:ffff:ffff:ffff:ffff:ffff", "m": 24, "label": "Charter [US]"}, {"from": "2607:a400::::::", "to": "2607:a400:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Zenlayer Inc. [US]"}, {"from": "2804:::::::", "to": "2804:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", "m": 16, "label": "Inspire [BR]"}, + {"from": "2a09:bac2::::::", "to": "2a09:bac2:0:ffff:ffff:ffff:ffff:ffff", "m": 48, "label": "Cloudflare"}, {"from": "2a0a:4cc0::::::", "to": "2a0a:4cc0:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF", "label": "Netcup [DE]"} ] \ No newline at end of file diff --git a/config/known-platforms.json b/config/known-platforms.json index 817432e..df8d910 100644 --- a/config/known-platforms.json +++ b/config/known-platforms.json @@ -13,7 +13,7 @@ }, {"n": "iOS/iPadOS", "id": "ios", - "rx": [ "\\sFxiOS\\/(\\d+\\.\\d+)\\s", "\\siPhone\\sOS\\s([\\d\\._]+)\\s", "\\siPadOS\\s([\\d\\._]+)\\s", "iPad; CPU OS (\\d+)[_\\.\\s]", "\\sCriOS\\/(\\d+\\.\\d+)\\." ] + "rx": [ "\\sFxiOS\\/(\\d+\\.\\d+)\\s", "\\siPhone\\sOS\\s([\\d\\._]+)\\s", "\\siPad\\s?OS\\s([\\d\\._]+)\\s", "iPad; CPU OS (\\d+)[_\\.\\s]", "\\sCriOS\\/(\\d+\\.\\d+)\\." ] }, {"n": "FireOS", "id": "fire", @@ -37,7 +37,7 @@ }, {"n": "Vintage Windows", "id": "winold", - "rx": [ "\\(Windows NT (\\d\\.\\d)[;\\s\\)]","Windows (\\d\\.\\d)[;\\s]" ] + "rx": [ "[\\(\\s]Windows NT (\\d\\.?\\d*)[;\\s\\)]","Windows (\\d+\\.?\\d+?)[;\\s]","Windows (\\d\\d)[;\\s\\)]","Windows (CE)" ] }, {"n": "Tizen", "id": "tizen", diff --git a/img/clients.png b/img/clients.png index 50f8a30..6e59da9 100644 Binary files a/img/clients.png and b/img/clients.png differ diff --git a/style.less b/style.less index f3d4375..6c9e4ac 100644 --- a/style.less +++ b/style.less @@ -94,6 +94,7 @@ &.cl_chromeold::before { background-position-y: -320px } &.cl_ecosia::before { background-position-y: -340px } &.cl_webkit::before { background-position-y: -360px } + &.cl_operaold::before { background-position-y: -380px } &.cl_other::before { background-image: url('img/more.svg') } /* Country flags */