lionsoul2014/ip2region · error · Error
invalid ipv6 part '${ps[i]}', a valid hex number expected
Error message
invalid ipv6 part '${ps[i]}', a valid hex number expected What it means
Group-level parse failure in the IPv6 parser: a non-empty colon-separated group failed parseInt(group, 16), i.e. it is not a valid hexadecimal number (e.g. '2001:zz::1').
Source
Thrown at binding/javascript/util.js:119
}
if (i >= mi) {
break;
}
i++;
}
dc_num = 1;
// padding = 8 - start - left
let padding = 8 - start - (mi - i);
offset += 2 * padding;
continue;
}
let v = parseInt(s, 16);
if (isNaN(v)) {
throw new Error(`invalid ipv6 part '${ps[i]}', a valid hex number expected`);
}
if (v < 0 || v > 0xFFFF) {
throw new Error(`invalid ipv6 part '${ps[i]}' should >= 0 and <= 65534`);
}
ipBytes.writeUint16BE(v, offset);
offset += 2;
}
return ipBytes;
}
// parse the specified string ip and return its bytes
// @param ip string
// @return Buffer
export function parseIP(ipString) {View on GitHub (pinned to c1a1fc7d59)
Solutions
- Correct the group so each part is 1-4 hex digits
- Pre-validate with net.isIPv6 before calling the searcher
- Remove stray characters or whitespace inside the address string
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at binding/javascript/util.js:119 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of lionsoul2014/ip2region@c1a1fc7d59 (2026-09-02).
Data as JSON: /api/errors/239705d57970b617.
Report an issue: GitHub.