Skip to content
Snippets Groups Projects
Commit ce1446b4 authored by Erik Reid's avatar Erik Reid
Browse files

validate new data against old-stlye parsing

parent b435ea41
No related branches found
No related tags found
No related merge requests found
import json
import re
import jsonschema
from inventory_provider import bgp
......@@ -36,6 +38,213 @@ CACHE_SCHEMA = {
"additionalProperties": False
}
# data for mx1.ams.nl.geant.net
OLD_STYLE_V4_DATA = """
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.133 description "Limelight "
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.20 description Microsoft
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.21 description Microsoft
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.215 description "Leaseweb "
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.231 description OVH
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.245 description OVH
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.168 description Akamai
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.208 description Akamai
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.215 description Leaseweb
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.150 description "Hurricane Electric"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.47 description IPTRANSIT
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.115 description Facebook
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.164 description "Facebook (2)"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.192 description Telenor
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.100 description Amazon
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.217 description "Amazon (2)"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.108 description BT
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.236 description COLT
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.52 description "COLT (2)"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.34 description TalkTalk
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.251 description "Free SAS"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.123 description "VODAFONE (2)"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.123 description VODAFONE
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.232 description BLACKBOARD
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.53 description Neotelekoms
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.13 description Lattelekom
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.224 description ECATEL
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.125 description MegaFon
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.234 description "SIG Telecom"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.155 description "Telindus Luxembourg"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.176 description Wikimedia
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.88 description OpenDNS
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.198 description "Nerim SAS"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.210 description "Init7 peering#1"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.210 description "Init7 peering#2"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.111 description "ISC F-root #1"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.140 description "ISC F-root #2"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.140 description CloudFlare
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.27 description Twitch_Interactive__Justin.tv_
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.197 description Twitch_Interactive__Justin.tv_
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.10 description Feral_Hosting
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.43 description Voxility
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.228 description NFOrce_Entertainment_BV
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.175 description NFOrce_Entertainment_BV
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.55 description Hetzner_Online_AG
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.45 description Liquid_Telecommunications
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.160 description DENIC_eG,_AS31529
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.160 description Apple_Inc
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.183 description Apple_Inc
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.92 description Netnod
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.56 description Netnod
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.124 description Incapsula
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.51 description RDSnet
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.162 description EdgeCast_Networks,_Inc.
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.151 description EdgeCast_Networks,_Inc.
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.82 description SoftLayer_Technologies,_Inc._an_IBM_Company
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.217 description PT_Comunicacoes_S.A.
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.23 description Valve_Corporation
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.164 description Dailymotion
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.46 description Bezeq_International
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.113 description Code_42_Software,_Inc.
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.174 description "Blue_Jeans_Network,_Inc. AS18541"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.14 description "Dropbox AS19679"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.93 description "ONLINE AS12876"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.63 description "M247_Ltd AS9009"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.62 description "Spotify AS8403"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.94 description "Highwinds_Network_Group,_Inc AS12989"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.70 description "Highwinds_Network_Group,_Inc AS12989"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.183 description "FASTLY AS54113"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.184 description "FASTLY AS54113"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.209 description Limelight
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.216 description "RETN AS9002"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.153 description "VIMPELCOM AS3216"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.217 description "ATOM86 AS8455"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.60 description "Post_Group_Luxembourg AS6661"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.232 description "VeriSign AS7342"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.130 description "Twitter,_Inc. AS13414"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.46 description "Twitter,_Inc. AS13414"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.41 description "DSTORAGE AS198792"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.187 description "Internap AS29791"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.213.152 description "ONLINE AS12876"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.128 description "Core-Backbone_GmbH AS33891"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.212 description "Automattic AS2635"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.250 description "Netflix AS2906"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.250 description "Netflix AS2906"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.250 description "Packet_Clearing_House AS42"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.250 description "Packet_Clearing_House AS3856"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.45 description "USC_/_UFMG_PEERING_Research_Testbed AS47065"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.110 description "Oath,_Inc. AS10310"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.163 description "Oath,_Inc. AS10310"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.136 description "Canadian_Internet_Registration_Authority_-_.CA_Registry AS55195"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.191 description "CDNetworks_Inc. AS36408"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.106 description "CDNetworks_Inc. AS36408"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.38 description "Choopa,_LLC AS20473"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.211.200 description "Yandex_LLC AS13238"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.210.150 description "G-Core_Labs_S.A. AS199524"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.132 description "RIPE_NCC AS197000"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.69 description "RIPE_NCC AS12654"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.213.234 description "IP_Transit,_Inc. AS46786"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.82 description "Claranet AS8426"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.209.228 description "Claranet AS8426"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.212.146 description "ViewQwest AS18106"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.122 description "Zayo_Group AS6461"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.213.122 description "Highwinds_Network_Group,_Inc AS33438"
set routing-instances IAS protocols bgp group GEANT-IX-AMS-IX neighbor 80.249.208.39 description "OARC,_Inc. AS112"
"""
OLD_STYLE_V6_DATA = """
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:6265:2 description "Leaseweb "
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:6276:1 description OVH
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:6276:2 description OVH
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8075:1 description Microsoft
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8075:2 description Microsoft
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:940:2 description Akamai
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:940:1 description Akamai
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:2822:1 description Limelight
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:6265:1 description Leaseweb
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:6939:1 description "Hurricane Electric"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8708:1 description RDSnet
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:6786:1 description IPTRANSIT
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:2934:1 description Facebook
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:2934:2 description "Facebook (2)"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8220:1 description COLT
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8220:2 description "COLT (2)"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3285:1 description TalkTalk
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2322:1 description "Free SAS"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:3209:2 description "VODAFONE (2)"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:3209:1 description VODAFONE
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8218:2 description Neotelekoms
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2578:1 description Lattelekom
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:9073:1 description ECATEL
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:1133:1 description MegaFon
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:932:1 description "SIG Telecom"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a505:6665:1 description "Telindus Luxembourg"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:4907:1 description Wikimedia
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:6692:1 description OpenDNS
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3030:1 description "Init7 peering#1"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3030:2 description "Init7 peering#2"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:132:1 description "ISC F-root #1"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:132:2 description "ISC F-root #2"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3335:1 description CloudFlare
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1:0:a500:20:52:1 description Feral_Hosting
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:3350:2 description NFOrce_Entertainment_BV
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:3350:1 description NFOrce_Entertainment_BV
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:4940:1 description Hetzner_Online_AG
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:0844:1 description Liquid_Telecommunications
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:1529:1 description DENIC_eG,_AS31529
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:0714:1 description Apple_Inc
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:0714:2 description Apple_Inc
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8674:1 description Netnod
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8674:2 description Netnod
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:9551:1 description Incapsula
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:5133:1 description EdgeCast_Networks,_Inc.
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:5133:2 description EdgeCast_Networks,_Inc.
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:6351:1 description SoftLayer_Technologies,_Inc._an_IBM_Company
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8657:1 description PT_Comunicacoes_S.A.
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:2590:1 description Valve_Corporation
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8551:1 description Bezeq_International
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a506:2715:1 description Code_42_Software,_Inc.
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3193:1 description "Nerim SAS"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:5400:1 description BT
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:2119:1 description Telenor
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:9679:1 description "Dropbox AS19679"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2876:2 description "ONLINE AS12876"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:9009:1 description "M247_Ltd AS9009"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8403:1 description "Spotify AS8403"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2989:1 description "Highwinds_Network_Group,_Inc AS12989"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2989:2 description "Highwinds_Network_Group,_Inc AS12989"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:2822:2 description Limelight
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:9002:1 description "RETN AS9002"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:3216:1 description "VIMPELCOM AS3216"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8455:1 description "ATOM86 AS8455"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:6661:1 description "Post_Group_Luxembourg AS6661"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a505:4113:1 description "FASTLY AS54113"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a505:4113:2 description "FASTLY AS54113"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:7342:1 description "VeriSign AS7342"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3414:1 description "Twitter,_Inc. AS13414"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3414:2 description "Twitter,_Inc. AS13414"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a519:8792:1 description "DSTORAGE AS198792"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:9791:1 description "Internap AS29791"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:3891:1 description "Core-Backbone_GmbH AS33891"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:2635:1 description "Automattic AS2635"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:2906:1 description "Netflix AS2906"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:2906:2 description "Netflix AS2906"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:1690:1 description "Dailymotion AS41690"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:42:1 description "Packet_Clearing_House AS42"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:3856:1 description "Packet_Clearing_House AS3856"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:7065:1 description "USC_/_UFMG_PEERING_Research_Testbed AS47065"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:310:1 description "Oath,_Inc. AS10310"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:310:2 description "Oath,_Inc. AS10310"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a505:5195:1 description "Canadian_Internet_Registration_Authority_-_.CA_Registry AS55195"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a502:473:1 description "Choopa,_LLC AS20473"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:3238:1 description "Yandex_LLC AS13238"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1:0:a500:19:9524:1 description "G-Core_Labs_S.A. AS199524"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1:0:a500:19:7000:1 description "RIPE_NCC AS197000"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:2654:1 description "RIPE_NCC AS12654"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a504:6786:2 description "IP_Transit,_Inc. AS46786"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8426:1 description "Claranet AS8426"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:8426:2 description "Claranet AS8426"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a501:8106:1 description "ViewQwest AS18106"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:6461:1 description "Zayo_Group AS6461"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a503:3438:1 description "Highwinds_Network_Group,_Inc AS33438"
set routing-instances IAS protocols bgp group GEANT-IXv6-AMS-IX neighbor 2001:7f8:1::a500:112:1 description "OARC,_Inc. AS112"
"""
def _validate_cached_data(f):
cache = json.loads(f.read())
......@@ -43,11 +252,55 @@ def _validate_cached_data(f):
return cache
def _old_data(s):
for l in s.splitlines():
if not l:
continue
m = re.match(
(r'^set\s+routing-instances\s+(\S+)+\s+'
r'protocols\s+(\S+)\s+'
r'group\s+(\S+)\s+'
r'neighbor\s+([a-f\d\.:]+)\s+'
r'description\s+"?([^"]+)"?\s*$'), l)
assert m
yield {
"routing-instances": m.group(1),
"protocols": m.group(2),
"group": m.group(3),
"neighbor": m.group(4),
"description": m.group(5)
}
def test_ipv4_neighbors():
old_v4_data = dict((x["neighbor"], x) for x in _old_data(OLD_STYLE_V4_DATA))
with open("router-info.json") as f:
cache = _validate_cached_data(f)
k = "mx1.ams.nl.geant.net"
v = cache[k]
neighbors = list(bgp.neighbors(v, group_expression=r'^GEANT-IX[\s-].*'))
assert len(neighbors) == len(old_v4_data)
for n in neighbors:
address = n["name"]["data"]
description = n["description"][0]["data"]
assert old_v4_data[address]["description"] == description
def test_ipv6_neighbors():
old_v6_data = dict((x["neighbor"], x) for x in _old_data(OLD_STYLE_V6_DATA))
with open("router-info.json") as f:
cache = _validate_cached_data(f)
k = "mx1.ams.nl.geant.net"
v = cache[k]
for n in bgp.neighbors(v, group_expression=r'^GEANT-IX[\s-].*'):
print(n)
neighbors = list(bgp.neighbors(v, group_expression=r'^GEANT-IXv6[\s-].*'))
assert len(neighbors) == len(old_v6_data)
for n in neighbors:
address = n["name"]["data"]
description = n["description"][0]["data"]
assert old_v6_data[address]["description"] == description
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment