IP address assignment is typically handled by a DHCP server. You can request the server to end the DHCP lease and release your device’s current IP address. Depending on how the server is configured, your device may or may not be assigned a different IP address with this method. Another way to change your IP address is with DHCP reservation. But that’s a feature that’s configured from your router settings. Instead of such methods, we’ll specifically cover ways to change your IP address directly from Ubuntu in this article. Network Settings The easiest way to change your IP address on Ubuntu is via the NetworkManager GUI. Open the Settings app and switch to the Network (wired) or Wi-Fi tabs depending on which connection you want to change the IP address for. Click on the Settings cog next to the connection. In the IPv4 tab, set the IPv4 method to Manual and fill in the IP Address, Gateway, and Netmask values. You can leave DNS to Automatic, or toggle off Automatic and manually enter the DNS server. Press Apply and reset the connection (toggle off/on) to apply the changes. Netplan Netplan is used to configure networking on Linux systems through the networkd or NetworkManager backends. It reads the configuration from a YAML description file and hands off device control to the specified networking daemon. To change your IP address, you’ll need to modify the netplan config file. The default config file named 01-network-manager-all.yaml or 50-cloud-init.yaml can be found in the /etc/netplan directory. First, check the interface’s logical name. sudo lshw -c network Open the config file with a text editor like nano. sudo nano /etc/netplan/*.yaml Use the configuration provided below. Ensure the number of prefix spaces is correct as shown here or the config won’t work. network: version: 2 renderer: NetworkManager ethernets: enp1s0: dhcp4: no addresses: - 192.168.122.50/24 routes: - to: default via: 192.168.122.1 nameservers: addresses: [8.8.8.8, 1.1.1.1] We’re using NetworkManager as the backend here. We specified enp1s0 as the Ethernet interface and DHCP is disabled. Then, we set the interface’s IP address with a Class C subnet prefix length (192.168.122.50/24). We then set the gateway, defined it via a default route, and finally set the DNS servers. Remember to change these values as appropriate for your own network. After your configuration looks good, apply the new config with sudo netplan apply You can verify the changes with ip a Ip Command IP Address changes made by the previous two methods were persistent. But if you only want to make a temporary IP change that’ll revert upon connection reset, you can use the ip command. First, identify the interface. sudo lshw -c network Use the add option to add a new IP address to the interface. Remember to adjust the IP address and interface name values. sudo ip addr add 192.168.122.186/24 dev enp1s0 Remove the old IP address with del option like so sudo ip addr del 192.168.122.11/24 dev enp1s0 Here, we changed the IP address of the enp1s0 interface from 192.168.122.11 to 192.168.122.186. Once again, you can verify the change with ip a Networkd Ubuntu desktops use the NetworkManager daemon by default, whereas Ubuntu servers normally handle network configuration with networkd. On such systems, you can edit the network configs in /etc/systemd to change your IP address. Open the config file with a text editor like nano. sudo nano /etc/systemd/networkd.conf Use the following configuration and adjust the interface name, IP address, gateway, and DNS values as you require. [Match] Name=enp1s0 [Network] Address=192.168.122.154/24 Gateway=192.168.122.1 DNS=8.8.8.8 Save the new configuration and restart the networkd service to apply the changes. sudo systemctl restart systemd-networkd Nmcli You can also use NetworkManager’s command-line version (nmcli) to manage network configurations such as your IP address. First, list your connections and note the connection name. nmcli c You can directly change the IP address configuration, replacing the values with your own like so sudo nmcli con modify 'Wired connection 1' ipv4.method manual ipv4.addresses 192.168.122.141/24 ipv4.gateway 192.168.122.1 ipv4.dns "8.8.8.8, 8.8.4.4" We identified that we need to modify Wired connection 1 with the previous command. Then, we set the IPv4 method to manual and set the IP address with prefix, gateway, and DNS values. Finally, activate the connection and verify the change with sudo nmcli con up id ‘Wired connection 1’ ip a This is sufficient for basic configuration, but nmcli is a highly versatile tool. If you want to learn to make advanced config changes, we recommend using the interactive editor. sudo nmcli connection edit ‘Wired connection 1’ The editor will display which settings you can edit (connection profile, ipv4, proxy, etc). Enter help to list the available commands (set, print, describe, save, quit, etc). Enter print ipv4 to list the modifiable IPv4 settings and properties. You can use the describe command to view the documentation for each setting (e.g., describe ipv4, describe ipv4.addresses). Now, use the set command to set the property values like so set ipv4.method manual set ipv4.addresses 192.168.122.141/24 set ipv4.gateway 192.168.122.1 set ipv4.dns 8.8.8.8, 8.8.4.4 Save the connection with save persistent or save temporary. Then, enter quit to exit nmcli and verify the new config with ip a