feat: support IPv6 /64 range in white IP validation

- Split IP validation logic for IPv4 and IPv6 addresses
- Add specific validation for IPv6 to allow only single addresses (/128) or /64 ranges
- Remove old network address calculation for IPv6
- Keep IPv4 address limit validation unchanged
- Add localization for new IPv6 validation error message
- Add test coverage for IPv6 validation:
  * Test for valid /64 range
  * Test for valid single address
  * Test for invalid ranges (/48 and /96)
This commit is contained in:
oleghasjanov 2025-03-24 15:16:10 +02:00
parent 66619f12fe
commit bc01dfaa3a
3 changed files with 65 additions and 19 deletions

View file

@ -155,6 +155,7 @@ en:
ipv4_or_ipv6_must_be_present: 'IPv4 or IPv6 must be present'
ip_must_be_one: 'Please enter only one IP address'
ip_limit_exceeded: 'IP address limit exceeded. Total addresses: %{total}. Limit: %{limit}.'
ipv6_must_be_single_or_64_range: 'IPv6 address must be either a single address or a /64 range'
ipv4:
taken: 'has already been taken'
ipv6: