@catho/request-public-ip
Version:
Node.js module for retrieving a request's public IP address
22 lines (17 loc) • 646 B
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var index = require('../node_modules/private-ip/lib/index.js');
var index$1 = require('../node_modules/ip-regex/index.js');
var ipaddr = require('../node_modules/ipaddr.js/lib/ipaddr.js');
function isPublicIp(ip) {
return isIp(ip) && !index["default"](ip);
}
function isIp(str) {
if (!ipaddr["default"].isValid(str)) {
return false;
}
const kind = ipaddr["default"].parse(str).kind();
return kind === "ipv4" ? index$1["default"].v4().test(str) : index$1["default"].v6().test(str);
}
exports.isIp = isIp;
exports.isPublicIp = isPublicIp;