more robust parse_block_ports with internal route storing