Yes, you should change the TTL on the records in the old servers. TTL = Time To Live. It is a setting that tells the requesting DNS server how long it can cache that record before it should be considered stale.
By shortening the TTL prior to changing the records, it will force any querying DNS server to auto-flush the records quicker, which will ensure that there are no stale records pointing to the old IPs. After you change the TTL to something very short, and after sufficient time has passed that the old DNS records can no longer be cached, you should be able to change the IP addresses to the new addresses, and the maximum amount of time that the servers will be unreachable will be whatever the TTL you configured on the old records.
For example:
DNS server A says "Where is host B?" You respond with an IP that has a TTL of 24 hours.
Then, you change the TTL to be 30 minutes.
WAIT 24 HOURS (the length of your previous TTL).
After 24 hours, the old caches record goes stale, and DNS server A must request a new one. This new one has a TTL of 30 minutes.
You change your IP addresses immediately after DNS server A gets the record for Host B (worst case scenario).
The net result is that any hosts using DNS A for resolution will not be able to find Host B for.. 29 and a half minutes (the length of time it will take the incorrect record to go stale in DNS A's cache).
HTH,
exx