From almost any Linux system you can use 'ip' command or the 'ifconfig' and 'route' commands to initially set up the network.
# Bring up the CPU network interface ifconfig eth0 up # Or if you're on a baseboard with a second ethernet port, you can use that as: ifconfig eth1 up # Set an ip address (assumes 255.255.255.0 subnet mask) ifconfig eth0 192.168.0.50 # Set a specific subnet ifconfig eth0 192.168.0.50 netmask 255.255.0.0 # Configure your route. This is the server that provides your internet connection. route add default gw 192.168.0.1 # Edit /etc/resolv.conf for your DNS server echo "nameserver 192.168.0.1" > /etc/resolv.conf
Most networks will offer a DHCP server, an IP address can be obtained from a server with a single command in linux:
Configure DHCP in Debian:
# To setup the default CPU ethernet port dhclient eth0 # Or if you're on a baseboard with a second ethernet port, you can use that as: dhclient eth1 # You can configure all ethernet ports for a dhcp response with dhclient
Systemd provides a networking configuration option to allow for automatic configuration on startup. Systemd-networkd has a number of different configuration files, some of the default examples and setup steps are outlined below.
[Match] Name=eth* [Network] DHCP=yes
To use DHCP to configure DNS via systemd, start and enable the network name resolver service, systemd-resolved:
systemctl start systemd-resolved.service systemctl enable systemd-resolved.service ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
For a static config create a network configuration for that specific interface.
[Match] Name=eth0 [Network] Address=192.168.0.50/24 Gateway=192.168.0.1 DNS=192.168.0.1
For more information on networking, see Debian and systemd's documentation: