Сеть в Debian 9: Полный контроль через командную строку

Сеть в Debian 9: Полный контроль через командную строку

Представьте, что ваш Debian 9 наконец-то видит сеть, а вы полностью управляете каждым пакетом данных. Больше никакой магии от графических утилит — только вы, терминал и абсолютная власть над сетевыми настройками.

Это не просто скучная инструкция. Это ключ к пониманию того, как ваша система общается с миром. Вы научитесь не просто подключаться, а настраивать сеть так, как нужно именно вам.

Мы разберем все по полочкам. Вы узнаете, как одним файлом заменить сложные графические конфигураторы. Как задать компьютеру постоянное имя, которое не сбросится после перезагрузки. Как заставить систему автоматически получать IP-адрес или, наоборот, закрепить за ней статический.

Вы освоите работу с сетевыми интерфейсами, от самой простой настройки до создания виртуальных адаптеров и сетевых мостов для виртуальных машин. Все это — через прямое редактирование конфигурационных файлов.

Готовы перестать зависеть от автоматики и взять управление сетью в свои руки? Откройте для себя мощь командной строки Debian и настройте все именно так, как вы этого хотите. Полная инструкция ждет вас в статье.


Все операционные системы предоставляют команды и интерфейс для настройки сети из командной строки. В дистрибутивах Linux нам даже это не нужно, потому что мы можем сами редактировать конфигурационные файлы и вносить необходимые изменения. В некоторых случаях настройка через конфигурационные файлы будет проще, чем с помощью графических утилит, потому что вы можете полностью все контролировать.

В этой статье будет рассмотрена настройка сети Debian 9. Мы разберем как настроить имя хоста, сетевые интерфейсы и получить IP адреса для них. Эта инструкция подойдет как для обычных компьютеров, так и для серверов.


Содержание статьи

1. Имя компьютера

Чтобы посмотреть текущее имя хоста вы можете использовать команду hostname:

hostname
Сеть в Debian 9: Полный контроль через командную строку

Установить новое имя хоста очень просто, для этого достаточно передать его команде hostname в качестве параметра:

hostname debian-pc-1
Сеть в Debian 9: Полный контроль через командную строку

После перезагрузки имя хоста не сохранится, поэтому вам нужно отредактировать файл /etc/hostname и добавить туда новое имя хоста, уже это имя останется даже после перезагрузки:

vi /etc/hostname debian-pc-1
Сеть в Debian 9: Полный контроль через командную строку

Осталось только связать новое имя хоста с локальным IP адресом, чтобы иметь возможность обращаться по нему к компьютеру. Для этого добавьте такую строку в файл /etc/hosts:

vi /etc/hosts 127.0.0.1 localhost debian-pc
Сеть в Debian 9: Полный контроль через командную строку

2. Список сетевых интерфейсов

Перед тем как мы сможем настроить сеть нужно посмотреть какие сетевые интерфейсы подключены к вашей системе и какие имена им присвоены. Для этого наберите:

ip addr
Сеть в Debian 9: Полный контроль через командную строку

Также можно посмотреть только имена интерфейсов, в папке /sys/class/net:

ls /sys/class/net/
Сеть в Debian 9: Полный контроль через командную строку

3. Настройка сетевого интерфейса

Для настройки сетевых интерфейсов в операционных системах, основанных на Debian, используется файл /etc/network/interfaces. Здесь должно находится описание для каждого интерфейса, способ получения IP а другие параметры. В одном файле может быть настроено несколько интерфейсов. Описание каждого интерфейса начинается со слова auto после которого идет имя интерфейса.

Это означает, что указанный интерфейс должен быть запущен при выполнении ifup с опцией -a, именно она используется при инициализации системы. После строки auto идут другие строки настроек, которые касаются именно этого интерфейса. Вот так, например, выглядит строка для включения локального интерфейса:

auto lo;
Сеть в Debian 9: Полный контроль через командную строку

