Howto Set Static IP on boot in initramfs for dropbear or other purposes NFS, Linux, Debian, Ubuntu, CentOS

This is only really necessary in the case you don't want DHCP.  If you are dealing with an encrypted LUKS server on the internet, you will often want to have a static IP so you know which IP to connect to (or if you have a semi-static IP assigned by DHCP).

SET IP Address by /etc/initramfs-tools/initramfs.conf

IP Address=192.168.1.27
Gateway=192.168.1.1
Subnet Mask: 255.255.255.0
Hostname=myhome.com

IP=192.168.1.27::192.168.1.1:255.255.255.0:myhost.com

The format is below, note the "double colon" :: after the IP.  If you don't do that, things won't work properly including being unable to set the gateway and/or hostname errors.
**Double note that the kernel documentation states otherwise that a single color is to be used for all field separation, but at least in most newer Debian's this does not work.

Set IP for certain NIC

You could also add another ":" after hostname which would indicate which NIC device the IP would be applied to.  Otherwise by default it is the first NIC.

#eg if you wanted to have it use ens3 then change the line by adding another colon and the device eg. :ens3
IP=192.168.1.27::192.168.1.1:255.255.255.0:myhost.com:ens3

Follow this guide if you want your NICs named properly (eg. eth0, eth1) so you don't have to wonder whether you have an eno1, ens3 etc.

Final Step

Make sure you update initramfs or this will not be applied or work until you do.

sudo update-initramfs -u


Tags:

howto, static, ip, initramfs, dropbear, purposes, nfs, linux, debian, ubuntu, centosthis, dhcp, encrypted, luks, server, semi, assigned, etc, conf, gateway, subnet, hostname, myhome, myhost, format, quot, colon, unable, errors, kernel, documentation, separation, newer, nic, indicate, applied, default, eg, ens, adding, update, sudo,

Latest Articles

  • Grandstream Phone Vulnerability Security Issue Remote Backdoor Connection to 207.246.119.209:3478
  • Linux How to Check Which NIC is Onboard eth0 or eth1 Ubuntu Centos Debian Mint
  • VboxManage VirtualBox NAT Network Issues Managment Troubleshooting
  • Dell PowerEdge Server iDRAC Remote KVM/IP Default Username, Password Reset and Login Information Solution
  • Nvidia Tesla GPUs K40/K80/M40/P40/P100/V100 at home/desktop hacking, cooling, powering, cable solutions Tutorial AIO Solutions
  • Stop ls in Linux Debian Mint CentOS Ubuntu from applying quotes around filenames and directory names
  • Thunderbird Attachment Download Error Corrupt Wrong filesize of 29 or 27 bytes Solution
  • Generic IP Camera LAN Default IP Settings DVR
  • Ubuntu Debian Mint Linux How To Update Initramfs Manually update-initramfs
  • Enable Turbo Mode for CPU Ubuntu Linux Mint Debian Redhat
  • docker / kubernetes breaks Proxmox QEMU KVM Bridge VMs
  • How To Change Storage Location in Docker.io
  • RTL8812BU and RTL8822BU Linux Driver Ubuntu Setup Archer T3U Plus
  • Kazam video blank/high size and not working when recording solution
  • Cisco UC CME How To Enable Licensed Features
  • from pip._internal.cli.main import main File "/usr/local/lib/python3.5/dist-packages/pip/_internal/cli/main.py", line 60 sys.stderr.write(f"ERROR: {exc}") from pip._internal.cli.main import main File "/usr/local/lib/python3.5/dist-packag
  • ModuleNotFoundError: No module named 'pip._internal' solution python
  • grub blank screen how to manually boot kernel and initrd Linux Ubuntu Debian Centos won't boot solution
  • Cisco Switch / Router How To Restore Factory Default Settings
  • Cisco 2900 3900 Router Password Reset How To Reset Enable Password