From patchwork Sun Oct 18 03:17:38 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Spencer Norton X-Patchwork-Id: 10411 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1 raw public key) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "YR1" (not verified)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4j6kQ637Ntz3wfB for ; Sun, 18 Oct 2026 03:17:50 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [IPv6:2001:678:b28::201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bit raw public key) server-digest SHA256 client-signature ECDSA (secp384r1) client-digest SHA384) (Client CN "mail02.haj.ipfire.org", Issuer "YE2" (not verified)) by mail01.ipfire.org (Postfix) with ESMTPS id 4j6kQ52NWXz7Bt for ; Sun, 18 Oct 2026 03:17:49 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [IPv6:::1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4j6kQ44syPz36WN for ; Sun, 18 Oct 2026 03:17:48 +0000 (UTC) X-Original-To: location@lists.ipfire.org Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1 raw public key) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "YR1" (not verified)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4j6kQ375GBz2xNq for ; Sun, 18 Oct 2026 03:17:47 +0000 (UTC) Received: from CH4PR04CU002.outbound.protection.outlook.com (mail-northcentralusazlp170130007.outbound.protection.outlook.com [IPv6:2a01:111:f403:c105::7]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange secp256r1 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mail.protection.outlook.com", Issuer "DigiCert SHA2 Secure Server CA" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4j6kQ16JkHz45h for ; Sun, 18 Oct 2026 03:17:45 +0000 (UTC) Authentication-Results: mail01.ipfire.org; dkim=pass header.d=norvitech.onmicrosoft.com header.s=selector1-norvitech-onmicrosoft-com header.b=kh1vbJ9D; dmarc=pass (policy=reject) header.from=norvi.tech; spf=pass (mail01.ipfire.org: domain of spencer.norton@norvi.tech designates 2a01:111:f403:c105::7 as permitted sender) smtp.mailfrom=spencer.norton@norvi.tech; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; a=rsa-sha256; d=lists.ipfire.org; s=202003rsa; cv=pass; t=1792293466; b=kPc2Ya6+dS8C8aFGO8F+ZXU0C4VA3FBCRE8113xKDxcHBqLeYuZHl7oUIPYP0UP442EZ+D VszIJouw0WWRK+2NK8JFT1y6mypr4Uqw5L28RbYyncjq+KOOXRA4vbzUg/lmtz4XPduQRZ uY4ylx6XNY+d3Iql4Cd3lKfGUyH1nFTTPeRpoOu75OqSf4aQv2eu2b3N/bdedfp5yzzeWL acetzWLF4hxFKDWReUYTMZdrn/+C4CSoteTvN4orZwFfevl2GprXqPeP19ck3+UVRFTWcD cLW7bIMDglPqcT+i1iIxYn9xWqSl9g6bZwBuwOGv6N0s9aTJp5D7OmH8SHwPog== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=lists.ipfire.org; s=202003rsa; t=1792293466; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:dkim-signature; bh=F8NNZjoDnVkKRxSYSctIQKaWkyk2m0aIx3VbFVP0Mi0=; b=tTOqvo16xc+u0iCPPPSTLKmGabkEJORoLytisQ4w2rrcbqKHxt5eUzC/4QsVHg6xo4X2fm QErlq5mHVSp3ptwQJfSQBOjgpfE7gSq9Auq43/ZbCvmCpfzQanlaTqUXpgG48mfeGccOTy bW3wjNpB/sFqM2v3G/nKuGTJABrji6hEVFf5nE2B1gGK4WerWu2Gk3QwKsCMju23uUt61W AWVGKQqM264CSA8nayEXXNbSK/eXbgo8MbG5R+LaB3mQQg8eXRfEA1CSfQPTS95h/jvovG +yooCepeDGqVj4GGwzPlRABm1EyvuUGPE41q+8a7UBbe0fov3M4Jj7n/NN9tIg== ARC-Authentication-Results: i=2; mail01.ipfire.org; dkim=pass header.d=norvitech.onmicrosoft.com header.s=selector1-norvitech-onmicrosoft-com header.b=kh1vbJ9D; dmarc=pass (policy=reject) header.from=norvi.tech; spf=pass (mail01.ipfire.org: domain of spencer.norton@norvi.tech designates 2a01:111:f403:c105::7 as permitted sender) smtp.mailfrom=spencer.norton@norvi.tech; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uUlRvhY3J8EKj/tubHo5HFW8L7x656vuvH5w0NHh+2jBKe2qcHGE4bcEJz5OWuhd7qZC2Qina8+8m2ZBDeVISDLYknZTD5/GPnjytPwojA+ripkH0ywWobE0C+QSd08cwvmjKmgek22siYJzs7+PfgIzmMZnQRfUq2KxYNxfreQbaHZPk+NqW12S684cPldPizKeopfQGCmnEPlom4IbPSxsR45SgyyocswvwWB8bCBVVL6IMLH70hal3SlL3XS/wjwP5puvmRp/3Z17heFqQYXjDrhp0BNCM5Dbeu9yVJeo4oawV4eL/RHjb96LuCvqdwzuH8+PMSVwl/jUlPKZZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=F8NNZjoDnVkKRxSYSctIQKaWkyk2m0aIx3VbFVP0Mi0=; b=mYqSnr4TW96ZilwSKTqooW+QB0pF+Oo6fgaGS3uKuSFGaruYjYFZ/zMIsiB5HaN2qrR59ZJhnmv8sII3uWULuoxzgYQUv/zyr4RmPRnXGq0tAj0ZeTTQ0yBpzROhfcpQkbjT9VIH/+0h5QoqNSTWEpBoPEpYz1AbMxDTsFZmsOApZXEYdgqifeyL1NMXSI+MO2ANNTKhs/RKeulxBPyHn9pR9eIlUSgde9GHeIFwMANzN9/eAbQX5NlPJ/xNwaoIrHYhzmhp2kLaPv87bNb7uWtDTPVvLwNza6l3A3in1ggvCuIHreVzI9aFMWvVVozSa/8K/Kddl9X6WnNZYf3lAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=norvi.tech; dmarc=pass action=none header.from=norvi.tech; dkim=pass header.d=norvi.tech; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=norvitech.onmicrosoft.com; s=selector1-norvitech-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=F8NNZjoDnVkKRxSYSctIQKaWkyk2m0aIx3VbFVP0Mi0=; b=kh1vbJ9Du9tuDoVxJm847DdmfR/gdNTNmDqdFyECTohmwp91BsYfNzkSYNSFdak2blLW70SoiohqdNbCB8VMkzAs1wbHK6sISaRpyFeQcy4jGu+H+CUI2V6TT8Kk5vUJ6Kehi2XX+hfeW0QxKNlJdCUnoTyZiKs318jke3Eu1NQ= Received: from LV9PR18MB927615.namprd18.prod.outlook.com (2603:10b6:408:373::24) by SJ0PR18MB4041.namprd18.prod.outlook.com (2603:10b6:a03:2e5::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.522.18; Sun, 18 Oct 2026 03:17:38 +0000 Received: from LV9PR18MB927615.namprd18.prod.outlook.com ([fe80::28f3:a326:e7b:8044]) by LV9PR18MB927615.namprd18.prod.outlook.com ([fe80::28f3:a326:e7b:8044%6]) with mapi id 15.21.0522.017; Sun, 18 Oct 2026 03:17:38 +0000 From: Spencer Norton To: "location@lists.ipfire.org" CC: Michael Tremer , Accounts Subject: [PATCH] importer: Filter non-global geofeed and RIR umbrella networks Thread-Topic: [PATCH] importer: Filter non-global geofeed and RIR umbrella networks Thread-Index: AQHdXq862xI5aWj/40GcF4EZ4m/JBQ== Date: Sun, 18 Oct 2026 03:17:38 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.50.1 x-ms-publictraffictype: Email x-ms-traffictypediagnostic: LV9PR18MB927615:EE_|SJ0PR18MB4041:EE_ x-ms-office365-filtering-correlation-id: 921d2abe-63d7-45fd-9821-08df2cc65cfc x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|23010399003|366016|1800799024|376014|6133799003|18002099003|10067099003|3023799007|38070700021|261009223027099003|56012099006; x-microsoft-antispam-message-info: Pp9IfvfqDLVuKFCgo3FOmxHmV/C2+od/1DM7VsV3UWXIUGwSP0Z0t7Ap0Ta78b19BlCJU8gtk5DilArxbCJs8yuEFTEbiOZRRqaEDVQK2HBWuuTbkAhugtwGyqhXi+k9H1QyEQsCLP1c4WPJhhjldJykyGNzEQ+eo7lHeHcSgqKxOrnCnFPExUJlxz38+PGSaNHRSI5tZFihyMr6uRarOH19bqUtb+zOlqLtTnAla2oqxc9cC36aGOKp6Q7itC9tTttLRkbEdYmNLd0ieq2Y0A7lRujxyH8ESMyqh89KhiwwGcL87Bm329tfzv2nHJuAje6DI4h55QgygRbixW+MPKy0HZLHTDTMApvoTYOYunz8BMX2gxHjC1Dx7yODYmEnWAE53UNOkqmoOTuRBSUZqejSyCgGPiR8/YYnqS4q7DMxXuySB3JoQsi9E9CO/gyhCCR1/WSn0CEOczKS2IxiWShjEZ2I5POk/Nl9lYEirQralxTzLxhnT4BuiT9E177M7j4ygvu+vWogf6qQrPYUV2Er+oHCclr64p7yF+IkqmarKa38/jWJCasEkLLNNG1chddkCZhius3F6WGZwz3Zh9muEzETweJg51Vg0xfYdf+gtFJ+U5tCGSdi51Wngi2ZCiBUz7HHDzUSsFMdN+B4hMF+PsWLeQndE1So99AUyA4= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV9PR18MB927615.namprd18.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(366016)(1800799024)(376014)(6133799003)(18002099003)(10067099003)(3023799007)(38070700021)(261009223027099003)(56012099006);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: LUJUUuPfmMAgroA1lM5yFQOlkId6L0IzCDSfkEDSNDTDI+wZ8zYWA6fOvztHG64hWPkT0hMQwADRQCu5v+yFcWrYp+9X1fBW0TjtIg6KaZPlJLIEGv1dzjmkCCGEHp6iOLUobuvXyns0zHOLaIFJyzsTus/ZwAwO58VVXeSbXyggcEcQaHkJrtf3PSwPkfp1QeJHbrT/M4Xa3czeWjSvhNSqMoeoxWbU5rd8oNiDa/OFAD+epMuDCruR4XVuAndPD6vu+FTWUcXCYlTGQ7n1e6Ls6OHjcA5j+KPi/fSKwhbMqW6xyl6S3pwv24xugKnv25v6I6/VFSq0XW/ith/K5ygjDi6N0fovfykIlKtM+y5QbnB+8qu1AFOfzAnG+qG5QB/ptHj2/LL0cNKU86x7/IP7VcMHdnIdoE06aiJBH6Qqz9YlEu5YLkNqVBDSDwDIFz31D8wyVTXmnRfy2JZZYOpB1ojfX+PTczXT8ZzvB6iyKt+rlTlL2rV8Cgr2pHozv0i+zezr9ALf2eZ5bKFNIFlMPLOEjSyKijTc/8SPFb3svAiMGVp63MMMrQDkeg5fwT1oloGyHQzKSXleNRktnEyoix5pMc6UUC3YotLexRDfF67J+/anbq766/ddOU8GkiStzP1yQ6+NgjUje7qwe99FDiEbGN34m8ofKU3jyz2UZ5rOnQ3MuRr8YqGWzwtQEnLxs4rd8KenUeOTy4Fm0OTa3cVDjAmeUs4vxAuIaVHQaN8bNHfD/0QAlucOz5j5DSSY/R0IrhwUQPTHORMkXuZGlNftPo4epNSY0wCbeiXdLwC0RnQlYsfe4FM7CSuZyU0mzfO3HVSan5pErHwlu5DKAvrpNo0VPZ8paq7uwBLhGXKed43/S67BxlFej25Dewo1oWa05eKMHJ81qwfZcNZPWYKpMdU5f782GsN699Lv59eW8GwQ7P+OzAjCcvKGPPJvYq/P0CerKxsf5aaLWSXibnqPoKkYhHHprmNyHiAv1WD14QYNd7wC3hp19esl0cdUEHAy57dmIBbknWC1arG4zBmhhvGzuKRVNUikKZMh0WR1lF6HxHpN+06nm+O07NLaq+XryGGqTRdJy3EiL3bBC9WfduCz4Rp4poFtjsvEEadm+z+l0sLt4SZhe+ZMqnwSlnq6I8h2tV6UxUHmGojFWDWVoQtQvnaBRsb0FpM2HROomIWl+RtmzNWDnWS13ys260C2tKR8diHIm8DqIrNeLNzpUa03zwU1yiiHNzK6nxAhpFTctAcv1WkYjsnEmZkQE5wkpU9pz6YZhH9kkbvQ2LLuNNfe9d45t8tmCc0KlWEZVRpKLV4fXcraFotwLavRrEtDRxxcnRvMFf9IfiShL6kxOIUtqy7xu8px+IFjb6USnchKbdEvairIuE1AbJVqMuJjmEThSSka/+VIb7Ou2vT8Z2kCuKQDHeJj1WaLMkrsB5pfbS27y/5LrSK3LXPLqtpssR+Mh6t2z5wm3Nwpf0sK2P3VD02ktKHbjalntV6xkUqJCBjSkk/d5EJXQbNuOB3Y8e8mb5IGGNpxg/fbrRXiY6t2g9W5ChE1CeJWnTboIv0NgLAovi52KrkoQfS0f1k4BcqvgRiZE9Zj2gxFpujPYUUouuDLaFFFMjf9T3DBs+Eiz1K4kW8ClQCvvtD9/OMhVv+BjsKCr3xssk1YY1whk7DRuSKIi1hX6lhLW/eCNokhnMxgNBvvj25sP2ANMSpdR3eOhanHqF1Ztwr9IwOgyOS7lNhZlmjftII= Content-ID: Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 X-OriginatorOrg: norvi.tech X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: LV9PR18MB927615.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 921d2abe-63d7-45fd-9821-08df2cc65cfc X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Oct 2026 03:17:38.4874 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9f3f6170-3a3a-4e18-817e-166067666706 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RWo42x5t2YkdsujYNyn62xAin7wBwbSX75lSmm7zyvw2aETFOSpckJXZxiKyWr4Bp8Vdb3+zActD6SZKu7wRsvgrZe8jnRNiyX2GLvxGzI4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR18MB4041 X-Rspamd-Queue-Id: 4j6kQ16JkHz45h X-Spamd-Result: default: False [-4.78 / 11.00]; BAYES_HAM(-3.00)[100.00%]; SPF_REPUTATION_SPAM(2.56)[0.85343236399483]; R_DKIM_ALLOW(-1.54)[norvitech.onmicrosoft.com:s=selector1-norvitech-onmicrosoft-com]; ARC_ALLOW(-1.00)[microsoft.com:s=arcselector10001:i=1]; DKIM_REPUTATION(-0.90)[-0.90479201490295]; DMARC_POLICY_ALLOW(-0.50)[norvi.tech,reject]; R_SPF_ALLOW(-0.20)[+ip6:2a01:111:f403:c000::/51:c]; MX_GOOD(-0.10)[norvi-tech.mail.protection.outlook.com]; MIME_GOOD(-0.10)[text/plain]; MIME_TRACE(0.00)[0:+]; TO_DN_EQ_ADDR_SOME(0.00)[]; ARC_SIGNED(0.00)[lists.ipfire.org:s=202003rsa:i=2]; ASN(0.00)[asn:8075, ipnet:2a01:111:f000::/36, country:US]; TO_DN_SOME(0.00)[]; IP_REPUTATION_SPAM(0.00)[asn: 8075(0.27), country: US(-0.01), ip: 2a01:111:f403:c105::(0.00)]; RCVD_IN_DNSWL_NONE(0.00)[2a01:111:f403:c105::7:from]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[3]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_LAST(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[norvitech.onmicrosoft.com:+] X-Rspamd-Action: no action X-Rspamd-Server: mail01.haj.ipfire.org Documentation and special-purpose ranges from RFC 5737 (192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24), RFC 3849 (2001:db8::/32), RFC 5180 (2001:2::/48), RFC 4843 (2001:10::/28), and RFC 3056 (2002::/16) are currently exported with country: US, and RFC 4380 Teredo (2001::/32) is exported with aut-num: 6939: 1. _fetch_geofeed() and handle_update_overrides() did not pass parsed prefixes through _check_parsed_network(), allowing non-global rows in unrestricted geofeeds (such as https://geofeed.constant.com) into geofeed_networks. Also reject multicast and reserved ranges in _check_parsed_network(), as Python's ipaddress.is_global returns True for 224.0.0.0/4 and ff00::/8. 2. handle_write() selected all rows from geofeed_networks into the candidate network table n without joining network_geofeeds, emitting 258 out-of-bailiwick prefixes with no attributes into the database. 3. APNIC publishes top-level IANA pool placeholders (netname: APNIC-AP and APNIC-AP-ERX) with country: AU (for APNIC's Brisbane office) across its /8 and /12-/23 blocks, which otherwise cover 203.0.113.0/24 (via 202.0.0.0/7) and 2001:db8::/32 (via 2001:c00::/22) as AU once the geofeed entries are removed. Skip APNIC-AP and APNIC-AP-ERX in _parse_inetnum_block() alongside the existing RIR umbrella netnames. 4. Purge IPv6 special-purpose ranges (2001::/23, 2001:db8::/32, 3fff::/20) from BGP announcements in handle_update_announcements() alongside the existing IPv4 test/documentation rules. Fixes: #13934 - ipfire location db erroneously marks documentation ranges within rfc3849 and rfc5737 belonging to US Signed-off-by: Spencer Norton --- src/scripts/location-importer.in | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/src/scripts/location-importer.in b/src/scripts/location-importer.in index 0298f4f..1a02996 100644 --- a/src/scripts/location-importer.in +++ b/src/scripts/location-importer.in @@ -426,9 +426,19 @@ class CLI(object): UNION SELECT - network + geofeed_networks.network FROM + geofeeds + JOIN + network_geofeeds networks + ON + geofeeds.url = networks.url + JOIN geofeed_networks + ON + geofeeds.id = geofeed_networks.geofeed_id + AND + networks.network >>= geofeed_networks.network """) # Create an index to search through networks faster @@ -1195,6 +1205,11 @@ class CLI(object): log.debug("Skipping unspecified network: %s" % network) return False + # Ignore multicast and reserved networks + elif network.is_multicast or network.is_reserved: + log.debug("Skipping multicast or reserved network: %s" % network) + return False + # IPv6 if network.version == 6: if network.prefixlen < 10: @@ -1319,7 +1334,7 @@ class CLI(object): # Filter any inetnum records which are only referring to IP space # not managed by that specific RIR... if key == "netname": - if re.match(r"^(ERX-NETBLOCK|(AFRINIC|ARIN|LACNIC|RIPE)-CIDR-BLOCK|IANA-NETBLOCK-\d{1,3}|NON-RIPE-NCC-MANAGED-ADDRESS-BLOCK|STUB-[\d-]{3,}SLASH\d{1,2})", val.strip()): + if re.match(r"^(APNIC-AP(-ERX)?$|ERX-NETBLOCK|(AFRINIC|ARIN|LACNIC|RIPE)-CIDR-BLOCK|IANA-NETBLOCK-\d{1,3}|NON-RIPE-NCC-MANAGED-ADDRESS-BLOCK|STUB-[\d-]{3,}SLASH\d{1,2})", val.strip()): log.debug("Skipping record indicating historic/orphaned data: %s" % val.strip()) return @@ -1617,6 +1632,9 @@ class CLI(object): DELETE FROM announcements WHERE family(network) = 4 AND network <<= '198.18.0.0/15'; DELETE FROM announcements WHERE family(network) = 4 AND network <<= '198.51.100.0/24'; DELETE FROM announcements WHERE family(network) = 4 AND network <<= '203.0.113.0/24'; + DELETE FROM announcements WHERE family(network) = 6 AND network <<= '2001::/23'; + DELETE FROM announcements WHERE family(network) = 6 AND network <<= '2001:db8::/32'; + DELETE FROM announcements WHERE family(network) = 6 AND network <<= '3fff::/20'; -- DELETE CGNAT address space (RFC 6598) DELETE FROM announcements WHERE family(network) = 4 AND network <<= '100.64.0.0/10'; @@ -1944,6 +1962,10 @@ class CLI(object): log.debug("Could not parse network: %s" % network) continue + # Sanitize parsed networks... + if not self._check_parsed_network(network): + continue + # Strip any excess whitespace from country codes country = country.strip() @@ -2038,6 +2060,10 @@ class CLI(object): log.warning("Skipping %s: You cannot overwrite default" % network) continue + # Sanitize parsed networks... + if not self._check_parsed_network(network): + continue + self.db.execute(""" INSERT INTO network_overrides