=== IP Block List ===
Contributors: snehalpancholi
Tags: security, ip block, firewall, access control, block ip
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.1
Stable tag: 1.0.0
License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Block access from specific IP addresses or CIDR ranges. Choose to block the full site, login area only, or login + comments.

== Description ==

IP Block List lets you create a deny-list of individual IP addresses and CIDR subnets. Blocked visitors receive either a plain HTTP 403 response or a customisable message page. The admin sees their own IP on the settings page to avoid accidental self-lockout.

**Features**

* Supports both exact IPs and CIDR ranges (e.g., 10.0.0.0/8)
* Three block scopes: entire site, wp-login/wp-admin, or login + comments
* Configurable response: readable message page or bare 403
* Admin override — keeps logged-in administrators accessible
* Resolves real visitor IP behind reverse proxies
* Displays your current IP prominently to prevent self-lockout

== Installation ==

1. Upload `ip-block-list` to `/wp-content/plugins/`.
2. Activate in **Plugins → Installed Plugins**.
3. Navigate to **Settings → IP Block List** to configure.

== Frequently Asked Questions ==

= Can I block an entire country? =
You would need to obtain the IP ranges for that country and paste them in as CIDR entries. There is no built-in geo-IP lookup.

= Does it support IPv6? =
The current version handles IPv4 addresses and CIDR ranges only. IPv6 entries are silently skipped.

= I accidentally blocked myself — how do I recover? =
Deactivate the plugin via FTP/SFTP by renaming the plugin folder, or connect from a different IP and remove your IP from the list.

== Changelog ==

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.0.0 =
Initial release.