Перед тем как рассматривать все более подробно, поговорим про опции, которые можно использовать:

  • pre-up - выполнить команду перед запуском интерфейса;
  • post-up - выполнить команду после запуска интерфейса;
  • up - выполнить команду при запуске интерфейса;
  • pre-down - команда перед отключением;
  • post-down - команда после отключения;
  • iface - указывает имя интерфейса;
  • inet - указывает
  • description - создать имя синоним для устройства;
  • address - устанавливает ip адрес для статического соединения;
  • netmask - установка маски сети;
  • broadcast - широковещательный адрес;
  • metric - приоритет для шлюза по умолчанию;
  • gateway - шлюз по умолчанию;
  • hwaddress - установить MAC адрес;
  • mtu - размер одного пакета.

Это далеко не все опции, которые можно использовать, но основные из них и уже с помощью этого можно настроить большинство из того, что нужно. Дальше рассмотрим различные варианты настройки интерфейсов, самый часто используемый на домашних компьютерах - это получение ip адреса по DHCP, в таком случае, ip адрес может меняться при каждом запуске. Рассмотрим его первым.

Настройка динамического IP

Мы будем получать IP адрес через DHCP сервер, оттуда же будут получены шлюзы и DNS сервер, поэтому для работы достаточно добавить две строчки. Например, настроем получение IP по DHCP для интерфейса eth0:

auto eth0 iface eth0 inet dhcp

Но если необходимо, то вы можете установить вручную ip адрес DNS сервера:

nameserver 8.8.8.8

Для локального интерфейса настройка будет выполняться таким образом:

auto lo iface lo inet loopback

Здесь мы не получаем адрес по DHCP, но присваиваем локальный адрес 127.0.0.1.

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

Если вы хотите установить именно статический IP, то здесь все будет немного сложнее. Нам нужно знать не только этот свободный IP адрес, но и шлюз, маску сети и DNS сервер. Для настройки используется такой набор строк:

iface eth0 inet static address 192.168.1.15 netmask 255.255.255.0 gateway 192.168.1.1 broadcast 192.168.0.255 dns-nameservers 8.8.8.8

Сеть в Debian 9: Полный контроль через командную строку

Здесь указывается, что мы будем использовать метод получения ip адреса static, а затем расписаны все параметры. Но это еще далеко не все, что можно сделать с помощью файла /etc/network/interfaces. Также вы можете создавать виртуальные интерфейсы.

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

В некоторых случаях нам может понадобиться создать виртуальный интерфейс. Это позволяет добавить еще один IP адрес к интерфейсу. Чтобы создать такой интерфейс достаточно дописать его номер после двоеточия:

auto eth0:0 iface eth0:0 inet static address 192.168.1.101 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8

Сеть в Debian 9: Полный контроль через командную строку

Имя интерфейса, для которого создается виртуальный интерфейс должно совпадать с реальным.

Настройка мостов

Сетевые мосты между виртуальными интерфейсами в системе позволяют настроить полноценный доступ к интернету из виртуальных машин. Они могут применяться для KVM,qemu,XEN и других конфигураций. Для настройки моста используйте:

auto br0 iface br0 inet static address 192.168.1.20 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 bridge_ports eth0 bridge_stp off bridge_fd 0 bridge_maxwait 0

Сеть в Debian 9: Полный контроль через командную строку

Здесь мы указываем имя интерфейса br0, дальше выполняем стандартную настройку получения статического IP адреса, затем связываем этот мост с интерфейсом eth0.

Перезагрузка сети

После внесения всех изменений необходимо перезапустить сеть, чтобы сетевые настройки debian вступили в силу, для этого наберите:

sudo systemctl restart networking

Выводы

В этой статье мы рассмотрели как выполняется настройка сети Debian 9. Конечно, это еще далеко не все, что возможно настроить, но с помощью этих команд можно в большинстве случаев заставить работать сеть. настройка сети из консоли debian дело сложное, в графическом интерфейсе все делается намного проще, с помощью NetworkManager все настраивается автоматически. Надеюсь, эта информация была полезной для вас.

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


Кликните на изображение чтобы обновить код, если он неразборчив