Like the rest of the world, I wanted to have a static IP for a Raspberry Pi that was on a wifi network. Like the rest of the world, I couldn’t figure out how to do it after three attempts. At that point, like the rest of the world I gave up and decided to make my DHCP server do the work instead of the Pi.
Here’s how I did it:
1. On the Pi, edit /etc/wpa_supplicant.conf and add:
network={
ssid="My_SSID"
psk="My_wifi_password"
}
2. Reboot and get an IP address through DHCP.
3. Confirm that I can see the world with the DHCP address.
4. ifconfig wlan0 and copy down the hardware Ethernet address for wlan0 (let’s pretend it was 00:11:22:33:44:56).
5. Go to the box running DHCP, and add a stanza inside my shared-network:
host myserver {
hardware ethernet 00:11:22:33:44:56;
fixed-address 192.168.1.17;
option host-name "myserver";
}
6. Kill and restart the DHCP daemon.
7. Reboot the pi and confirm it’s getting the right static IP address now.