How Do You Set a Static IP for a Raspberry Pi?
How Do You Set a Static IP for a Raspberry Pi?
3 Answers

Alright, let\’s dive into setting up a static IP on your Raspberry Pi. Trust me, it’s not as scary as it sounds. Whether you’re plugging straight in with a wired connection or going wireless, I’ve got you covered.
You can roll up your sleeves and do this through the terminal, or if you’re more into clicking things, use the graphical interface.
Terminal Way Using dhcpcd.conf
First, you\’ll want to crack open the DHCP client configuration file. Here’s how: Pop open your terminal and run this:
sudo nano /etc/dhcpcd.conf
Now, at the bottom of that file, toss in something like this (and make sure you tweak those IP addresses for your network):
interface eth0 static ip_address=192.168.1.100/24 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 8.8.8.8 interface wlan0 static ip_address=192.168.1.101/24 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 8.8.8.8
Pro tip: Don’t go throwing around random numbers. Make sure those IPs don’t bump into anything in your router’s DHCP range.
Once you’ve done that, save it with:
Ctrl+X → Y → Enter
Then reboot, like so:
sudo reboot
Wanna Go the GUI Route?
No problem! Right-click the network icon on your Raspberry Pi\’s desktop and head to \’Wireless & Wired Network Settings\’. Pick either \’Eth0\’ for wired or \’Wlan0\’ for wireless. Under the IPv4 tab, switch to \’Manual\’ and fill in the following:
- IP Address: Think something like
192.168.1.100
- Router: Probably
192.168.1.1
- DNS: Give it
8.8.8.8
or something reliable.
Hit \’Apply\’ and reboot again. Boom, done.
What If Stuff Goes Sideways?
Problem 1: IP Conflicts or No Internet
If you notice nothing’s working or your connection is sketchy, you might have stepped on a DHCP zone\’s toes. Check your router’s DHCP settings, and choose an IP that’s out of that range.
Problem 2: Your Config Isn’t Sticking
Maybe you took a wrong turn inside those files, or the wrong ones at that. Avoid messing with /etc/network/interfaces
unless you\’re really sure. Stick with dhcpcd.conf for most Raspberry Pi OS setups. To check if your edits make sense, you can run:
sudo dhcpcd -t
Problem 3: DNS Failures
If you can\’t seem to reach the web, double-check your DNS settings. Add a couple of reliable servers in the dhcpcd.conf file, like this:
static domain_name_servers=192.168.1.1 8.8.8.8
A Few Extra Tips
- Direct Connection to a PC: If it’s just your Pi and a computer, set the PC to
192.168.1.1
and maybe go192.168.1.2
for your Pi. - Old-School Network Configs: Some setups might still use
/etc/network/interfaces
. If you’re going that route, make sure you’re setting auto eth0 and something like this:
iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1
But be warned, this could play rough with dhcpcd.
Before You Call It a Day
- Backup Your Configs: Turning back time could save you a headache later.
sudo cp /etc/dhcpcd.conf /etc/dhcpcd.conf.bak
- Test Everything: Double-check your setup with and see if your Pi likes its new IP:
hostname -I
- And if it can still chat with the internet:
ping -c 4 google.com
And there you have it! Give these tips a whirl, and you’ll be sailing smoothly with a static IP on your Raspberry Pi in no time.

