Getting ready for 23.09 release
This commit is contained in:
@@ -67,7 +67,8 @@
|
|||||||
{"from": "5.161.0.0", "to": "5.161.255.255", "m": 16, "label": "Hetzner [US]"},
|
{"from": "5.161.0.0", "to": "5.161.255.255", "m": 16, "label": "Hetzner [US]"},
|
||||||
{"from": "8.127.0.0", "to": "8.223.255.254", "label": "Alibaba [CN]"},
|
{"from": "8.127.0.0", "to": "8.223.255.254", "label": "Alibaba [CN]"},
|
||||||
{"from": "14.160.0.0", "to": "14.191.255.254", "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": "14.192.0.0", "to": "14.255.255.254", "m": 10, "label": "VNPT [VN]"},
|
||||||
|
{"from": "14.224.0.0", "to": "24.255.255.254", "m": 11, "label": "Charter [US]"},
|
||||||
{"from": "27.106.0.0", "to": "27.106.127.254", "m": 17, "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": "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.132.0.0", "to": "43.132.255.254", "m": 16, "label": "Tencent [CN]"},
|
||||||
@@ -75,31 +76,37 @@
|
|||||||
{"from": "45.0.0.0", "to": "45.255.255.254", "label": "Various small ISPs, mostly BR"},
|
{"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", "m": 19, "label": "Huawei [MX]"},
|
{"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": "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": "49.0.192.0", "to": "49.0.255.254", "m": 18, "label": "Huawei [SG]"},
|
||||||
{"from": "52.220.0.0", "to": "52.222.255.254", "label": "Amazon Data Services"},
|
{"from": "52.220.0.0", "to": "52.222.255.254", "label": "Amazon Data Services"},
|
||||||
{"from": "66.249.64.0", "to": "66.249.95.254", "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": "84.37.35.0", "to": "84.37.255.254", "label": "GTT.net [US]"},
|
||||||
{"from": "94.74.64.0", "to": "94.74.127.254", "m": 18, "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": "101.0.0.0", "to": "101.255.255.254", "m": 8,"label": "ChinaNet [CN]"},
|
||||||
{"from": "104.196.0.0", "to": "104.199.255.254", "m": 14, "label": "Google LLC"},
|
{"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": "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": "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": "113.160.0.0", "to": "113.191.255.254", "m": 11, "label": "VNPT [VN]"},
|
||||||
{"from": "119.8.0.0", "to": "119.8.255.254", "m": 16, "label": "Huawei [HK]"},
|
{"from": "119.8.0.0", "to": "119.8.255.254", "m": 16, "label": "Huawei [HK]"},
|
||||||
|
{"from": "119.13.0.0", "to": "119.13.255.254", "m": 16, "label": "Huawei [HK]"},
|
||||||
{"from": "121.91.168.0", "to": "121.91.175.254", "m": 21, "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.8.0.0", "to": "122.8.255.254", "label": "CN-ISP [CN]"},
|
||||||
{"from": "122.9.0.0", "to": "122.9.255.254", "m": 16, "label": "Huawei [CN]"},
|
{"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": "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": "124.243.128.0", "to": "124.243.191.254", "m": 18, "label": "Huawei [SG]"},
|
||||||
|
{"from": "138.59.0.0", "to": "138.59.225.254", "m": 16, "label": "South-American ISPs (138.59.x)"},
|
||||||
|
{"from": "138.121.0.0", "to": "138.121.225.254", "m": 16, "label": "South-American ISPs (138.121.x)"},
|
||||||
{"from": "142.147.128.0", "to": "1142.147.255.254", "m": 17, "label": "Web2Objects LLC [US]"},
|
{"from": "142.147.128.0", "to": "1142.147.255.254", "m": 17, "label": "Web2Objects LLC [US]"},
|
||||||
{"from": "146.174.128.0", "to": "146.174.191.254", "m": 18, "label": "Huawei [SG]"},
|
{"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": "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": "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": "162.128.0.0", "to": "162.128.255.254", "m": 16, "label": "Zenlayer [SG]"},
|
||||||
{"from": "166.108.192.0", "to": "166.108.255.254", "m": 18, "label": "Huawei [SG]"},
|
{"from": "166.108.192.0", "to": "166.108.255.254", "m": 18, "label": "Huawei [SG]"},
|
||||||
{"from": "171.224.0.0", "to": "171.239.255.255", "m": 12, "label": "Viettel [VN]"},
|
{"from": "168.232.192.0", "to": "168.232.255.254", "m": 16, "label": "South-American ISPs (168.232.x)"},
|
||||||
{"from": "177.0.0.0", "to": "177.255.255.254", "label": "BrasilNET [BR]"},
|
{"from": "170.82.0.0", "to": "170.82.255.254", "m": 16, "label": "South-American ISPs (170.254.x)"},
|
||||||
{"from": "179.0.0.0", "to": "179.255.255.254", "label": "BrasilNET [BR]"},
|
{"from": "170.254.0.0", "to": "170.254.255.254", "m": 16, "label": "South-American ISPs (170.82.x)"},
|
||||||
|
{"from": "171.224.0.0", "to": "171.239.255.254", "m": 12, "label": "Viettel [VN]"},
|
||||||
|
{"from": "177.0.0.0", "to": "177.255.255.254", "m": 8, "label": "BrasilNET [BR]"},
|
||||||
|
{"from": "179.0.0.0", "to": "179.255.255.254", "m": 8, "label": "BrasilNET [BR]"},
|
||||||
{"from": "183.87.32.0", "to": "183.87.63.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": "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": "187.0.0.0", "to": "187.255.255.254", "m": 8, "label": "South-American ISPs (187.x)"},
|
||||||
@@ -108,11 +115,15 @@
|
|||||||
{"from": "190.0.0.0", "to": "190.255.255.254", "m": 8, "label": "South-American ISPs (190.x)"},
|
{"from": "190.0.0.0", "to": "190.255.255.254", "m": 8, "label": "South-American ISPs (190.x)"},
|
||||||
{"from": "191.0.0.0", "to": "191.255.255.254", "m": 8, "label": "South-American ISPs (191.x)"},
|
{"from": "191.0.0.0", "to": "191.255.255.254", "m": 8, "label": "South-American ISPs (191.x)"},
|
||||||
{"from": "192.124.170.0", "to": "192.124.182.254", "label": "Relcom [CZ]"},
|
{"from": "192.124.170.0", "to": "192.124.182.254", "label": "Relcom [CZ]"},
|
||||||
{"from": "195.37.0.0", "to": "195.37.255.255", "m": 16, "label": "DFN [DE]"},
|
{"from": "195.37.0.0", "to": "195.37.255.254", "m": 16, "label": "DFN [DE]"},
|
||||||
|
{"from": "200.0.0.0", "to": "200.255.255.254", "m": 8, "label": "South-American ISPs (200.x)"},
|
||||||
|
{"from": "201.0.0.0", "to": "201.255.255.254", "m": 8, "label": "South-American ISPs (201.x)"},
|
||||||
|
{"from": "212.95.128.0", "to": "212.95.159.254", "m": 19, "label": "Asiacell [IQ]"},
|
||||||
|
{"from": "222.252.0.0", "to": "222.252.255.254", "m": 14, "label": "VNPT [VN]"},
|
||||||
{"from": "2001:4860::::::", "to": "2001:4860:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Google LLC [US]"},
|
{"from": "2001:4860::::::", "to": "2001:4860:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Google LLC [US]"},
|
||||||
{"from": "2001:0ee0::::::", "to": "2001:ee3:ffff:ffff:ffff:ffff:ffff:ffff", "m": 30, "label": "VNPT [VN]"},
|
{"from": "2001:0ee0::::::", "to": "2001:ee3:ffff:ffff:ffff:ffff:ffff:ffff", "m": 30, "label": "VNPT [VN]"},
|
||||||
{"from": "2408:8210::::::", "to": "2408:8210:ffff:ffff:ffff:ffff:ffff:ffff", "m": 30, "label": "China Unicom [CN]"},
|
{"from": "2408:8210::::::", "to": "2408:8210:ffff:ffff:ffff:ffff:ffff:ffff", "m": 30, "label": "China Unicom [CN]"},
|
||||||
{"from": "2600:1f00::::::", "to": "2600:1fff:ffff:ffff:ffff:ffff:ffff:ffff", "m": "Amazon Cloud"},
|
{"from": "2600:1f00::::::", "to": "2600:1fff:ffff:ffff:ffff:ffff:ffff:ffff", "m": 24, "label": "Amazon Cloud"},
|
||||||
{"from": "2603:6010::::::", "to": "2603:6010:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Charter [US]"},
|
{"from": "2603:6010::::::", "to": "2603:6010:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Charter [US]"},
|
||||||
{"from": "2603:8000::::::", "to": "2603:80ff:ffff:ffff:ffff:ffff:ffff:ffff", "m": 24, "label": "Charter [US]"},
|
{"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": "2607:a400::::::", "to": "2607:a400:ffff:ffff:ffff:ffff:ffff:ffff", "m": 32, "label": "Zenlayer Inc. [US]"},
|
||||||
|
|||||||
@@ -52,6 +52,12 @@
|
|||||||
"rx": ["Slurp[\\s;\\)]"],
|
"rx": ["Slurp[\\s;\\)]"],
|
||||||
"url": "http://help.yahoo.com/help/us/ysearch/slurp"
|
"url": "http://help.yahoo.com/help/us/ysearch/slurp"
|
||||||
},
|
},
|
||||||
|
{"id": "yahoo",
|
||||||
|
"n": "Yahoo! Link Preview",
|
||||||
|
"r": [],
|
||||||
|
"rx": ["Yahoo Link Preview;"],
|
||||||
|
"url": "https://help.yahoo.com/kb/mail/yahoo-link-preview-SLN23615.html"
|
||||||
|
},
|
||||||
{"id": "ddg",
|
{"id": "ddg",
|
||||||
"n": "DuckDuck Bot",
|
"n": "DuckDuck Bot",
|
||||||
"r": ["DuckDuckBot","DuckAssistBot","DuckDuckGo-Favicons-Bot"],
|
"r": ["DuckDuckBot","DuckAssistBot","DuckDuckGo-Favicons-Bot"],
|
||||||
|
|||||||
@@ -8,8 +8,8 @@
|
|||||||
"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",
|
{"n": "Firefox on iOS",
|
||||||
"id": "firefox",
|
"id": "ffios",
|
||||||
"rx": [ "\\sFxiOS\\/(\\d+)\\." ]
|
"rx": [ "\\sFxiOS\\/(\\d+)[\\.\\s;]" ]
|
||||||
},
|
},
|
||||||
{"n": "AOL Explorer",
|
{"n": "AOL Explorer",
|
||||||
"id": "aol",
|
"id": "aol",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
base botmon
|
base botmon
|
||||||
author Sascha Leib
|
author Sascha Leib
|
||||||
email ad@hominem.com
|
email ad@hominem.com
|
||||||
date 2025-09-21
|
date 2025-09-23
|
||||||
name Bot Monitoring
|
name Bot Monitoring
|
||||||
desc A tool for monitoring and analysing bot traffic to your wiki (under development)
|
desc A tool for monitoring and analysing bot traffic to your wiki (under development)
|
||||||
url https://www.dokuwiki.org/plugin:botmon
|
url https://www.dokuwiki.org/plugin:botmon
|
||||||
|
|||||||
34
script.js
34
script.js
@@ -1329,8 +1329,9 @@ BotMon.live = {
|
|||||||
|
|
||||||
// is the IP address from a known bot network?
|
// is the IP address from a known bot network?
|
||||||
fromKnownBotIP: function(visitor) {
|
fromKnownBotIP: function(visitor) {
|
||||||
|
//console.info('fromKnownBotIP()', visitor.ip);
|
||||||
|
|
||||||
const ipInfo = BotMon.live.data.rules.getBotIPInfo(visitor.ip);
|
const ipInfo = BotMon.live.data.ipRanges.match(visitor.ip);
|
||||||
|
|
||||||
if (ipInfo) {
|
if (ipInfo) {
|
||||||
visitor._ipInKnownBotRange = true;
|
visitor._ipInKnownBotRange = true;
|
||||||
@@ -1406,32 +1407,7 @@ BotMon.live = {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
},
|
|
||||||
|
|
||||||
/* known bot IP ranges: */
|
|
||||||
_botIPs: [],
|
|
||||||
|
|
||||||
// return information on a bot IP range:
|
|
||||||
getBotIPInfo: function(ip) {
|
|
||||||
|
|
||||||
// shortcut to make code more readable:
|
|
||||||
const me = BotMon.live.data.rules;
|
|
||||||
|
|
||||||
// convert IP address to easier comparable form:
|
|
||||||
const ipNum = BotMon.t._ip2Num(ip);
|
|
||||||
|
|
||||||
for (let i=0; i < me._botIPs.length; i++) {
|
|
||||||
const ipRange = me._botIPs[i];
|
|
||||||
|
|
||||||
if (ipNum >= ipRange.from && ipNum <= ipRange.to) {
|
|
||||||
return ipRange;
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
return null;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2164,8 +2140,10 @@ BotMon.live = {
|
|||||||
|
|
||||||
const row1 = make('div', {'class': 'row'});
|
const row1 = make('div', {'class': 'row'});
|
||||||
|
|
||||||
row1.appendChild(make('span', { // page id is the left group
|
row1.appendChild(make('a', { // page id is the left group
|
||||||
'data-lang': page.lang,
|
'href': DOKU_BASE + 'doku.php?id=' + encodeURIComponent(page.pg),
|
||||||
|
'target': 'preview',
|
||||||
|
'hreflang': page.lang,
|
||||||
'title': "PageID: " + page.pg
|
'title': "PageID: " + page.pg
|
||||||
}, page.pg)); /* DW Page ID */
|
}, page.pg)); /* DW Page ID */
|
||||||
|
|
||||||
|
|||||||
10
style.less
10
style.less
@@ -78,7 +78,7 @@
|
|||||||
|
|
||||||
/* browser icons */
|
/* browser icons */
|
||||||
&.client::before { background-image: url('img/clients.png') }
|
&.client::before { background-image: url('img/clients.png') }
|
||||||
&.cl_firefox::before { background-position-y: -20px }
|
&.cl_firefox::before, &.cl_ffios::before { background-position-y: -20px }
|
||||||
&.cl_safari::before { background-position-y: -40px }
|
&.cl_safari::before { background-position-y: -40px }
|
||||||
&.cl_chrome::before { background-position-y: -60px }
|
&.cl_chrome::before { background-position-y: -60px }
|
||||||
&.cl_msedge::before { background-position-y: -80px }
|
&.cl_msedge::before { background-position-y: -80px }
|
||||||
@@ -199,7 +199,7 @@
|
|||||||
&.ctry_hr::before { background-position-y: -2181px }
|
&.ctry_hr::before { background-position-y: -2181px }
|
||||||
&.ctry_ht::before { background-position-y: -2201px }
|
&.ctry_ht::before { background-position-y: -2201px }
|
||||||
&.ctry_hu::before { background-position-y: -2221px }
|
&.ctry_hu::before { background-position-y: -2221px }
|
||||||
&.ctry_mc::before { background-position-y: -2241px }
|
&.ctry_id::before, &.ctry_mc::before { background-position-y: -2241px }
|
||||||
&.ctry_ie::before { background-position-y: -2261px }
|
&.ctry_ie::before { background-position-y: -2261px }
|
||||||
&.ctry_il::before { background-position-y: -2281px }
|
&.ctry_il::before { background-position-y: -2281px }
|
||||||
&.ctry_im::before { background-position-y: -2301px }
|
&.ctry_im::before { background-position-y: -2301px }
|
||||||
@@ -600,14 +600,14 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
span[data-lang] {
|
a[hreflang] {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
padding: 2pt 0 0 2pt;
|
padding: 2pt 0 0 2pt;
|
||||||
|
|
||||||
}
|
}
|
||||||
span[data-lang]::after {
|
a[hreflang]::after {
|
||||||
content: attr(data-lang);
|
content: attr(hreflang);
|
||||||
font-size: smaller;
|
font-size: smaller;
|
||||||
color: #666;
|
color: #666;
|
||||||
border: #666 solid 1px;
|
border: #666 solid 1px;
|
||||||
|
|||||||
Reference in New Issue
Block a user