Hallo pl,
In Perl würde ich über map{}
my %hunt = map{$_->[0] => 1}map{[split(/\//, $_)]} @A;
die CIDR-Schnippel abschneiden und einen Hash mit IP's erzeugen, so dass danach mit eimem einzigen Schleifendurchlauf über die B-Liste geprüft werden kann, ob eine B-IP in %hunt einen Treffer liefert.
Aufgabenstellung nochmal lesen. Die IPs können auch nur im gleichen Netz liegen, definiert durch die CIDR. Es muss kein genauer Treffer sein. Ein Hash-Lookup ist keine geeignete Lösung.
LG,
CK