2021-07-01 17:11:54 +02:00
|
|
|
# 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
|
2024-03-27 19:10:27 +01:00
|
|
|
{
|
|
|
|
networking.interfaces.eth0.ipv4.addresses = [ {
|
|
|
|
address = "192.168.1.2";
|
|
|
|
prefixLength = 24;
|
|
|
|
} ];
|
|
|
|
}
|
2021-07-01 17:11:54 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
Typically you'll also want to set a default gateway and set of name
|
|
|
|
servers:
|
|
|
|
|
|
|
|
```nix
|
2024-03-27 19:10:27 +01:00
|
|
|
{
|
|
|
|
networking.defaultGateway = "192.168.1.1";
|
|
|
|
networking.nameservers = [ "8.8.8.8" ];
|
|
|
|
}
|
2021-07-01 17:11:54 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
::: {.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`.
|
|
|
|
:::
|
|
|
|
|
2021-07-04 03:56:26 +02:00
|
|
|
The host name is set using [](#opt-networking.hostName):
|
2021-07-01 17:11:54 +02:00
|
|
|
|
|
|
|
```nix
|
2024-03-27 19:10:27 +01:00
|
|
|
{
|
|
|
|
networking.hostName = "cartman";
|
|
|
|
}
|
2021-07-01 17:11:54 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
The default host name is `nixos`. Set it to the empty string (`""`) to
|
|
|
|
allow the DHCP server to provide the host name.
|