Overview
To set a static IP address on your Raspberry Pi, you can use either a command-line method (CLI) or a graphical user interface (GUI) method. Both methods ensure that your Raspberry Pi always uses the same IP address on your local network, which is especially useful for remote access over SSH or managing networked devices. This guide uses authoritative resources and proven techniques from sources such as and .
Steps for Setting a Static IP via CLI
- Obtain the Current IP Address
First, open a terminal on your Raspberry Pi and run:
hostname -I
This command displays the current private IP address. You may use this address as your static IP if it does not conflict with other devices on your network.
- Identify the Default Network Interface
To determine which network interface is active, run:
ip r | grep default
This will display your default gateway (router’s IP), and you can then find the interface name using:
route | grep ‘^default’ | grep -o ‘[^ ]*$’
This step is essential to ensure you modify the correct network settings.
- Obtain the DNS Address
Open the resolv.conf file to check the DNS settings:
sudo nano /etc/resolv.conf
Look for the line starting with nameserver and note the DNS IP address. This value will be used later in the configuration file.
- Edit the dhcpcd Configuration File
Open the dhcpcd.conf file:
sudo nano /etc/dhcpcd.conf
Scroll to the bottom and add the configuration below (replace the placeholders with your network details):
interface [interface-name]
static ip_address=[ip-address]/[cidr-suffix]
static routers=[router-ip-address]
static domain_name_servers=[dns-address]
For example, if your interface is eth0, your desired IP is 192.168.1.50 with a /24 subnet, router is 192.168.1.1, and DNS is 8.8.8.8, your configuration would look like:
interface eth0
static ip_address=192.168.1.50/24
static routers=192.168.1.1
static domain_name_servers=8.8.8.8
Save the file and exit the editor.
- Restart the Raspberry Pi
Apply the changes by rebooting your device:
sudo shutdown -r now
After rebooting, verify the static IP by running:
hostname -I
Ensure that the output matches your configured static IP.
Steps for Setting a Static IP via GUI
- Access Network Settings
On the Raspberry Pi desktop, right-click the network adapter icon located on the top panel.
- Open Network Preferences
Select “Wireless & Wired Network Settings” to open the Network Preferences window.
- Configure the Interface
- Choose the default network interface from the drop-down menu.
- Enter your desired static IP address in the IPv4 Address field, including the CIDR suffix (e.g., 192.168.1.50/24).
- Insert your router’s IP address in the Router field.
- Provide the DNS IP address in the DNS Servers section.
- Apply and Reboot
Click Apply to save the changes and then reboot your system. After reboot, confirm that the configured IP is active by checking the network status or running the hostname -I command in the terminal.
Final Verification
After following either the CLI or GUI method, test your configuration by running:
hostname -I
This command should display the static IP address you set. Maintaining a static IP is essential for consistent remote access and network management, ensuring your Raspberry Pi can always be reliably reached on your network.

If you’ve ever messed around with a Raspberry Pi, you know getting a static IP is a game-changer. It’s super handy for all sorts of projects where you need your little computer to always have the same address on your network. Let’s dive into a couple of ways you can do this.
A Simple Method Using Raspberry Pi OS Desktop
- Fire up the terminal on your Raspberry Pi.
- Type this command:
sudo nano /etc/dhcpcd.conf
- Scroll to the bottom and add the following:
interface eth0
for wired orinterface wlan0
if you’re going wireless.static ip_address=YOUR_STATIC_IP/24
static routers=YOUR_ROUTER_IP
static domain_name_servers=YOUR_DNS_IP
- Fill in YOUR_STATIC_IP, YOUR_ROUTER_IP, and YOUR_DNS_IP with your network details.
- To save your changes, hit CTRL + X, then Y, and Enter.
- Reboot your Raspberry Pi with
sudo reboot
.
Going Command Line with Raspberry Pi OS Lite
- Crack open a terminal and punch in:
sudo nano /etc/dhcpcd.conf
- Just like before, tweak the interface settings at the end of the file.
- Be sure your entries match your network setup. Consistency is key here.
- Save it all and reboot using
sudo reboot
.
Using Network Configuration Tools
- For GUI users, head to Preferences > Raspberry Pi Configuration > Interfaces.
- If you’re more of a command-line person, go with:
sudo raspi-config
, head to Network Options, and set your IP. - Just a heads-up: Keep your static IP outside your router’s DHCP range so things don’t clash.
And there you have it—your Raspberry Pi now has a rock-steady IP address. Perfect for any project where you want to keep things consistent. Need more nitty-gritty details? Check out the Raspberry Pi documentation when you get a chance.