Базовая настройка сети в Debian

Введение

В данной заметке разберем настройку сетевого интерфейса на примере Debian 12.


Базовая настройка сети в Debian

Для начала посмотрим названия наших интересов и что у них уже присвоено любой из команд ниже:

ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:35:a4:4c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.11/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe35:a44c/64 scope link
       valid_lft forever preferred_lft forever
ip -br a

lo               UNKNOWN        127.0.0.1/8 ::1/128
enp0s3           UP             192.168.1.11/24 fe80::a00:27ff:fe35:a44c/64
ifconfig -a

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.11  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::a00:27ff:fe35:a44c  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:35:a4:4c  txqueuelen 1000  (Ethernet)
        RX packets 29534  bytes 1981620 (1.8 MiB)
        RX errors 0  dropped 75  overruns 0  frame 0
        TX packets 45870  bytes 5191578 (4.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 3  bytes 396 (396.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3  bytes 396 (396.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

В моем случае у меня два сетевых интерфейса:

  • lo – локальный интерфейс (loopback)
  • enp0s3 – интерфейс имеющий IP адрес 192.168.1.11/24 полученный по DHCP, его я и буду настраивать ниже

Настройка статического IP адреса в Debian

Я хочу что бы у enp0s3 был статический IP адрес, который будет назначаться при загрузке системы, открываем конфигурационный файл:

nano /etc/network/interfaces

И приводим его к такому виду:

auto enp0s3
iface enp0s3 inet static
address 192.168.1.11
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

Сохраняем файл конфигурации (Ctrl+X, Y, Enter) и перезагружаем сеть или сервер:

systemctl restart networking

Разберем конкретнее:

  • auto enp0s3 – автостарт интерфейса enp0s3 при загрузке системы (если у вас динамическое устройство, например USB модем, то можно воспользоваться allow-hotplug enp0s3).
  • iface enp0s3 inet static – указываем что интерфейс enp0s3 будет иметь статический ipv4 IP адрес.
  • address 192.168.1.11 – указываем ваш IP адрес.
  • netmask 255.255.255.0 – указываем вашу маску сети.
  • gateway 192.168.1.1 – указываем ваш шлюз.
  • dns-nameservers 8.8.8.8 8.8.4.4 – указываем DNS сервера.

Настройка сети с помощью утилиты ip

Так же можно добавить настройки сети с помощью утилиты ip (после перезагрузки изменения не сохраняются, рекомендую ознакомится со всеми возможностями утилиты ip в man)

ip addr add 192.168.1.12/24 dev enp0s3

Что бы удалить используем следующую команду:

ip addr del 192.168.1.101/24 dev enp0s3

Добавить шлюз по умолчанию:

ip route add default via 192.168.1.1 dev enp0s3

Настройка DNS через resolv.conf в Debian

Для настройки DNS так же можно использовать другой способ, откроем другой конфигурационный файл resolv.conf и впишем туда наши DNS сервера:

nano /etc/resolv.conf
nameserver 8.8.8.8
nameserver 1.1.1.1

Сохраняем файл конфигурации (Ctrl+X, Y, Enter) и перезагружаем сеть или сервер:

systemctl restart networking

Данные записи могут быть перезаписаны systemd-resolved, лучше указывать DNS сервера конфиге /etc/network/interfaces.


Настройка DHCP в Debian

Для настройки получения IP на интерфейсе по DHCP приводим конфиг к такому виду:

nano /etc/network/interfaces
auto enp0s3
iface enp0s3 inet dhcp

Сохраняем файл конфигурации (Ctrl+X, Y, Enter) и перезагружаем сеть или сервер:

systemctl restart networking

Настройка двух сетевых интерфейсов в Debian

Например, у меня есть enp0s3 как основной интерфейс для выхода в интернет и enp0s8, который я хочу использовать для доступа к другой локальной сети 192.168.2.0/24

auto enp0s3
iface enp0s3 inet static
address 192.168.1.11
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

auto enp0s8
iface enp0s8 inet static
address 192.168.2.11
netmask 255.255.255.0

Сохраняем файл конфигурации (Ctrl+X, Y, Enter) и перезагружаем сеть или сервер:

systemctl restart networking

Заключение

В данной заметке разобрали поверхностно базовую настройку сети в Debian

Что бы не потерять инструкцию рекомендую подписаться на мой личный блог-канал в Telegram в котором я делюсь в формате заметок своими знаниями и интересным из мира IT, спасибо за потраченное время на чтение и доброго времени суток!)

Так же вы можете отблагодарить автора материально:

Оставьте комментарий