UNPKG

netkitty

Version:
29 lines (28 loc) 808 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IPv4ToBuffer = IPv4ToBuffer; exports.IPv6ToBuffer = IPv6ToBuffer; const ip_address_1 = require("ip-address"); const NumberToBuffer_1 = require("./NumberToBuffer"); /** * Convert IPv4 string to Buffer * @param ipv4 * @constructor */ function IPv4ToBuffer(ipv4) { const numArr = ipv4.split('.').map((value) => parseInt(value)).map((value) => value ? value : 0); return (0, NumberToBuffer_1.UInt32ToBuffer)(parseInt(Buffer.from(numArr).toString('hex'), 16)); } /** * Convert IPv6 string to Buffer * @param ipv6 * @constructor */ function IPv6ToBuffer(ipv6) { try { return Buffer.from(new ip_address_1.Address6(ipv6).toByteArray()); } catch (e) { return Buffer.alloc(16, 0); } }