<section xmlns="http://docbook.org/ns/docbook"
         xmlns:xlink="http://www.w3.org/1999/xlink"
         xmlns:xi="http://www.w3.org/2001/XInclude"
         version="5.0"
         xml:id="sec-ipv4">
 <title>IPv4 Configuration</title>

 <para>
  By default, NixOS uses DHCP (specifically, <command>dhcpcd</command>) to
  automatically configure network interfaces. However, you can configure an
  interface manually as follows:
<programlisting>
<link linkend="opt-networking.interfaces._name__.ipv4.addresses">networking.interfaces.eth0.ipv4.addresses</link> = [ {
  address = "192.168.1.2";
  prefixLength = 24;
} ];
</programlisting>
  Typically you’ll also want to set a default gateway and set of name
  servers:
<programlisting>
<xref linkend="opt-networking.defaultGateway"/> = "192.168.1.1";
<xref linkend="opt-networking.nameservers"/> = [ "8.8.8.8" ];
</programlisting>
 </para>

 <note>
  <para>
   Statically configured interfaces are set up by the systemd service
   <replaceable>interface-name</replaceable><literal>-cfg.service</literal>.
   The default gateway and name server configuration is performed by
   <literal>network-setup.service</literal>.
  </para>
 </note>

 <para>
  The host name is set using <xref linkend="opt-networking.hostName"/>:
<programlisting>
<xref linkend="opt-networking.hostName"/> = "cartman";
</programlisting>
  The default host name is <literal>nixos</literal>. Set it to the empty string
  (<literal>""</literal>) to allow the DHCP server to provide the host name.
 </para>
</section>
