The explanation block should probably be moved to the `getClientIp()` method as people should mostly use it instead of this one. You should also add a `@see getClientIp`.