Probar si una red en notación cidr se superpone a otra red

Estoy buscando un algoritmo php que pruebe de manera eficiente si una red anotada en cidr se superpone a otra.

Básicamente tengo la siguiente situación:

Array de direcciones cidr:

$cidrNetworks = array(
    '192.168.10.0/24',
    '10.10.0.30/20',
    etc.
);

Tengo un método que agrega redes a la matriz, pero este método debería lanzar una excepción cuando se agrega una red que se superpone con una red que ya está en la matriz.

Así es decir. si se agrega 192.168.10.0/25, se debe lanzar una excepción.

¿Alguien tiene / sabe / "puede pensar en" un método para probar esto de manera eficiente?

Respuestas a la pregunta(4)

Su respuesta a la pregunta