Risposte:
Il tuo computer non ha modo di rilevare da solo che l'IP esterno è cambiato, poiché questo è gestito dal router che traduce l'IP privato in pubblico.
Quindi è necessario eseguire il polling del router stesso o di un sito esterno.
Il router può essere interrogato tramite il le SNMP se supporta questo protocollo. Se non funziona ma ha un accesso da riga di comando (CLI), puoi usarlo con una lingua come prevede. Se il router è accessibile solo attraverso un'interfaccia web, questo è fattibile ma più complesso.
In realtà è possibile evitare il polling se il router supporta l'invio di trap SNMP o ha un gestore eventi, quindi è il router che può notificare al computer la modifica e quindi eseguire lo script alla ricezione di tale notifica.