Home Explore Blog Models CI



nixpkgs

nixos/doc/manual/configuration/ipv4-config.section.md
6d293595f7e9ac1129204b11be1567e43d4a875924cc272700000003000003b1
# IPv4 Configuration {#sec-ipv4}

By default, NixOS uses DHCP (specifically, `dhcpcd`) to automatically
configure network interfaces. However, you can configure an interface
manually as follows:

```nix
{
  networking.interfaces.eth0.ipv4.addresses = [
    {
      address = "192.168.1.2";
      prefixLength = 24;
    }
  ];
}
```

Typically you'll also want to set a default gateway and set of name
servers:

```nix
{
  networking.defaultGateway = "192.168.1.1";
  networking.nameservers = [ "8.8.8.8" ];
}
```

::: {.note}
Statically configured interfaces are set up by the systemd service
`interface-name-cfg.service`. The default gateway and name server
configuration is performed by `network-setup.service`.
:::

The host name is set using [](#opt-networking.hostName):

```nix
{ networking.hostName = "cartman"; }
```

The default host name is `nixos`. Set it to the empty string (`""`) to
allow the DHCP server to provide the host name.

Chunks
b03f31ae (1st chunk of `nixos/doc/manual/configuration/ipv4-config.section.md`)
Title: NixOS IPv4 Network Configuration
Summary
This section explains how to configure IPv4 networking in NixOS, moving beyond the default DHCP setup. It details how to manually assign static IPv4 addresses and prefix lengths to network interfaces, set a default gateway, and specify DNS nameservers. It also mentions the systemd services responsible for these configurations (`interface-name-cfg.service` and `network-setup.service`). Finally, it covers how to set the system's hostname, including the default value (`nixos`) and the option to allow the DHCP server to provide it.