How to change the main IP on a CPanel server

Changing a server to a new IP is a nightmare, there is so many places that need to update. If possible always just set up a new server and transfer everything to it. If that’s too hard than here is how to do the migration the best possible way.

  1. Edit /etc/sysconfig/network-scripts/ifcfg-eth0
    Change the IPADDR and GATEWAY lines to match the new IP and Gateway for the new ip
  2. Edit /etc/sysconfig/network
    Change the GATEWAY line here if it does not exist in the ifcfg-* file.
  3. Edit /etc/ips
    Remove the new primary IP from this file if it is present
    Add the old primary IP to this file
  4. Edit /var/cpanel/mainip
    Replace the old primary IP with the new primary IP
  5. Edit /etc/hosts
    Replace the old primary IP with the new one if needed. The hostname’s dns will need to be updated too
  6. Restart the network service to make the new IP the primary: service network restart
    (Note: You’re probably going to be disconnected at this point, and have to log in to ssh using the new primary ip.)
  7. Restart the ipaliases script to bring up the additional IPs: service ipaliases restart
  8. Run ifconfig and make sure all IPs show up correctly
  9. Update the cpanel license to the new primary IP
  10. Then run /usr/local/cpanel/cpkeyclt to update the CPanel license
  11. Then run the migration Wizard inside CPanel to update Apache and the website settings.

In a perfect world that will do it.

Good luck!