Linq / Lambda OrderBy Delegate for List <string> of IP Addresses

DadoList<string> ips = new List<string>();

Necesito ordenar la lista de direcciones IP en un orden lógico (es decir, "192.168.0.2" viene antes de "192.168.0.100").

Actualmente (y correctamente, alfabéticamente) si la lista contiene:

192.168.0.1
192.168.0.2
192.168.0.10
192.168.0.200

ips.OrderBy(p => p) devoluciones:

192.168.0.1
192.168.0.10
192.168.0.2
192.168.0.200

Respuestas a la pregunta(6)

Su respuesta a la pregunta