En Uruguay, un problema con el cual tenemos que lidiar los administradores que tenemos servidores instalados en ADSL's con IPs dinámicas es que muchas de estas IPs están marcadas en listas negras (porque alguien alguna vez las usó para enviar SPAM).
Para solucionar este problema se me ocurrió la siguiente idea: escribir un script que (cada vez que el ADSL se reconecta) chequee que la nueva IP no este publicada en ninguna lista de SPAM y, en caso contrario, vuelva a reconectar el ADSL.
El script está hecho en bash y es bien simple. Lo pueden descargar aqui. Demás está decir que va sin ninguna garantía.
Para instalarlo simplemente hay que agregar una línea que lo corra en el archivo /etc/ppp/ip-up.local.
Es importante tener en cuenta que este script va a funcionar mientras la mayoría de las IPs estén "limpias". Cuando haya más IPs sucias que limpias el script puede entrar en loop muy largo hasta encontrar una IP que sirva. Hoy en día es perfectamente seguro usarlo ya que la amplia mayoría de las IPs está limpia, pero no puedo asegurar nada sobre el futuro. De todas formas el cambio siempre va a ser gradual.
Este script es muy básico, y está pensado para ser tomado como base para algo más sofisticado. Algunas características a agregarle en una primera instancia serían:
- que guarde un log de las reconexiones para poder monitorear si estas van en aumento
- limitar la cantidad de reconexiones a una cantidad fija, para evitar loops largos o infinitos.
Un loop infinito podría ocurrir si alguna de las listas chequedas por el programa decide adoptar la política de incluir todo el rango de IPs uruguayas, lo cual no es algo descabellado: existen listas muy estrictas que automaticamente bloquean todas las IPs de Latinoamérica, Africa y Rusia, puesto que el 80% del SPAM mundial proviene de éstas. Afortunadamente son muy escasos los servidores que utilizan este tipo de listas.