From d4ff75e4797350d1ed76a169f3f157c4eedfccf7 Mon Sep 17 00:00:00 2001 From: Cole Smith Date: Mon, 25 Mar 2024 15:42:56 +0000 Subject: [PATCH] OP#278: ignore ips in 0.0.0.0/8 range --- src/FileReader.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/FileReader.ts b/src/FileReader.ts index 133300b..b12415b 100644 --- a/src/FileReader.ts +++ b/src/FileReader.ts @@ -1,6 +1,7 @@ import * as Binary from "./BinaryOption"; import IPQSRecord from "./IPQSRecord"; import Column from "./Column"; +import Address4 from 'ip-address'; export default class FileReader { public fileHandler?: number; @@ -53,6 +54,15 @@ export default class FileReader { record.recordError = new Error("Attemtped to look up IPv6 using IPv4 database file. Aborting."); } + if(this.IPv6 === false) { + const subnet = new Address4('0.0.0.0/8'); + const incomingIP = new Address4(ip); + + if (subnet.contains(incomingIP)) { + record.recordError = new Error("Attempted to look up ip in 0.0.0.0/8 range. Aborting."); + } + } + if(record.recordError === null){ record.fetch(ip); }