Wednesday, 4 January 2017

How to Change HostName and IP-Address in CentOS / RedHat Linux

How to Change HostName and IP-Address in CentOS / RedHat Linux


Step 1 :-

You can use any one of the following methods to change the hostname and/or ip-address on RedHat related distributions.
If you want to change only the hostname you can either do it from command line, or from GUI as explained below.

To change the ip-address along with the hostname, follow the steps shown below.


I. Change HostName From Command Line

1. Use hostname command to Change Hostname

In this example, we’ll change the hostname from dev-server to prod-server.

hostname command by default will display the current hostname as shown below:

# hostname

dev-server


The following will change the hostname to prod-server.

# hostname prod-server


Once the hostname is changed, verify that it has changed the hostname successfully. As you see below, it has changed the hostname to prod-server

# hostname

prod-server


2. Modify the /etc/hosts file

If you have entries in the /etc/hosts file with the old hostname, you should modify it.

For example, the entry for 127.0.0.1 line in the /etc/hosts file will still show the old hostname. In this example, it shows as dev-server.

$ cat /etc/hosts

127.0.0.1  dev-server localhost.localdomain localhost


Modify this file, and set the new hostname here. For example, change dev-server to prod-server as shown below.

$ cat /etc/hosts

127.0.0.1  prod-server localhost.localdomain localhost


3. Modify the /etc/sysconfig/network file

The /etc/sysconfig/network file also has an entry for HOSTNAME. Change the value here as shown below.

# cat /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=prod-server


4. Restart the Network


Restart the network service, if you want any other services that are using the hostname to pickup the changes.

# service network restart

Shutting down interface eth0:        [  OK  ]

Shutting down loopback interface:   [  OK  ]

Bringing up loopback interface:     [  OK  ]

Bringing up interface eth0:          [  OK  ]


If this is not a production system, you can also reboot the system to make sure the hostname is changed properly, and the system is picking it up properly during startup.


II. Change Hostname from UI

If you have desktop related utilities installed on your system, you can change the hostname from the GUI.

Execute system-config-network from the command line.

# system-config-network


This will display the “Network Configuration” GUI. Go to the “DNS” tab and change the hostname from here as shown below.


III. Change the IP-Address

1. Change ip-address Temporarily Using ifconfig


You can change the ip-address of the server using ifconfig command as we discussed earlier. For example, the following changes the ip-address of the server on eth0 interface to 192.168.1.2

# ifconfig eth0 192.168.1.2



2. Change ip-address Permanently


Under the /etc/sysconfig/network-scripts directory, you’ll see file for every network interface on your system. For example, if your interface is “eth0”, you’ll see ifcfg-eth0 file under this directory.

Modify the ifcfg-eth0 file and change the IPADDR field accordingly as shown below to change the ip-address.


# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"

BOOTPROTO=none

NM_CONTROLLED="yes"

ONBOOT=yes

TYPE="Ethernet"

UUID="11111-2222-3333-4444"

IPADDR=192.168.1.2

PREFIX=24

GATEWAY=192.168.1.1

DEFROUTE=yes

IPV4_FAILURE_FATAL=yes

IPV6INIT=no

NAME="System em1"

HWADDR=DD:BB:DD:AA:11:55


3. Modify /etc/hosts file


If you’ve defined the ip-address in the /etc/hosts file, make sure to change those also. For example, if you have a FQDN that was pointing to the old ip-address in the /etc/hosts file, change it to the new ip-address. Depending on how you’ve configured your system, you might not have to do this step.


$ vi /etc/hosts

127.0.0.1               prod-server localhost.localdomain localhost

192.168.1.2             prod-server.mydomain.com


4. Restart the Network

Finally, restart the network service, for the system to pick-up the changes.

# service network restart

Shutting down interface eth0:        [  OK  ]

Shutting down loopback interface:   [  OK  ]

Bringing up loopback interface:     [  OK  ]

Bringing up interface eth0:          [  OK  ]


Step 2:

If this is not a production system, you can also reboot the system to make sure the hostname and ip-address is changed properly, and the system is picking it up properly during startup.


How do I change the IP address/netmask and hostname on the command line WITHOUT rebooting the machine?


Here are some example configuration files:

/etc/hosts

Raw
127.0.0.1      localhost.localdomain  localhost
192.168.0.254  server1.example.com    server1
/etc/sysconfig/network

Raw
NETWORKING=yes
HOSTNAME=server1.example.com
GATEWAY=192.168.0.1
/etc/sysconfig/network-scripts/ifcfg-eth0

Raw
DEVICE=eth0
BOOTPROTO=static
IPADDR...

No comments:

Post a Comment