Es hat sich so ergeben, dass ich circa alle zwei Jahre meine Server auf neue Hardware verlege. Bei den gemieteten root-servern kommen dabei immer neue IP-Adressen ins Spiel. Da das Update der DNS-Einträge ein wenig zeitversetzt geschieht und das den Zeitpunkt der Umstellung nicht ganz genau planen lässt, ist es günstig alle Anfragen von der alten IP-Adresse auf die neue umzuleiten. Mit iptables ist das sehr einfach, hier das Skript, das nicht nur Webanfragen, sondern auch Mailserver (SMTP und IMAP/POP) umleitet. Das Skript muss am alten Server ausgeführt werden, wobei 10.0.0.1 hier die IP-Adresse des neuen Servers ist.
echo 1 > /proc/sys/net/ipv4/ip_forward # http/https iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1 iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination 10.0.0.1 # imap/imaps iptables -t nat -A PREROUTING -p tcp --dport 143 -j DNAT --to-destination 10.0.0.1 iptables -t nat -A PREROUTING -p tcp --dport 995 -j DNAT --to-destination 10.0.0.1 # SMTP iptables -t nat -A PREROUTING -p tcp --dport 25 -j DNAT --to-destination 10.0.0.1 # POP3/POP3s iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 10.0.0.1 iptables -t nat -A PREROUTING -p tcp --dport 995 -j DNAT --to-destination 10.0.0.1 iptables -t nat -A POSTROUTING -j MASQUERADE
Zum Anzeigen der NAT-Tabellen eignet sich dieses Kommando (credits):
iptables -nvL -t nat
Damit kann man die Servermigration mit einem Schalter umlegen.
Update:
Da dieser tolle Trick so gut funktioniert, besteht die Gefahr, dass man nicht alle DNS-Einträge auf die neue IP korrigiert hat. Nachdem der Server vom Provider Netz genommen wurde kamen die ersten Beschwerden … Deshalb das nächste mal vorher die Server-Abschaltung selbst testen.