Some definition(s)/meaning(s): Stable IP address - a host within Internet Service Provider (ISP) Autonomous system (AS) network, replaying to ICMP type 8 echo request.
Genesis: My routers monitor Internet connectivity by requesting ICMP echo request (one datagram for every 5 seconds) to hosts within ISP's AS network, it gives quite enough reliable image if the link works stable or not.
Reason(s): In (very small scale) multi WAN environments (for example when using at least two different ISPs) it gives me ability to switch off unreliable link and perform the failover and quasi load balancing (done in upstreaming using source and destination IP addresses). For the redundancy my routers usually monitor two hosts in ISP network at the same time and when both addresses are not responsive then the router is able to distinguish ISP's reachability and to switch off given gateway.
Address searching methodology which I'd like to improve: My production tests (almost a year, 99,99% uptime) shows that ISPs the primary DNS server and the first MX server of the domain owned by the ISP are quite reliable way to give me ICMP echo response at almost all time.
Digression: Let's say that I know what BGP is and that it's a proper way to do this, but I cannot afford it because of the cost and micro scale business.
Question: My main concern is that whole thing depends on IP addresses ability to change. I am looking for addresses (methodology to find those addresses) which will be the most possible painful for an ISP to change. Is there something which can be improved - in terms of IP address stability? I'm thinking about ISP's border routers, but I cannot find a way to reliable determine those IPs and I am not sure if it'll be more "stable". Any ideas/opinions?