Extension:IPInfo

From mediawiki.org
MediaWiki extensions manual
OOjs UI icon advanced-invert.svg
IPInfo
Release status: experimental
Author(s) Wikimedia Anti-harassment tools team
Latest version 0.0.0
Compatibility policy Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki >= 1.38.0
Database changes Yes
License MIT License
Download
  • $wgIPInfoGeoLite2Prefix
  • $wgIPInfoGeoIP2EnterprisePath
Translate the IPInfo extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

The IP Info extension is a forthcoming feature for displaying IP information to help trusted users in their anti-vandalism workflows. The IP Information feature is being built by the Anti-harassment tools team as part of the IP masking project.

Features[edit]

The IP Information feature displays information about an IP address that would otherwise only be available from external tools.

Information buttons are added next to IP addresses on history pages, the Special:Log page, the Special:RecentChanges page and the Special:Watchlist page. Clicking on these buttons displays a popup with the information.

The same information is also added to the top of the Special:Contributions page for an IP address.

When a user views IP information from the information box or popup and when they enable or disable the IP Info extension using the Special:Preferences page, these activities are tracked on the Special:Log page. Users with assigned privileges can access the IP information log.

Installation[edit]

  • Download and place the file(s) in a directory called IPInfo in your extensions/ folder.
  • Only when installing from Git, run Composer to install PHP dependencies, by issuing composer install --no-dev in the extension directory. (See task T173141 for potential complications.)
  • Add the following code at the bottom of your LocalSettings.php :
    wfLoadExtension( 'IPInfo' );
    
  • Yes Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

Granting rights to use the IP Information feature[edit]

The IP Information feature is available to users who have the ipinfo right. To grant this right to all administrators on your wiki, add the following to LocalSettings.php:

$wgGroupPermissions['sysop']['ipinfo'] = true;

Once a user has this right, they will also need to enable the feature via Special:Preferences by checking the checkbox in the IP Information section of the User profile tab. Other rights are also available that allow a user to view basic, full and log information. To grant them add the following to LocalSettings.php:

$wgGroupPermissions['sysop']['ipinfo-view-basic'] = true

Gives the user the right to view some IP information.

$wgGroupPermissions['sysop']['ipinfo-view-full'] = true;

Gives the user the right to view full IP information.

$wgGroupPermissions['sysop']['ipinfo-view-log'] = true;

Gives the user the right to view logs on IP information.

Usage[edit]

Enabling the extension

Step 1:

screenshot
Accessing IPInfo extension through Beta Menu
  • Navigate to the upper right corner of the page (you must be logged in and Beta features enabled) and click on the person and beta icons as shown.


  • This action will take you to the Special:Preferences#mw-prefsection-betafeatures page with the Beta Features tab selected.
  • Locate the IP Information Extension in the list of extensions, tick the box to enable or deactivate it. To complete the modifications, click the Save button as shown.

Step 2:

screenshot
User profile tab
  • On the Special:Preferences page, click on the User profile tab as shown.


screenshot
IPInfo checkbox
  • Scroll down to the IP Information section and check the box as shown. Click the Save button to complete the modifications.


Utilizing the extension

screenshot
IPInfo Search Form
  • Navigate to the Special:Contributions page, enter a valid IP address and click the search button as shown.


screenshot
IPInfo Enable User Agreement
  • This action will prompt you to accept the use of the IP Info extension. Accept the agreement by checking the box and clicking on the Enable IP Information tool as shown.


screenshot
IP Information
  • This will now enable you to see pertinent information about IP Addresses such as: Location, ASN, etc.


screenshot
No Edits from IP
  • If no edits have been made with that IP address an error will occur as shown.


screenshot
IP information pop-up on logs page
  • The IP Information can be found on popups on the Special:Log page as shown.
screenshot
IP information pop-up on View History page
  • The IP Information can also be found on popups on the View History page as shown.
screenshot
IP information error no data on logs page
  • If no data is available, an error is displayed as shown.

Data[edit]

The IP Info extension currently supports displaying data from MaxMind's GeoIP2 databases. The databases must be added to your server, and the $wgIPInfoGeoLite2Prefix configuration variable must be set to the patch for these files, including the common prefix of the filenames (see the test data example).

Free test data[edit]

For development environments, free test data is available from https://dev.maxmind.com/geoip/geoip2/geolite2/. Download these databases, and move all the .mmdb files into the same directory. Then set the $wgIPInfoGeoLite2Prefix variable to the path to the directory containing the .mmdb files, plus the prefix GeoLite2-. Do this by adding the following to LocalSettings.php:

 $wgIPInfoGeoLite2Prefix = '$pathToDir/GeoLite2-';

replacing $pathToDir with the path to the directory containing the .mmdb files.

Note that the test databases only have data for a few IP addresses. For IP addresses that are not in the test database, the data will appear as not available when you view the IP information.

[edit]

For development environments, we support the enterprise database data is available from https://www.maxmind.com/en/solutions/geoip2-enterprise-product-suite/enterprise-database and anonymous ip database https://www.maxmind.com/en/solutions/geoip2-enterprise-product-suite/anonymous-ip-database

Download these databases; GeoIP2 Anonymous IP(GZIP) and GeoIP2 Enterprise(ZIP) respectively. Extract them and move all the .mmdb files into the same directory.

Then set the $wgIPInfoGeoIP2EnterprisePath variable to the path to the directory containing the .mmdb files. Do this by adding the following to LocalSettings.php:

$wgIPInfoGeoIP2EnterprisePath = '$pathToDir';

replacing $pathToDir with the path to the directory containing the .mmdb files. Note that, unlike with the free data, you should not include a prefix.

Configuration[edit]

Setting name Default value Description
$wgIPInfoGeoLite2Prefix false Path to the directory containing GeoIP2 database files, plus the prefix GeoLite2-
$wgIPInfoGeoIP2EnterprisePath false Path to the directory containing GeoIP2 Enterprise database files