Mapping API: Improve IP address validation

Until now, IP addresses were only checked for four dots, which
allowed invalid values like 127.0.0.111111

This adds an additional check for validation.

**Note**: This does have a performance impact in the log file indexing case as it adds an additional parsing step. Maybe this was the reason, why it had not been implemented in the first case? We could potentially just reuse the code from guavas `InetAddresses.textToNumericFormatV4()` which is unfortunately private

Closes #7131
Wondering why we need to keep that test. `InetAddresses.isInetAddress()` does not do it?

Another way for catching specifically your issue could be to control all octets size?

```java
            if (octets.length != 4 || octets[0].length() > 3 || octets[1].length() > 3 || octets[2].length() > 3 || octets[3].length() > 3) {
                throw new ElasticsearchIllegalArgumentException("failed to parse ip [" + ip + "], not full ip address (4 dots)");
            }
```