Procedure for changing the sites IP without downtime


Due to low availabilty and increased cost of IPV4’s, I’m trying to reduce the number of IP4’s I’m using.

Is there a simple way to change IP adress of a site without downtime?

Changing an IP is straight forward in Hestia, but it immidiately changes listening IP’s in apache and nginx, while global DNS entry’s still point to an old IP, and there is “Your new server is ready to use” message instead of the site for hours (or even days for some slow DNS’s).

I guess adding an old IP to virtual hosts and listening address would work, but it will take me days to manually change IP’s for all the sites I want to switch.

Any thoughts?


Reduce TTL

Reducing ttl will not do any good on slow DNS’s, and I have a few sites that should have 100% availability. Reducing ttl is still an expected downtime.

Is there any reason why apache and nginx listen to a specific IP? Can’t just all servers listen to all? (*)
Security? Performance?

Reduce TTL to one minute, wait for at least 12 hours so that it is propagated and then you can change DNS.

They should all be changed in 30 seconds.

Downtime? Where?

During a DNS propagation it is either the old server or the new server who will answer the queries but queries don’t get lost.

I will test tonight, but the last time I was doing the same thing, I didn’t notice that one of the major mobile provider’s DNS didn’t comply with lower TTL, and I lost about 30% of the traffic for one whole day.
My usual solution to this problem is to listen to all IP’s for at least 72 hours, and only then I’m sure everything is 100% up and running.

They are lost if the server no longer listens to the old ip. :slight_smile:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.