Page MenuHomePhabricator

Find rangeblocks exceeding $wgBlockCIDRLimit to review/lift them
Closed, ResolvedPublic

Description

https://ru.wikiquote.org/wiki/Special:Redirect/logid/222600

2000::/3 is blocked on ru.wikiquote.

If the contents of https://www.mediawiki.org/wiki/Help:Range_blocks/IPv6#Range_table are correct, this block is affecting 42,535,295,865,117,307,932,921,825,928,921,026,432 addresses (42 undecillion ++); which I suspect it means no one over IPv6 will be able to edit, unless the block is not applying "in the background" (I mean: the log entry somewhat got created but the block is not really being applied despite appearing too in Special:BlockList).

https://www.mediawiki.org/wiki/Manual:$wgBlockCIDRLimit prevents IPv6 rangeblocks greater than /19 to be applied, so I'm not sure how this is even possible.

Edit: Considering that the issue reported might be a leftover of a previous (now fixed) issue; I'm converting to ask if we could have a list of such blocks currently in force so they can be reviewed or removed.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJan 31 2020, 12:54 AM
DannyS712 added a subscriber: DannyS712.
MarcoAurelio renamed this task from $wgBlockCIDRLimit: 2000::/3 is blocked on ru.wikisource, and that shouldn't have been possible to $wgBlockCIDRLimit: 2000::/3 is blocked on ru.wikiquote, and that shouldn't have been possible.Jan 31 2020, 1:02 AM
MarcoAurelio updated the task description. (Show Details)

Related: T199540: Forbid blocking IP ranges as big as /1 and /2, as done on ruwikiquote using the API I guess.

Is this block still applying to the wiki? If so, it should be removed.

Given how old the block is, I suspect it is simple left over from when such blocks were indeed allowed.
I suggest unblocking and marking as resolved, to be reopened if such a block appears in the future.
I tried to block via the api such a large range, and as expected it failed

I think I agree it's a leftover after I found the task. Can a query be launched against the wikis to know how many of this blocks do exist across the wikis? If there are too many, maybe a rEWMA extension-WikimediaMaintenance script might be crafted to go wiki-by-wiki and remove this kind of blocks? Thanks.

MarcoAurelio renamed this task from $wgBlockCIDRLimit: 2000::/3 is blocked on ru.wikiquote, and that shouldn't have been possible to Find rangeblocks exceeding $wgBlockCIDRLimit to review/lift them.Jan 31 2020, 11:35 AM
MarcoAurelio updated the task description. (Show Details)
MarcoAurelio removed a project: IPv6.
Urbanecm claimed this task.Feb 3 2020, 8:48 AM
Restricted Application added a project: User-Urbanecm. · View Herald TranscriptFeb 3 2020, 8:48 AM

Here you are. @MarcoAurelio, could you unblock 'em (or leave a message to the admins)?

FTR, generated with this script

Bonechance closed this task as Declined.Feb 4 2020, 5:09 AM
Bonechance changed the task status from Declined to Invalid.Feb 4 2020, 5:11 AM
Bonechance updated the task description. (Show Details)
JJMC89 reopened this task as Open.Feb 4 2020, 5:13 AM
JJMC89 updated the task description. (Show Details)
AMooney added a subscriber: AMooney.

Untagged Core Platform Team Workboards (Clinic Duty Team).

Here you are.

Thanks!

@MarcoAurelio, could you unblock 'em (or leave a message to the admins)?

I'm not sure. Maybe we could have them unblocked using some sort of automated process as part of technical maintenance? Ping to @Jdforrester-WMF for advice.

Don't think there's a mass un-block script, so if you want one you'd have to write one. :-(

I think it would be easier to unblock them via API. Question probably is if it should be done by a sysadmin, or a steward. As you probably know, stewards don't usually act on wikis with locals.

I think it would be easier to unblock them via API. Question probably is if it should be done by a sysadmin, or a steward. As you probably know, stewards don't usually act on wikis with locals.

Yep. I think this is better handled as part of a system admin cleanup drive or something like that. I'm not sure involving locals would be effective. IMHO it'll place an undue burden on the person/people having to go wiki by wiki asking and providing a list of those blocks so they can manually unblock them. The maintenance script path by @Jdforrester-WMF looks the more appropriate way to me. This doesn't look controversial to me either. Those blocks are technically no longer possible, and should not continue to apply either. Let's have User:Maintenance script lift them? Just my two cents, not forcing anyone to agree with me here. Thanks.

Hmm you're right. Writing a script is probably a more proper solution than anything else we can do. Let's practice my MW skills

Change 582924 had a related patch set uploaded (by Urbanecm; owner: Urbanecm):
[mediawiki/core@master] Add a blockBatch.php script capable of both blocking and unblocking

https://gerrit.wikimedia.org/r/582924

I crafted this simple unblock script using the old way, while the script above is blocked on moving block logic to services. I also run it for both ruwiki and ruwikiquote, with targets from this JSON file:

The JSON is an updated output of the script from above, its current version is:

I'll also send an announcement to the affected wikis. I think we can call this resolved now.

Mentioned in SAL (#wikimedia-operations) [2020-08-27T11:56:01Z] <Urbanecm> Lift range blocks exceeding wgBlockCIDRLimit via custom script from F32197596 (ruwiki, ruwikiquote; T243980)

Urbanecm closed this task as Resolved.Aug 27 2020, 12:06 PM

@MarcoAurelio Should be all done.

Announcements:

Thanks for filling this.