Network debian: Настройка сети в Debian

Содержание

Настройка сети Debian 9 | Losst

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

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

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

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

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

hostname

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

hostname debian-pc-1

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

vi /etc/hostname

debian-pc-1

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

vi /etc/hosts

127.0.0.1 localhost debian-pc

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

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

ip addr

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

ls /sys/class/net/

 

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

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

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

auto lo;

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

  • 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-nameserver 8.8.8.8

Здесь указывается, что мы будем использовать метод получения 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

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

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

Сетевые мосты между виртуальными интерфейсами в системе позволяют настроить полноценный доступ к интернету из виртуальных машин. Они могут применяться для 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

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

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

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

sudo systemctl restart networking

Выводы

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

Оцените статью:

Загрузка…

Как настроить сеть в Debian

Debian — специфическая операционная система. Большинство пользователей, установив ее, испытывают разного рода проблемы при работе с ней. Дело в том, что эта ОС нуждается в настройке большинства компонентов. В статье пойдет речь о том, как настроить сеть в Debian.

Читайте также:
Руководство по установке Debian 9
Как настроить Debian после установки

Настраиваем интернет в Debian

Есть много способов подключения компьютера к сети, большинство из них уже устарели и не используются провайдером, другие же, напротив, встречаются повсеместно. В Debian есть возможность настроить каждый из них, но в статье речь будет идти только о самых популярных.

Читайте также:
Настройка сети в Ubuntu
Настройка сети в Ubuntu Server

Проводное соединение

В Debian существует три варианта настройки проводного соединения: с помощью внесения изменений в конфигурационный файл, при помощи программы Network Manager и используя системную утилиту.

Способ 1: Вносим правки в конфигурационный файл

Все нижеописанные действия будут выполняться через «Терминал». Это универсальный способ, который работает на всех версиях Debian. Итак, чтобы настроить проводное соединение, выполните следующее:

  1. Запустите «Терминал», проведя поиск по системе и нажав на соответствующую иконку.
  2. В появившемся окне «Терминала» введите и выполните следующую команду, чтобы открыть конфигурационный файл «interfaces»:

    sudo nano /etc/network/interfaces

    Читайте также: Популярные текстовые редакторы в Linux

    Примечание: после выполнения команды у вас будет запрошен пароль суперпользователя, который вы указывали при установке Debian. Его ввод отображаться не будет.

  3. В редакторе, отступив одну строчку, введите следующие параметры:

    auto [имя сетевого интерфейса]
    iface [имя сетевого интерфейса] inet dhcp

    Примечание: имя сетевого интерфейса вы можете узнать, выполнив команду «ip address». В выдаче оно указано под номером 2.

  4. Если сервера DNS не прописываются автоматически, то в этом же файле их можно указать самостоятельно, введя следующее:

    nameserver [адрес DNS]

  5. Сохраните изменения, нажав Ctrl+O, и выйдите из редактора, нажав Ctrl+X.

По итогу конфигурационный файл у вас должен выглядеть примерно так:

Отличаться может лишь имя сетевого интерфейса.

Только что было настроено проводное соединение с динамическим адресом. Если у вас IP-адрес статический, то настраивать сеть нужно иначе:

  1. Откройте в «Терминале» конфигурационный файл:

    sudo nano /etc/network/interfaces

  2. Отступив одну строку в конце, впишите нижеуказанный текст, попутно вводя нужные данные в соответствующие места:

    auto [имя сетевого интерфейса]
    iface [имя сетевого интерфейса] inet static
    address [адрес]
    netmask [адрес]
    gateway [адрес]
    dns-nameservers [адрес]

  3. Сохраните изменения и выйдите из редактора nano.

Напомним, что имя сетевого интерфейса можно узнать, введя в «Терминале» команду «ip address». Если вы не знаете все остальные данные, то их можно найти в документации от провайдера или спросить у оператора из технической поддержки.

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

sudo systemctl restart networking

или перезагрузить компьютер.

Способ 2: Network Manager

Если вам неудобно использовать для настройки соединения «Терминал» или вы столкнулись со сложностями при выполнении ранее изложенной инструкции, можете воспользоваться специальной программой Network Manager, которая имеет графический интерфейс.

  1. Откройте окно настроек Network Manager, нажав сочетание клавиш Alt+F2 и введя в соответствующее поле эту команду:

    nm-connection-editor

  2. Нажмите кнопку «Add», чтобы добавить новое сетевое соединение.
  3. Определите тип нового подключения как «Ethernet», выбрав одноименный пункт из списка и нажав «Создать…».
  4. В новом открывшемся окне введите название соединения.
  5. На вкладке «Общий» установите галочки на первых двух пунктах, чтобы после запуска компьютера к сети смогли автоматически подключиться все пользователи.
  6. Во вкладке «Ethernet» определите вашу сетевую карту (1) и выберите способ клонирования MAC-адреса (2). Также в списке «Link negotiation» выберите строку «Игнорировать» (3). Все оставшиеся поля никак не изменяйте.
  7. Перейдите на вкладку «Параметры IPv4» и выберите метод настройки как «Автоматический (DHCP)». Если же DNS-сервера вы получаете не напрямую от провайдера, то выберите «Автоматические (DHCP, только адрес)» и введите серверы DNS в одноименное поле.
  8. Нажмите «Сохранить».

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

  1. Из списка «Способ настройки» выберите строку «Вручную».
  2. В области «Адрес» нажмите кнопку «Add».
  3. Поочередно введите адрес, маску сети и шлюз.

    Примечание: всю необходимую информацию вы можете узнать, связавшись с вашим провайдером.

  4. Укажите DNS-серверы в одноименном поле.
  5. Нажмите «Сохранить».

В завершение сеть будет установлена. Если сайты в браузере у вас все равно не открываются, то рекомендуется перезагрузить компьютер.

Способ 3: Системная утилита «Сеть»

Некоторые пользователи могут столкнуться с проблемой при запуске программы Network Manager. В этом случае рекомендуется воспользоваться системной утилитой, которая всегда работает стабильно. Открыть ее можно двумя способами:

  1. Нажав на индикатор сети в правой части панели GNOME и выбрав пункт «Параметры проводных сетей».
  2. Войдя в параметры системы через меню и нажав на иконку «Сеть».

Как только утилита будет открыта, для настройки проводного соединения сделайте следующее:

  1. Переведите переключатель сети в активное положение.
  2. Нажмите на кнопку с изображением шестеренки.
  3. В новом окне откройте категорию «Идентификация», укажите название нового соединения и выберите MAC-адрес из списка. Также здесь вы можете разрешить автоматическое подключение к сети компьютера после запуска ОС и сделать соединение доступным для всех пользователей, установив галочки на соответствующих пунктах.
  4. Перейдите в категорию «IPv4» и установите все переключатели в активное положение, если провайдер предоставляет динамический IP-адрес. Если DNS-сервера нужно вписывать вручную, то деактивируйте переключатель «DNS» и впишите сервер самостоятельно.
  5. Нажмите кнопку «Применить».

Со статическим IP необходимо в категории «IPv4» задать другие настройки:

  1. Из выпадающего списка «Адрес» выберите пункт «Вручную».
  2. В появившейся форме для заполнения введите адрес сети, маску и шлюз.
  3. Чуть ниже деактивируйте переключатель «DNS» и в соответствующее поле введите его адрес.

    Примечание: при необходимости вы можете нажать на кнопку «+» и указать дополнительные DNS-сервера.

  4. Нажмите кнопку «Применить».

Теперь вы знаете, как в операционной системе Debian настроить проводное соединение со статическим и динамическим IP. Осталось лишь выбрать подходящий способ.

PPPoE

В отличие от проводного соединения, настроить сеть PPPoE в Debian можно всего двумя способами: через утилиту pppoeconf и с помощью уже известной программы Network Manager.

Способ 1: pppoeconf

Утилита pppoeconf — это простой инструмент, с помощью которого можно в любой операционной системе, основанной на ядре Linux, настроить соединение по протоколу PPPoE. Но в отличие от большинства дистрибутивов, в Debian эта утилита не предустановлена, соответственно ее необходимо сначала скачать и инсталлировать.

Если у вас есть возможность настроить интернет-соединение на компьютере посредством использования открытой точки доступа, например Wi-Fi, то для установки pppoeconf нужно в «Терминал» выполнить эту команду:

sudo apt install pppoeconf

Если же подключиться к Wi-Fi у вас не получается, то утилиту необходимо предварительно загрузить на другом устройстве и поместить на Flash-накопитель.

Скачать pppoeconf для 64-разрядных систем
Скачать pppoeconf для 32-разрядных систем

После этого вставьте флешку в свой компьютер и проделайте следующее:

  1. Скопируйте утилиту в папку «Загрузки», используя для этого стандартный файловый менеджер Nautilus.
  2. Откройте «Терминал».
  3. Перейдите в нем в ту директорию, где находится файл. В этом случае надо перейти в папку «Загрузки». Для этого выполните:

    cd /home/UserName/Загрузки

    Примечание: вместо «UserName» необходимо указать имя пользователя, которое было задано при установке Debian.

  4. Проведите инсталляцию утилиты pppoeconf, выполнив команду:

    sudo dpkg -i [PackageName].deb

    Где вместо «[PackageName]» нужно указать полное имя файла.

Как только утилита будет установлена в системе, можно переходить непосредственно к настройке сети PPPoE. Для этого:

  1. Запустите установленную утилиту, выполнив в «Терминале»:

    sudo pppoeconf

  2. Подождите окончания сканирования устройств.
  3. Определите сетевой интерфейс из списка.

    Примечание: если сетевая карта всего одна, то сетевой интерфейс определится автоматически и этот этап будет пропущен.

  4. На первый вопрос отвечайте утвердительно — утилита предлагает вам использовать популярные параметры настройки соединения, что подходят для большинства пользователей.
  5. Введите логин, который был выдан вашим провайдером, и нажмите «ОК».
  6. Введите пароль, который дал вам провайдер, и нажмите «ОК».
  7. Ответьте утвердительно, если DNS-сервера определяются автоматически. В противном случае выберите «Нет» и укажите их самостоятельно.
  8. Позвольте утилите ограничить объем MSS до 1452 байт. Это исключит ошибки при открытии некоторых сайтов.
  9. Выберите «Да», чтобы соединение PPPoE устанавливалось автоматически при каждом запуске системы.
  10. Чтобы установить соединение прямо сейчас, ответьте «Да».

Если вы выбрали ответ «Да», то интернет-соединение должно быть уже установлено. В противном случае для подключения необходимо ввести команду:

sudo pon dsl-provider

Для отключения выполните:

sudo poff dsl-provider

На этом инструкцию по настройке сети PPPoE с помощью утилиты pppoeconf можно считать законченной. Но если вы столкнулись с некоторыми трудностями при ее выполнении, то попробуйте использовать второй способ.

Способ 2: Network Manager

С помощью Network Manager установка соединения PPPoE займет больше времени, но если у вас нет возможности скачать утилиту pppoeconf себе на компьютер, то это единственный способ настроить интернет в Debian.

  1. Откройте окно программы. Для этого нажмите сочетание клавиш Alt+F2 и в появившееся поле введите следующую команду:

    nm-connection-editor

  2. В открывшемся окне кликните по кнопке «Add».
  3. Выберите из списка строку «DSL» и нажмите кнопку «Создать».
  4. Откроется окно, в котором нужно вписать наименование соединения в соответствующую строку.
  5. Во вкладке «Общий» рекомендуется поставить галочки на первых двух пунктах, чтобы при включении ПК сеть устанавливалась в автоматическом режиме и к ней имели доступ все пользователи.
  6. На вкладке DSL введите имя пользователя и пароль в соответствующие поля. Если этих данных у вас нет, то их можно узнать у провайдера.

    Примечание: название службы вписывать не обязательно.

  7. Перейдя во вкладку «Ethernet», выберите в списке «Device» наименование сетевого интерфейса, в списке «Link negotiation»«Игнорировать», а в поле «Клонировать MAC-адрес» укажите «Preserve».
  8. Во вкладке «Параметры IPv4» при динамическом IP нужно из списка «Способ настройки» выбрать «Автоматически (PPPoE)».
  9. Если сервера DNS приходят не напрямую от провайдера, то выберите «Автоматически (PPPoE, только адрес)» и впишите их самостоятельно в одноименное поле.

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

  10. Нажмите «Сохранить» и закройте окно программы.

Интернет-соединение после выполнения всех действий должно быть установлено. Если это не так, поможет перезагрузка компьютера.

DIAL-UP

Из всех видов интернет-соединений DIAL-UP сейчас считается наименее популярным, поэтому программ с графическим интерфейсом, в которых можно было бы произвести настройку, в Debian нет. Но есть утилита pppconfig с псевдографическим интерфейсом. Также можно произвести настройку с помощью утилиты wvdial, но обо всем по порядку.

Способ 1: pppconfig

Утилита pppconfig во многом похожа на pppoeconfig: при настройке вам точно так же надо давать ответы на вопросы, после чего соединение будет установлено. Но эта утилита не предустановлена в системе, поэтому скачайте ее через «Терминал»:

sudo apt install pppconfig

Если у вас нет доступа к интернету, чтобы это сделать, придется производить установку с флешки. Для этого сначала скачайте пакет pppconfig и скиньте его на накопитель.

Скачать pppconfig для 64-разрядных систем
Скачать pppconfig для 32-разрядных систем

Затем для установки проделайте следующие действия:

  1. Вставьте флешку в свой компьютер.
  2. Переместите данные с нее в папку «Загрузки», что находится в домашней директории операционной системы.
  3. Откройте «Терминал».
  4. Перейдите в папку, куда вы переместили файл с утилитой, то есть в «Загрузки»:

    cd /home/UserName/Загрузки

    Только вместо «UserName» впишите имя пользователя, которое было указано при установке системы.

  5. Установите пакет pppconfig с помощью специальной команды:

    sudo dpkg -i [PackageName].deb

    Где замените «[PackageName]» на название deb-файла.

Как только нужный пакет будет установлен в системе, можно приступать непосредственно к настройке соединения DIAL-UP.

  1. Запустите утилиту pppconfig:

    sudo pppconfig docomo

  2. В первом окне псевдографического интерфейса выберите «Create a connection named docomo» и нажмите «Ok».
  3. Затем определите способ настройки серверов DNS. При статическом IP выберите пункт «Use static DNS», при динамическом — «Use dynamic DNS».

    Важно: если вы выбрали «Use static DNS», то далее надо вручную ввести IP-адрес основного и, если имеется, дополнительного сервера.

  4. Определите метод аутентификации, выбрав пункт «Peer Authentication Protocol», и нажмите «Ok».
  5. Введите логин, который был дан вам провайдером.
  6. Впишите пароль, который вы также получили от провайдера.

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

  7. Теперь нужно указать максимальную скорость интернета, который будет давать вам модем. Если искусственно ограничивать ее не надо, то впишите в поле максимальное значение и нажмите «Ok».
  8. Определите способ набора номера как тональный, соответственно выберите пункт «Tone» и нажмите «Ok».
  9. Впишите ваш номер телефона. Обратите внимание, что вводить данные нужно без использования знака тире.
  10. Укажите порт вашего модема, к которому он подключен.

    Примечание: порты по типу «ttyS0-ttyS3» можно просмотреть с помощью команды «sudo ls -l /dev/ttyS*»

  11. В последнем окне вам будет представлен отчет обо всех ранее введенных данных. Если все они корректны, то выделите строку «Finished Write files and return to main menu» и нажмите Enter.

Теперь для подключения вам остается выполнить всего одну команду:

pon docomo

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

poff docomo

Способ 2: wvdial

Если у вас не получилось произвести настройку DIAL-UP-соединения, используя предыдущий способ, то это точно получится сделать с помощью утилиты wvdial. Она поможет создать специальный файл в системе, после чего в него надо будет внести некоторые изменения. Сейчас будет подробно рассказано, как это сделать.

  1. Сначала необходимо инсталлировать в систему wvdial, для этого в «Терминале» достаточно выполнить:

    sudo apt install wvdial

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

    Скачать wvdial для 64-разрядных систем
    Скачать wvdial для 32-разрядных систем

  2. После того как утилита была установлена в вашей системе, ее необходимо запустить, чтобы она создала тот самый конфигурационный файл, который мы будем впоследствии изменять. Для запуска выполните следующую команду:

    sudo wvdialconf

  3. Файл был создан в директории «/etc/» и называется он «wvdial.conf». Откроем его в текстовом редакторе:

    sudo nano /etc/wvdial.conf

  4. В нем будут храниться параметры, считанные утилитой с вашего модема. Вам же остается заполнить три строки: Phone, Username и Password.
  5. Сохраните изменения (Ctrl+O) и закройте редактор (Ctrl+X).

Соединение DIAL-UP настроено, но для его включения нужно выполнить еще одну команду:

sudo wvdial

Для настройки автоматического подключения к сети при запуске компьютера достаточно внести эту команду в автозагрузку Debian.

Заключение

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

Мы рады, что смогли помочь Вам в решении проблемы.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТ

Настройка сети в Debian 10 Buster

Очень часто мы занимаемся установкой новых серверных платформ на базе операционной системы Debian. Как правило, первоначальный этап инсталляции – настройка сетевых интерфейсов. В этой статье мы коротко расскажем как настроить сетевые интерфейсы в операционной системе Debian 10 (Buster). Настройка сети в Debian 10 выполняется в файле:

/etc/network/interfaces

По умолчанию настройки выполнены для получения IP адреса по DHCP.

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
source /etc/network/interfaces.d/*
 
# The loopback network interface
auto lo
iface lo inet loopback
 
# The primary network interface
auto enp0s3
iface enp0s3  inet dhcp

lo — локальный интерфейс (127.0.0.1), а enp0s3 — это сетевой интерфейс (присваивается сетевой адрес по протоколу DHCP).

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

Текущая информация о состоянии сетевых интерфейсов:

ip a

Для установки статического IP-адреса правим файл с сетевыми настройками /etc/network/interfaces:

auto enp0s3
    iface enp0s3  inet static
    address 192.168.0.15
    netmask 255.255.255.0
    gateway 192.168.0.1
    dns-nameservers 8.8.8.8 8.8.4.4

auto — запускать интерфейс при загрузке системы;
iface — имя интерфейса;
address — статический IP-адрес;
netmask — маски сети;
gateway — шлюз по-умолчанию;
dns-nameservers — сервера DNS, разделяются пробелами;

Вместо параметра auto, можно использовать allow-hotplug, если нужно запускать интерфейс как только система обнаружит устройство.

При отсутствии пакета resolvconf (отвечает за автоматическое назначение DNS серверов), настройки DNS будут определяется из файла /etc/resolv.conf, добавим в него параметры DNS:

domain example.com
search example.com
nameserver 8.8.8.8
nameserver 8.8.4.4

Если использовать параметр allow-hotplug, то при перезапуске сервиса сети, сетевой интерфейс не поднимется вплоть до перезагрузки сервера. Потому как этот параметр обозначает, что настройки будут приняты только тогда, когда устройство будет подключено и обнаружено системой, а т.к. перезагрузка сервиса сети никак не связана с отключением устройства, то и настройки к уже обнаруженному устройству не будут применены.

Применяем настройки:

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

В случае когда необходимо присвоить более чем один IP-адрес к физическому сетевому интерфейсу, то можно создать его виртуальный интерфейс. К примеру, к интерфейсу enp0s3, добавим виртуальный интерфейс (enp0s3:1) и назначим ему статический IP-адрес (10.3.0.22/24).

Название виртуального интерфейса, базируется на оригинальном физическом сетевом интерфейсе и обозначается после двоеточия. В файл конфигурации /etc/network/interfaces, добавляем:

auto enp0s3:1
iface enp0s3:1 inet static
address 10.3.0.22
netmask 255.255.255.0
gateway 10.3.0.1
dns-nameservers 8.8.8.8 8.8.4.4

Следует обратить внимание, что система критична к порядку поднятия интерфейсов, поэтому надо поднимать в таком порядке: lo, enp0s3, enp0s3:1 и так далее.

Настройка VLAN 802.1Q

Если необходимо работать сразу в нескольких виртуальных локальных сетях (VLAN), то можно включить поддержку VLAN 802.1Q на сетевом интерфейсе.

Для этого устанавливаем пакет для работы с VLAN:

apt-get install vlan

Загружаем модулем ядра для vlan (8021q) в систему:

modprobe 8021q

lsmod | grep 8021q
8021q 32768 0
garp 16384 1 8021q
mrp 20480 1 8021q

Добавим модуль в автозагрузку:

echo 8021q >> /etc/modules

В файл конфигурации /etc/network/interfaces, добавляем логический интерфейс (например, enp0s3.500), который принадлежит VLAN500:

auto enp0s3.500
    iface enp0s3.500 inet static
    address 10.10.17.100
    netmask 255.255.255.0
    gateway 10.10.17.1
    dns-nameservers 8.8.8.8 8.8.4.4
    vlan_raw_device enp0s3

Опция vlan_raw_device, указывает системе на каком сетевом интерфейсе этот VLAN будет тегироваться. После внесения изменений перезапускаем сетевые интерфейсы:

systemctl restart networking

Настройка сети в Debian 10 окончена.


Любое использование материалов сайта возможно только с разрешения автора и с обязательным указанием источника.

Настройка сети в Debian

Внимание! Статья несколько устарела. Она была справедлива для версий старше Debian 9. В Debian 9 многое изменилось в настройке и диагностике сети.
Во-первых, в Debian 9 изменилась система именования сетевых интерфейсов. Если раньше, например для Ethernet, имена интерфейсов были следующими: eth0, eth2, eth3 и т. д. То сейчас используются номера интерфейсов в BIOS, а также номера слотов PCI. Это называется stateless persistent network interface names (имена постоянных сетевых интерфейсов без отслеживания состояния) Т. е. имя может быть enp0s3, или ens30, или wlp3s0 для wi fi. При желании можно переименовать сетевые интерфейсы, вернуться к прежней системе, но это материал для отдельной статьи.
Во-вторых, раньше для настройки и диагностики сети использовались утилиты из пакета net-tools. При установке Debian этот пакет устанавливался по умолчанию вместе с системой. Теперь он просто присутствует в репозиториях, а вместо него по умолчанию устанавливается пакет iproute2. При желании можно установить старый пакет (net-tools) и пользоваться прежними утилитами. И настроить всё по этой статье.
В-третьих, изменилась система инициализации – Debian перешёл на systemd. Это значит, что сервисы надо перезапускать по-другому.
Новая статья находится здесь. Айтишник РУ

В этой статье я опишу простую настройку сети для сервера под управлением ОС Debian 5 (Lenny). Всё, что описано в этой статье так же может быть использовано и для настройки сети в Debian 6 (Squeeze). Изначально рассматривалась настройка сервера с одной сетевой картой, но со временем было решено написать цикл статей по Debian, в которых более подробно описывается установка и настройка коммуникационного сервера класса SOHO. Теперь эту статью можно рассматривать как руководство по настройке сети как для сервера с одной сетевой картой, так и для внешнего интерфейса коммуникационного сервера. Настройка сети так же подразумевает первичную настройку системы разрешения имён. В этой статье мы коснёмся этой темы вскользь. Подробнее об этом будет написано в статье «Разрешение имён в Debian». И так начнём. Обычно первичная настройка сети происходит ещё на этапе установки. Об этом можно прочесть в моей статье «Установка Debian на сервер». Если по какой-то причине это не было сделано при установке, то мы с вами попытаемся решить проблемы с сетью и настроить наш сервер.

Установка сетевой карты

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

# dmesg | grep eth

В параметре команды grep мы написали eth. В Linux ядро определяет сетевые интерфейсы как eth0, eth2 и так далее. Так же можно вывести список устройств с помощью следующей команды:

# lspci | grep Ether

Убеждаемся что, система видит сетевые интерфейсы. Если на этом этапе вы получаете пустые строки или сообщения об ошибках, значит оборудование: либо не подключено, либо не исправно, либо не совместимо. Подразумевается, что при установке Debian 6 (Squeeze) использовался специальный набор проприетарных драйверов. В первом случае ещё раз проверяем правильность включения сетевой карты, поддержку BIOS и т. д. Во втором и третьем случае производим замену оборудования. Если проблема возникла после сборки своего ядра — проверяем ядро. Данная информация выходит за рамки этой статьи, но в последующих статьях мы с вами рассмотрим сборку, проверку и настройку ядра.

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

И так, наше оборудование функционирует нормально. Нам нужно настроить статический IP-адрес со следующими параметрами: IP-адрес 192.168.123.254, маска подсети 255.255.255.0, основной шлюз 192.168.123.1.
Сначала посмотрим вывод команды ifconfig:

# ifconfig

или

$ sudo ifconfig

Второй вариант команды я написал для тех, кто при установке запретил вход суперпользователя. Далее в статье я не буду дублировать команды, просто запомните: если в начале кода есть значок #, значит команда выполняется от имени суперпользователя. Те, кто запретил вход суперпользователя в систему выполняют её с помощью sudo.
Если всё было настроено правильно ещё при установке системы, мы увидим следующее:

eth0

Link encap:Ethernet HWaddr 08:00:27:f1:d9:29

 

inet addr:192.168.123.254 Bcast:192.168.123.255 Mask:255.255.255.0

 

inet6 addr: fe80::a00:27ff:fef1:d929/64 Scope:Link

 

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

 

RX packets:6 errors:0 dropped:0 overruns:0 frame:0

 

TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

 

collisions:0 txqueuelen:1000

 

RX bytes:720 (720.0 B) TX bytes:852 (852.0 B)

 

Interrupt:10 Base address:0xd020

lo

Link encap:Local Loopback

 

inet addr:127.0.0.1 Mask:255.0.0.0

 

inet6 addr: ::1/128 Scope:Host

 

UP LOOPBACK RUNNING MTU:16436 Metric:1

 

RX packets:8 errors:0 dropped:0 overruns:0 frame:0

 

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

 

collisions:0 txqueuelen:0

 

RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

В первой строке мы видим тип подключения и mac-адрес (по другому — физический адрес). Во второй строке ip-адрес, широковещательный адрес и маску подсети. Третья строка относится к шестой версии стека протоколов TCP/IP, но об этом разговор пойдёт в одной из следующих статей. Когда мы видим RUNNING в четвертой строке это означает, что сетевой кабель подключен. Далее следует статистическая информация. Если настройка сети не удалась при установке, то в лучшем случае мы увидим настроенным только локальный интерфейс:

lo

Link encap:Local Loopback

 

inet addr:127.0.0.1 Mask:255.0.0.0

 

inet6 addr: ::1/128 Scope:Host

 

UP LOOPBACK RUNNING MTU:16436 Metric:1

 

RX packets:8 errors:0 dropped:0 overruns:0 frame:0

 

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

 

collisions:0 txqueuelen:0

 

RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

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

# ifdown eth0

Но в нашем случае интерфейс eth0 ещё не сконфигурирован и мы получим сообщение об ошибке:

interface eth0 not configured

Тогда, для начала, проверяем существование файла /etc/network/interfaces. Если он не существует, то создаём его, если существует, то редактируем текстовым редактором:

# vim /etc/network/interfaces

Для сервера с одним сетевым интерфейсом у нас должно получиться следующее:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.123.254
netmask 255.255.255.0
network 192.168.123.0
broadcast 192.168.123.255
gateway 192.168.123.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 213.177.96.1 213.177.97.1
dns-search aitishnik

auto eth0

В комментариях к файлу написано, что этот файл описывает доступные системе сетевые интерфейсы и как их активировать. Для получения большей информации следует посмотреть руководство interfaces(5). В предпоследней строке идёт перечисление через пробел dns-серверов, у вас там, естественно должны быть адреса dns-серверов вашего провайдера или вашей сети. В последней строке указывается ваша рабочая группа или домен. В моём примере это aitishnik.
Затем редактируем файл /etc/resolv.conf:

search aitishnik
nameserver 213.177.96.1
nameserver 213.177.97.1

В первой строке указываем название своей рабочей группы или домена после слова search. Во второй и третьей строках после слов nameserver пишем ip-адреса DNS-серверов вашей сети или вашего провайдера в зависимости от конфигурации вашей сети. Если DNS-сервер один, то третью строку не пишем. Например, если наш сервер стоит за интернет-шлюзом (о настройке сети для интернет-шлюза речь идёт в одноимённой статье) и он же является DNS-сервером, то файл /etc/resolv.conf будет выглядеть так:

search aitishnik
nameserver 192.168.123.1

Теперь нужно активировать сетевой интерфейс:

# ifup eth0

И перезапустить сетевые службы:

# /etc/init.d/networking restart

Проверяем что у нас получилось:

# ifconfig

eth0

Link encap:Ethernet HWaddr 08:00:27:f1:d9:29

 

inet addr:192.168.123.254 Bcast:192.168.123.255 Mask:255.255.255.0

 

inet6 addr: fe80::a00:27ff:fef1:d929/64 Scope:Link

 

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

 

RX packets:6 errors:0 dropped:0 overruns:0 frame:0

 

TX packets:12 errors:0 dropped:0 overruns:0 carrier:0

 

collisions:0 txqueuelen:1000

 

RX bytes:720 (720.0 B) TX bytes:852 (852.0 B)

 

Interrupt:10 Base address:0xd020

 

lo

Link encap:Local Loopback

 

inet addr:127.0.0.1 Mask:255.0.0.0

 

inet6 addr: ::1/128 Scope:Host

 

UP LOOPBACK RUNNING MTU:16436 Metric:1

 

RX packets:8 errors:0 dropped:0 overruns:0 frame:0

 

TX packets:8 errors:0 dropped:0 overruns:0 carrier:0

 

collisions:0 txqueuelen:0

 

RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

Проверяем работу сети. Сначала проверяем локальный интерфейс (параметр -с 4 подразумевает отправку четырех пакетов):

$ ping 127.0.0.1 -с 4

PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.245 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.501 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.140 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.041 ms

— 127.0.0.1 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3007ms
rtt min/avg/max/mdev = 0.041/0.231/0.501/0.172 ms

Затем проверяем сетевой интерфейс («пингуем» сами себя):

$ ping 192.168.123.254 -с 4

PING 192.168.123.254 (192.168.123.254) 56(84) bytes of data
64 bytes from 192.168.123.254: icmp_seq=1 ttl=64 time=0.135 ms
64 bytes from 192.168.123.254: icmp_seq=2 ttl=64 time=0.319 ms
64 bytes from 192.168.123.254: icmp_seq=3 ttl=64 time=0.170 ms
64 bytes from 192.168.123.254: icmp_seq=4 ttl=64 time=0.323 ms

— 192.168.123.254 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.135/0.236/0.323/0.087 ms

Теперь основной шлюз:

$ ping 192.168.123.1 -с 4

PING 192.168.123.1 (192.168.123.1) 56(84) bytes of data
64 bytes from 192.168.123.1: icmp_seq=1 ttl=255 time=1.85 ms
64 bytes from 192.168.123.1: icmp_seq=2 ttl=255 time=2.02 ms
64 bytes from 192.168.123.1: icmp_seq=3 ttl=255 time=1.51 ms
64 bytes from 192.168.123.1: icmp_seq=4 ttl=255 time=3.12 ms

— 192.168.123.1 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3016ms
rtt min/avg/max/mdev = 1.514/2.128/3.123/0.605 ms

И какой-нибудь удалённый хост по имени:

$ ping www.aitishnik.ru

PING www.aitishnik.ru (195.208.0.15) 56(84) bytes of data
64 bytes from 195.208.0.15: icmp_seq=1 ttl=56 time=119 ms
64 bytes from 195.208.0.15: icmp_seq=2 ttl=56 time=112 ms
64 bytes from 195.208.0.15: icmp_seq=3 ttl=56 time=113 ms
64 bytes from 195.208.0.15: icmp_seq=4 ttl=56 time=114 ms

— www.aitishnik.ru ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3030ms
rtt min/avg/max/mdev = 112.818/114.989/119.785/2.821 ms

На этом настройка статического IP-адреса для сервера с одним сетевым интерфейсом закончена.

Команды ifconfig и route

В случаях поиска неисправностей, для отладки и т.д. сетевые интерфейсы можно настроить с помощью команд ifconfig и route. Настроим сначала локальный интерфейс, если он не настроен, тем более что его нужно настроить в любом случае. Он используется для связи программ IP-клиентов с IP-серверами, запущенными на этой же машине :

# ifconfig lo 127.0.0.1

В параметрах команды не указываем маску подсети, т. к. по умолчанию устанавливается маска подсети 255.0.0.0

Проверяем:

$ ping 127.0.0.1 -с 3

PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.128 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.115 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.276 ms

— 127.0.0.1 ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2014ms
rtt min/avg/max/mdev = 0.115/0.173/0.276/0.073 ms

Для нашего сетевого интерфейса даём команду:

# ifconfig eth0 192.168.123.254 netmask 255.255.255.0 broadcast 192.168.123.255 up

Проверяем:

$ ping 192.186.123.254 -c 3

PING 192.168.123.254 (192.168.123.254) 56(84) bytes of data.
64 bytes from 192.168.123.254: icmp_seq=1 ttl=64 time=0.312 ms
64 bytes from 192.168.123.254: icmp_seq=2 ttl=64 time=2.16 ms
64 bytes from 192.168.123.254: icmp_seq=3 ttl=64 time=0.248 ms

— 192.168.123.254 ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2025ms
rtt min/avg/max/mdev = 0.248/0.909/2.169/0.891 ms

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

# route

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface

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

# route add -net 127.0.0.0 netmask 255.0.0.0 lo

А для сетевого интерфейса выполняем сначала:

# route add -net 192.168.0.0 netmask 255.255.255.0 eth0

А затем добавим основной шлюз:

# route add default gw 192.168.123.1 eth0

Посмотрим опять таблицу маршрутизации:

# route

Kernel IP routing table

Destination

Gateway

Genmask

Flags

Metric

Ref

Use

Iface

localnet

*

255.255.255.0

U

0

0

0

eth0

loopback

*

255.0.0.0

U

0

0

0

lo

default

192.168.123.1

0.0.0.0

UG

0

0

0

eth0

Проверяем работоспособность сети так же, как в предыдущем разделе.

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

В некоторых случаях сервер может получать динамический IP-адрес. Чаще всего это зарезервированный адрес или псевдодинамический. Т. е. на DHCP-сервере производится привязка определённого mac-адреса к определённому ip-адресу (об этом читайте в статье «Настройка DHCP в Debian»). Такая ситуация может встретиться и в локальной сети, но чаще всего она встречается тогда, когда провайдер выдает ip-адреса динамически. В этом случае файл /etc/network/interfaces выглядит следующим образом:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5)

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

Вот и всё!
В следующей статье мы рассмотрим настройку беспроводной карты в Debian

Об авторе:

Меня зовут Андрей Золкин. Из более, чем пятнадцати лет работы в сфере информационных технологий, десять лет работаю с системами, базирующимися на открытом исходном коде. На страницах сайта Aitishnik.Ru веду блоги по CMC Joomla и Debian GNU/Linux.

 

Ещё статьи о Debian

    • Опции vsftpd.conf

      Ниже я привожу список этих опций сгруппированных по типу — не так как в man — странице. Формат конфигурационного файла vsftpd.conf не сложный. Строки начинающиеся с символа # являются комментариями. Все остальные строки это директивы,…

    • Как обновить Debian 4 Etch до Debian 5 (Lenny)

      Вот чем мне нравится Debian, так тем что можно обновить установленную систему на ходу, без какой либо переустановки. На момент написания этой статьи произошла смена стабильного дистрибутива Debian. Вместо Debian 4 Etch, ставшей теперь…

    • Установка Debian

      Эта статья об установке операционной системы Debian GNU/Linux. Тема статьи достаточно обширна и это скорее тема для книги, нежели для статьи. Мне бы хотелось сделать статью «на вырост», т. е. со временем дополняя её ссылками на другие…

    • Интерактивный режим aptitude

      В первой части статьи рассказывалось об управлении пакетами с помощью aptitude в режиме командной строки. Теперь рассмотрим интерактивный режим этой программы. Управление программой производится с клавиатуры. Для входа в интерактивный…

    • Разметка дисков в Debian с помощью LVM

      Эта статья является часть цикла статей о Debian/GNU Linux и является дополнением к статье «Установка Debian на сервер». В этой статье я расскажу, как произвести разметку диска используя LVM.LVM – это аббревиатура от Logical Volume Manager, что переводится как менеджер…

    • Настройка сети в Debian

      В этой статье я опишу простую настройку сети для сервера под управлением ОС Debian 5 (Lenny). Всё, что описано в этой статье так же может быть использовано и для настройки сети в Debian 6 (Squeeze). Изначально рассматривалась настройка…

Как настроить сеть в Debian 9

В этой статье я опишу простую настройку сети для сервера под управлением ОС Debian 9 (Stretch). Эта статья является переработкой моей более ранней статьи «Настройка сети в Debian». Она была справедлива для версий старше Debian 9. В Debian 9 многое изменилось в настройке и диагностике сети. Те, кто перешёл сюда со старой статьи, уже знают, в чём дело. Но я повторюсь для тех, кто сразу попал на эту статью.
Во-первых, в Debian 9 изменилась система именования сетевых интерфейсов. Если раньше, например для Ethernet, имена интерфейсов были следующими: eth0, eth2, eth3 и т. д. То сейчас используются номера интерфейсов в BIOS, а также номера слотов PCI. Это называется stateless persistent network interface names (имена постоянных сетевых интерфейсов без отслеживания состояния) Т. е. имя может быть enp0s3, или ens30, или wlp3s0 для wi fi. При желании можно переименовать сетевые интерфейсы, вернуться к прежней системе, но это материал для отдельной статьи.

Во-вторых, раньше для настройки и диагностики сети использовались утилиты из пакета net-tools. При установке Debian этот пакет устанавливался по умолчанию вместе с системой. Теперь он просто присутствует в репозиториях и вместо него по умолчанию устанавливается пакет iproute2, При желании можно установить старый пакет (net-tools) и пользоваться прежними утилитами. Но мы этого делать не будем, и в этой статье будет описано использование программ из нового пакета.

В-третьих, изменилась система инициализации – Debian перешёл на systemd. Это значит, что сервисы надо перезапускать по-другому.

И так начнём. Обычно первичная настройка сети происходит ещё на этапе установки. Об этом можно прочесть в моей статье «Установка Debian на сервер». Если по какой-то причине это не было сделано при установке, то мы с вами попытаемся решить проблемы с сетью и настроить наш сервер.

Установка сетевой карты

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

# ip link show

или

$ sudo ip link show

Второй вариант команды написан для тех, кто при установке запретил вход суперпользователя. Далее в статье я не буду дублировать команды, просто запомните: если в начале кода есть значок #, значит команда выполняется от имени суперпользователя. Те, кто запретил вход суперпользователя в систему выполняют её с помощью sudo.

Видим на экране примерно следующее:

1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <broadcast,multicast,up,lower_up> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:90:45:38 brd ff:ff:ff:ff:ff:ff

Это список всех установленных интерфейсов. Первый блок описывает интерфейс локальной петли (link/loopback), а второй описывает интерфейс Ethernet (link/ether) с именем enp0s3.

Информация об интерфейсе содержит: имя интерфейса, установленные флаги состояния, MTU, тип и размер очереди фреймов, тип соединения, MAC-адрес, широковещательный адрес.

Некоторые флаги состояния (подробнее в man netdevice(7)):

  • LOOPBACK — интерфейс является локальным и не может взаимодействовать с другими узлами в сети;
  • UP — устройство подключено;
  • DOWN — устройство отключено;
  • NO-CARRIER — нет связи (не подключен кабель).
  • BROADCAST — устройство способно отправлять широковещательные фреймы;
  • POINTTOPOINT — соединение типа «точка-точка»
  • PROMISC — устройство находится в режиме «прослушивания» и принимает все фреймы.
  • NOARP — отключена поддержка разрешения имен сетевого уровня.
  • ALLMULTI — устройство принимает все групповые пакеты.

Убеждаемся что, система видит сетевые интерфейсы. Если на этом этапе вы получаете пустые строки или сообщения об ошибках, значит оборудование: либо не подключено, либо не исправно, либо не совместимо. Подразумевается, что при установке Debian использовался специальный набор проприетарных драйверов. В первом случае ещё раз проверяем правильность включения сетевой карты, поддержку BIOS и т. д. Во втором и третьем случае производим замену оборудования. Если проблема возникла после сборки своего ядра — проверяем ядро. Данная информация выходит за рамки этой статьи, но в последующих статьях мы с вами рассмотрим сборку, проверку и настройку ядра.

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

И так, наше оборудование функционирует нормально. Нам нужно настроить статический IP-адрес со следующими параметрами: IP-адрес 192.168.123.254, маска подсети 255.255.255.0, основной шлюз 192.168.123.1. Посмотрим вывод команды ip addr:

# ip addr show

Если всё было настроено правильно ещё при установке системы, мы увидим следующее:

1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
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:90:45:38 brd ff:ff:ff:ff:ff:ff
inet 192.168.123.254/24 brd 192.168.123.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe90:4538/64 scope link
valid_lft forever preferred_lft forever

Некоторая часть информации нам уже знакома. Смотрим информацию об интерфейсе Ethernet (второй в списке). Первое, что мы видим — тип адреса: inet – адрес IPv4, inet6 – адрес IPv6. Мы настраиваем сеть по протоколу IP четвёртой версии, поэтому смотрим на третью строку. Далее следует ip-адрес (192.168.123.254) с указанием маски подсети в битовом виде (/24). Затем идёт широковещательный (brd) адрес (192.168.123.255) подсети. Завершается строка областью видимости (scope global — действителен везде, scope link — только для данного устройства, scope host — для данного узла) и именем интерфейса (enp0s3).

Если настройка сети не удалась при установке, то в лучшем случае мы увидим настроенным только локальный интерфейс:

1: lo: <loopback,up,lower_up> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
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

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

# ifdown enp0s3

Но в нашем случае интерфейс enp0s3 ещё не сконфигурирован и мы получим сообщение об ошибке:

interface enp0s3 not configured

Тогда, для начала, проверяем существование файла /etc/network/interfaces. Если он не существует, то создаём его, если существует, то редактируем текстовым редактором:

# nano /etc/network/interfaces

Для сервера с одним сетевым интерфейсом у нас должно получиться следующее:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo enp0s3
iface lo inet loopback

# The primary network interface
allow-hotplug enp0s3
iface enp0s3 inet static
address 192.168.123.254
netmask 255.255.255.0
gateway 192.168.123.1
dns-nameservers 213.177.96.1 213.177.97.1

Символ # в тексте этого файла обозначает комментарии. В них написано, что файл interfaces описывает доступные системе сетевые интерфейсы и то, как их активировать. Для получения большей информации следует посмотреть руководство interfaces(5).

Остановимся на некоторых моментах:

  • auto – через пробел перечисляются имена сетевых интерфейсов, которые будут включаться при запуске операционной системы
  • allow-hotplugin – нужен, если возможна горячая замена сетевой карты, например, если она подключена через USB.
  • iface – ключевое слово, описывающее интерфейс. После него через пробел пишется имя этого интерфейса.
  • inet – тип ip адреса. inet – адрес IPv4
  • static – указывает на статический адрес
  • address – ip адрес
  • netmask – маска подсети
  • gateway – шлюз по умолчанию

В последней строке описания интерфейса идёт перечисление через пробел dns-серверов, у вас там, естественно должны быть адреса dns-серверов вашего провайдера или вашей сети. Сохраняем изменения (Ctr+O, затем Enter) и редактируем файл /etc/resolv.conf:

# nano /etc/resolv.conf

Он опять же должен содержать адреса dns-серверов вашего провайдера или вашей сети.

nameserver 213.177.96.1
nameserver 213.177.97.1

Сохраняем изменения и активируем сетевой интерфейс:

# ifup eth0

Если ошиблись при редактировании файлов, то тщательно проверяем и исправляем ошибки. Если всё заполнено правильно, перезапускаем сетевые службы:

# /etc/init.d/networking restart

Это по-старому. По-новому (с systemd) будет так:

# systemctl restart networking.service

Проверяем что у нас получилось, использую команду ip addr для своего интерфейса:

# ip addr show enp0s3

2: enp0s3: <broadcast,multicast,up,lower_up> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:90:45:38 brd ff:ff:ff:ff:ff:ff
inet 192.168.123.254/24 brd 192.168.123.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe90:4538/64 scope link
valid_lft forever preferred_lft forever

Проверяем работу сети. Сначала проверяем локальный интерфейс (параметр -с 4 подразумевает отправку четырех пакетов):

$ ping 127.0.0.1 -с 4

PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.036 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.045 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.044 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.043 ms

— 127.0.0.1 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3078ms
rtt min/avg/max/mdev = 0.036/0.042/0.045/0.003 ms

Затем проверяем сетевой интерфейс («пингуем» сами себя):

$ ping 192.168.123.254 -с 4

PING 192.168.123.254 (192.168.123.254) 56(84) bytes of data.
64 bytes from 192.168.123.254: icmp_seq=1 ttl=64 time=0.027 ms
64 bytes from 192.168.123.254: icmp_seq=2 ttl=64 time=0.044 ms
64 bytes from 192.168.123.254: icmp_seq=3 ttl=64 time=0.046 ms
64 bytes from 192.168.123.254: icmp_seq=4 ttl=64 time=0.045 ms

— 192.168.123.254 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3070ms
rtt min/avg/max/mdev = 0.027/0.040/0.046/0.010 ms

Теперь основной шлюз:

$ ping 192.168.123.1 -с 4

PING 192.168.123.1 (192.168.123.1) 56(84) bytes of data.
64 bytes from 192.168.123.1: icmp_seq=1 ttl=64 time=5.60 ms
64 bytes from 192.168.123.1: icmp_seq=2 ttl=64 time=0.986 ms
64 bytes from 192.168.123.1: icmp_seq=3 ttl=64 time=0.966 ms
64 bytes from 192.168.123.1: icmp_seq=4 ttl=64 time=0.975 ms

— 192.168.123.1 ping statistics —
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 0.966/2.132/5.602/2.003 ms

И какой-нибудь удалённый хост по имени:

$ ping www.aitishnik.ru

PING www.aitishnik.ru (195.208.1.108) 56(84) bytes of data.
64 bytes from std-carp8-http.nic.ru (195.208.1.108): icmp_seq=1 ttl=56 time=26.1 ms
64 bytes from std-carp8-http.nic.ru (195.208.1.108): icmp_seq=2 ttl=56 time=26.2 ms
64 bytes from std-carp8-http.nic.ru (195.208.1.108): icmp_seq=3 ttl=56 time=25.3 ms

— www.aitishnik.ru ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 25.384/25.940/26.260/0.394 ms

На этом настройка статического IP-адреса для сервера с одним сетевым интерфейсом закончена.

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

В некоторых случаях сервер может получать динамический IP-адрес. Чаще всего это зарезервированный адрес или псевдо статический. Т. е. на DHCP-сервере производится привязка определённого mac-адреса к определённому ip-адресу (об этом читайте в статье «Настройка DHCP в Debian»). Такая ситуация может встретиться и в локальной сети, но чаще всего она встречается тогда, когда провайдер выдает ip-адреса динамически. В этом случае файл /etc/network/interfaces выглядит следующим образом:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5)

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug enp0s3
iface enp0s3 inet dhcp

После сохранения файла перезапустим сетевой сервис:

# systemctl restart networking.service

И посмотрим, что получилось:

# ip addr show enp0s3

2: enp0s3: <broadcast,multicast,up,lower_up> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:90:45:38 brd ff:ff:ff:ff:ff:ff
inet 192.168.123.35/24 brd 192.168.123.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe90:4538/64 scope link
valid_lft forever preferred_lft forever

DHCP сервер моей сети выделил компьютеру ip адрес 192.168.123.35

Команда ip

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

# ip link show

Получить информацию по ip адресам:

# ip addr show

Удалить ip адрес:

# ip address del 192.168.123.35/24 dev enp0s3

Назначить ip адрес вместо удалённого:

# ip address add 192.168.123.254/24 brd + dev enp0s3

Получить информацию по маршрутам:

# ip route show

Добавить основной шлюз:

# ip route add default via 192.168.123.1

Добавить маршрут в сеть 192.168.111.0/24 через шлюз 192.168.123.2

# ip route add 192.168.111.0/24 via 192.168.123.2

Вот и всё!

Об авторе:

Меня зовут Андрей Золкин. Из более, чем пятнадцати лет работы в сфере информационных технологий, десять лет работаю с системами, базирующимися на открытом исходном коде. На страницах сайта Aitishnik.Ru веду блоги по CMC Joomla и Debian GNU/Linux.

 

Ещё статьи о Debian

    • Linux HTML-редакторы

      Если задать подобный вопрос на каком-нибудь из форумов, то с высокой долей вероятности вы наткнётесь на две диаметрально противоположных рекомендации — «составлять» всё в чисто визуальном (то бишь WYSIWYG) редакторе типа DreamWeaver либо…

    • Работаем с wget в Debian

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

    • Настройка сети в Debian 9

      В этой статье я опишу простую настройку сети для сервера под управлением ОС Debian 9 (Stretch). Эта статья является переработкой моей более ранней статьи «Настройка сети в Debian». Она была справедлива для версий старше Debian 9. В Debian 9 многое…

    • Настройка FTP сервера. Конфигурация с шифрованием SSL…

      Теперь изменим нашу конфигурацию ftp сервера следующим образом: анонимные пользователи не используются. Используются только виртуальные пользователи, учётные записи которых хранятся в MySQL. Для каждого пользователя можно задать свою…

    • Настройка беспроводной карты (Wi Fi)

      Попробовать настроить беспроводную карту (Wi Fi) в Debian можно ещё на этапе установки системы. Но на этапе установки поддерживается только алгоритм защиты WEP. Если используются более стойкий алгоритм защиты, то настройкой беспроводной…

    • Настройка обновлений в Debian

      После установки Debian Linux и настройки сети я рекомендую приступить к настройке обновлений. Для обновления и установки пакетов в Debian используются утилиты apt и aptitude. Независимо от того, какой из этих утилит Вы будете…

Debian – настройка сетевого интерфейса

Для того, чтобы компьютеры могли общаться между собой, необходимо устройство, которое позволяет делать это. Для этого придумали сетевой интерфейс (может быть физическим и виртуальным), благодаря которому информация по сети передается быстро и при необходимости надежно. Каждый сетевой интерфейс имеет MAC-адрес, также каждому сетевому интерфейсу присваивается IP-адрес. Настройка сетевого интерфейса в Linux системах производится в терминале с помощью команды ifconfig или addr.

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

Обычно физическому интерфейсу присваивается имя, например eth0. Сетевые устройства могут иметь имена, отличные от eth, например tr, ppp, sl, plip, ax, wlan и др. Интерфейс создаётся автоматически при загрузке ядра ОС и обнаружении сетевого устройства.  Также должен быть настроен сетевой интерфейс lo, так называемая «обратная петля». Основное применение этого интерфейса — работа приложений (клиент-сервер) на том же компьютере. К параметрам сетевого интерфейса можно отнести: IP-адрес, маска подсети, широковещательный адрес, метрика, MTU, MAC-адрес. В современном мире сетевой интерфейс уже встроен в материнскую плату компьютера (ноутбука).

Для настройки сетевого интерфейса все изменения производим в терминале под пользователем, имеющим право производить изменения в системе (root или специально созданным для этих целей пользователем). В первую очередь конечно же проверим, видит ли система наши сетевые интерфейсы. Открываем командную строку (можно нажать комбинацию клавиш Alt + F2 и набрать в открывшемся окне: gnome-terminal) и пишем следующую команду: 

Утилита dmesg выводит информацию о конфигурации оборудования, конечно же может использоваться вместе с grep:

# dmesg | grep eth

или

# lspci | grep Ethernet

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

# lspci

# lspci — проверяем информацию о всех PCI шинах и устройствах на них

# ifconfig

# ifconfig — используется для конфигурирования сетевых интерфейсов (можно использовать # ip addr)

# ip link ls

# ip link ls — посмотреть какие есть сетевые устройства

До настройки сетевого устройства желательно его «потушить»:

# ifdown eth0

# ifdown eth0 — потушить сетевой интерфейс

К сожалению, сетевые интерфейсы в операционных системах Linux настраиваются в конфигурационных файлах, имеющих разные названия (не во всех). Для операционной системы “Debian” — /etc/network/interfaces. Открываем в любом удобном редакторе:

# nano /etc/network/interfaces

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

# The loopback network interface
auto lo
iface lo inet loopback

auto eth0


iface eth0 inet static
address 192.168.0.3
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1

  • auto eth0 — интерфейс автоматически инициализируется при загрузке
  • iface eth0 inet static — номер eth – номер сетевого интерфейса, используем статический адрес: 
  • address 192.168.0.3 — IP адрес, присвоенный данному сетевому интерфейсу
  • network 192.168.0.0 — адрес сети
  • netmask 255.255.255.0 — маска сети
  • broadcast 192.168.0.255 — broadcast
  • gateway 192.168.0.1 — шлюз (если есть)

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

    # The loopback network interface
    auto lo
    iface lo inet loopback

    auto eth0
    iface eth0 inet dhcp

     
  • auto eth0 — интерфейс автоматически инициализируется при загрузке
  • iface eth0 inet dhcp – номер eth – номер сетевого интерфейса, используем динамический адрес

Соответственно сделать сетевой интерфейс снова рабочим:

# ifup eth0

 Затем проверяем работоспособность (например пингуем известный компьютер в сети):

# ping –с 4 192.168.0.1

Для перезапуска сетевого интерфейса используется команда (операционная система Debian):

# /etc/init.d/networking restart

Посмотреть, что и как делать, можно здесь:

 

Автоконфигурация сетевых интерфейсов в Debian GNU/Linux / Хабр

Решил рассказать о вариантах решения достаточно часто встречающейся проблемы для обладателей мобильных устройств. Проблема заключается в том, что зачастую лаптопы подключаются к достаточно большому количеству разных сетей, в которых далеко не всегда есть DHCP-сервер, либо же DHCP-сервер «отдаёт» не все необходимые настройки, либо же отдаёт неверные.

Автоподнятие интерфейса

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

Настройка ifplugd не представляет особой сложности сама по себе, но как минимум в Debian есть возможность опции указать в файле /etc/default/ifplugd. Стоит обратить внимание на опцию -d — время между определением отключения среды передачи данных (кабеля) и деконфигурацией интерфейса, возможно, имеет смысл его увеличить, так как весьма неприятно, когда из-за случайно выдернутого кабеля разрываются соединения. Опцию -u же, напротив, можно установить в небольшое значение — поднять интерфейс при появлении кабеля практически никогда не вредно.

Теоретически, ifplugd умеет работать и с отключаемыми адаптерами (параметр HOTPLUG_INTERFACES в конфигурационном файле), на практике же мне не удалось заставить его работать, потому это было сделано через udev. Всего у меня использовалось три Wi-Fi-адаптера, один из них подключался как PC Card (PCMCIA), другой — через USB, а позже появился встроенный, подключаемый через MiniPCI. Соответственно, в /etc/udev/rules.d/80-LOCAL-wlan-start.rules постепенно дописывались правила:

# WLAN adapters
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNEL=="wlan*", RUN+="/etc/network/wlan-up $env{INTERFACE}"

SUBSYSTEM=="rfkill", ACTION=="change", ENV{RFKILL_STATE}=="1", ENV{RFKILL_NAME}=="phy0", ENV{RFKILL_TYPE}=="wlan", RUN+="/etc/network/wlan-up wlan2"
SUBSYSTEM=="rfkill", ACTION=="change", ENV{RFKILL_STATE}=="0", ENV{RFKILL_NAME}=="phy0", ENV{RFKILL_TYPE}=="wlan", RUN+="/sbin/ifdown wlan2"
SUBSYSTEM=="rfkill", ACTION=="change", ENV{RFKILL_STATE}=="2", ENV{RFKILL_NAME}=="phy0", ENV{RFKILL_TYPE}=="wlan", RUN+="/sbin/ifdown wlan2"

В этом файле первая после комментария строка отрабатывает при подключении внешнего адаптера. Остальные же строки отрабатывают при получении события rfkill, которое означает изменение состояния переключателя встроенного Wi-Fi. Значения параметров здесь указаны для драйвера b43, у других драйверов они могут отличаться. К сожалению, так и не удалось придумать, как не указывать при этом имя интерфейса вручную.
Содержимое файла /etc/network/wlan-up:
#!/bin/sh

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

if=$1

logger -s -t wlan "Bringing up $if"

ifconfig $if up

poweroff=$(iwconfig $if|grep Tx-Power=off|wc -l)

if [ $poweroff -ne 0 ] ; then
        ifconfig $if down
        exit
fi

ifup --force $if 2>&1 | logger -s -t wlan

Установка переменной PATH необходима, так как при вызове скрипта из udev эта переменная не установлена, потому многие вещи начинают работать совершенно не так, как хотелось бы.

Файл /etc/network/wlan-up изначально представлял собой достаточно сложный bash-скрипт, производивший поиск сетей, а также предпринимавший попытки входа в них, но был значительно упрощён после того, как я случайно наткнулся на пакет guessnet, о котором речь пойдёт ниже.

Автоконфигурация сети

После того, как интерфейс, собственно, поднят, возникают две проблемы. Первая заключается в том, чтобы в случае Wi-Fi определить, какая из знакомых нам сетей доступна. Вторая заключается в том, чтобы непосредственно эту сеть настроить, если по какой-либо причине настройка по протоколу DHCP невозможна.

В Debian есть замечательнейший пакет guessnet, который позволяет достаточно легко решить обе проблемы, не прибегая к километровым колдунствам на bash, grep и sed, которыми мне пришлось воспользоваться до того, как я его нашёл.

guessnet пользуется такой возможностью механизма настройки сети в Debian /etc/network/interfaces, как логические интерфейсы и ключевое слово mapping. Логические интерфейсы, как подсказывает их название, представляют собой ни что иное, как профили настроек сети, которые можно применить при поднятии того или иного интерфейса примерно так: ifup eth0=home. Ключевое слово mapping представляет возможность написать скрипт, который осуществляет сопоставление физического интерфейса логическому.

Всё, что необходимо, чтобы подключить guessnet в /etc/network/interfaces — добавить секцию (stanza) mapping для соответствующего интерфейса:

mapping eth2
        script guessnet-ifupdown
        # map default: dhcp
        # map debug: true
        # map verbose: true
        map syslog: true

Ключевое слово map приобретает новый смысл: оно используется для передачи параметров в guessnet (про оригинальный смысл можно прочитать на странице interfaces (5) или в документации на ifupdown). Но об этом позже.

Сами профили определяются в точности так же, как и любые другие интерфейсы, с одной лишь только разницей: имя логического интерфейса не совпадает с именем физического (хотя может содержать его как подстроку в себе):

iface no-link inet manual
        test missing-cable
        pre-up echo No link present.
        pre-up false
        
iface dhcp inet dhcp

iface eth-home inet dhcp
        post-up route del default 2>&1 >/dev/null || true
        post-up pon dsl-eth-vpn
        post-up ifup ipv6-vps
        pre-down ifdown ipv6-vps
        pre-down poff dsl-eth-vpn
        test peer address 192.168.1.1 mac 00:19:CB:48:02:2A source 192.168.1.5

iface eth-lab inet static
        address 192.168.23.238
        netmask 255.255.255.224
        gateway 192.168.23.225
        test peer address 192.168.23.225

Как видно, в настройках каждого из приведённых логических интерфейсов присутствует ключевое слово test. Очень гибкая архитектура программы ifupdown позволяет сторонним программам (таким, как guessnet) перехватить их обработку либо просто игнорировать их (хотя конкретно guessnet работает иначе — он просто разбирает файл заново). Слово test позволяет задать условие, по которому будет выбрана та или иная конфигурация.

Логический интерфейс no-link рекомендуется создавать специально для того, чтобы guessnet не пытался запускать другие тесты при отсутствии кабеля.

Конфигурация dhcp принимает все настройки по DHCP, не заменяя ничего. Её бывает полезно установить как конфигурацию по умолчанию — большинство сетей всё же имеют хоть какой-нибудь DHCP сервер, слушая указания которого можно хотя бы получить базовый набор настроек.

Конфигурация eth-lab используется в сети с DHCP-сервером, который игнорирует запросы от незнакомых ему клиентов. Потому делается arping шлюза в данной сети — такой запрос отработает только в случае, если оба узла находятся в одном физическом сегменте сети.

Наконец, конфигурация eth-home одновременно использует настройки от DHCP-сервера, но дополнительно поднимает IPv6-туннель, а также удаляет IPv4-шлюз по умолчанию, фактически превращая машину в IPv6-only узел. Ещё одна особенность: для того, чтобы получить доступ к «другому концу» IPv6-туннеля, используется ADSL-соединение, которое любезно предоставляет модем Zyxel серии P-660. У модемов этой марки есть одна интересная прихоть: они игнорируют анонимные ARP-запросы (а именно такие рассылает по умолчанию guessnet). Чтобы избежать этого, в явном виде прописан адрес, который записывается в поле «источник» пакета. Кроме того, здесь в явной форме указан MAC-адрес модема.

Кроме этого, как я уже упоминал, guessnet умеет обнаруживать Wi-Fi-сети. Для этого ключевое слово test поддерживает опцию wireless:

iface wifi-MTS.BY inet dhcp
        test wireless essid MTS.BY
        wireless-essid MTS.BY
        wireless-key off

Необходимо учесть, что достаточно часто guessnet не может корректно определить «наличие кабеля» для Wi-Fi (оно и понятно), из-за чего в mapping для Wi-Fi-интерфейса нужно добавлять строку map !no-link.

Более подробно с возможностями guessnet можно ознакомиться на странице guessnet(8). Также к пакету прилагается неплохая документация с примерами использования. В принципе, ничто не мешает использовать guessnet и в других дистрибутивах — существует режим работы, «отвязанный» от специфичного для Debian пакета ifupdown.

Пара штрихов

Одна из сетей, в которых мне довольно часто приходится бывать, имеет DHCP-сервер, настроенный так, что запросы на обновление адреса отправляются два раза в минуту. Вместе с тем, через DHCP раздаются не подходящие мне настройки DNS и раз в полминуты перезаписывают мой /etc/resolv.conf. Решением такой проблемы может быть следующий скрипт (для dhclient3):

case $reason in
RENEW)
        make_resolv_conf () {
                true
        }
        ;;
*)
        return
        ;;
esac

Поместить его нужно в /etc/dhcp3/dhclient-enter-hooks.d под любым именем.

Конечно, такое решение является довольно грубым «хаком», так что возможно, установка пакета resolvconf и «подкручивание» приоритетов интерфейсов будут более предпочтительными.

Кроме того, рекомендуется поставить пакет ifupdown-extra, в нём есть несколько полезных дополнений к стандартным возможностям ifupdown.

Вот, пожалуй, и всё, что хотелось рассказать. Спасибо за внимание.

8,2. Настройка сети

8.2. Настройка сети

Сеть автоматически настраивается во время начальной установки. Если установлен Network Manager (что обычно бывает при установке на полный рабочий стол), то может оказаться, что на самом деле никакой настройки не требуется (например, если вы полагаетесь на DHCP в проводном соединении и не имеете особых требований). Если требуется конфигурация (например, для интерфейса WiFi), она создаст соответствующий файл в / etc / NetworkManager / system-connections / .

Если Network Manager не установлен, то установщик настроит ifupdown, создав файл / etc / network / interfaces . Строка, начинающаяся с auto , дает список интерфейсов, которые будут автоматически настроены при загрузке службой network . Когда имеется много интерфейсов, рекомендуется хранить конфигурацию в разных файлах внутри /etc/network/interfaces.d/ .

Таким образом, в контексте сервера ifupdown — это инструмент настройки сети, который вы обычно получаете.Вот почему мы рассмотрим это в следующих разделах.

8.2.1. Интерфейс Ethernet

Если на компьютере есть карта Ethernet, связанную с ним IP-сеть необходимо настроить одним из двух способов. Самый простой метод — это динамическая конфигурация с помощью DHCP, и он требует наличия DHCP-сервера в локальной сети. Он может указывать желаемое имя хоста, соответствующее настройке hostname в примере ниже. Затем DHCP-сервер отправляет параметры конфигурации для соответствующей сети.

Пример 8.1. Конфигурация DHCP

авто enp0s31f6
iface enp0s31f6 inet dhcp
  имя хоста Arrakis
 

«Статическая» конфигурация должна фиксировано указывать сетевые настройки. Это включает как минимум IP-адрес и маску подсети; также иногда указываются сетевые и широковещательные адреса. Маршрутизатор, подключающийся к внешней сети, будет указан как шлюз.

Пример 8.2. Статическая конфигурация

авто enp0s31f6
iface enp0s31f6 inet static
  адрес 192.168.0.3 / 24
  широковещательный 192.168.0.255
  сеть 192.168.0.0
  шлюз 192.168.0.1
 

8.2.2. Беспроводной интерфейс

Заставить беспроводные сетевые карты работать может быть немного сложнее. Прежде всего, они часто требуют установки проприетарных прошивок, которые не устанавливаются в Debian по умолчанию. Тогда беспроводные сети полагаются на криптографию, чтобы ограничить доступ только авторизованным пользователям, это подразумевает хранение некоторого секретного ключа в конфигурации сети. Давайте рассмотрим эти темы одну за другой.

8.2.2.1. Установка необходимых прошивок
Сначала вы должны включить несвободный репозиторий в файле APT sources.list: подробности об этом файле см. В Раздел 6.1, «Заполнение файла sources.list ». Многие прошивки проприетарные и поэтому находятся в этом репозитории. Вы можете попробовать пропустить этот шаг, если хотите, но если на следующем шаге не будет найдена необходимая прошивка, повторите попытку после включения платного раздела.

Затем вам необходимо установить соответствующие пакеты прошивки - * .Если вы не знаете, какой пакет вам нужен, вы можете установить пакет isenkram и запустить его команду isenkram-autoinstall-firmware . Пакеты часто называются в честь производителя оборудования или соответствующего модуля ядра: firmware-iwlwifi для беспроводных карт Intel, firmware-atheros для Qualcomm Atheros, firmware-ralink для Ralink и т. Д. Затем рекомендуется перезагрузка, потому что драйвер ядра обычно ищет файлы прошивки при первой загрузке и больше не после.

8.2.2.2. Записи, относящиеся к беспроводной сети в / etc / network / interfaces

ifupdown может управлять беспроводными интерфейсами, но ему требуется помощь пакета wpasupplicant, который обеспечивает необходимую интеграцию между ifupdown и командой wpa_supplicant , используемой для настройки беспроводных интерфейсов (при использовании шифрования WPA / WPA2). Обычная запись в / etc / network / interfaces должна быть расширена двумя дополнительными параметрами, чтобы указать имя беспроводной сети (также известное как SSID) и общий ключ (PSK).

Пример 8.3. Конфигурация DHCP для беспроводного интерфейса

авто wlp4s0
iface wlp4s0 inet dhcp
  wpa-ssid Falcot
  wpa-psk ccb290fd4fe6b22935cbae31449e050edd02ad44627b16ce0151668f5f53c01b
 

Параметр wpa-psk может содержать кодовую фразу в виде обычного текста или ее хешированную версию, созданную с помощью wpa_passphrase SSID passphrase . Если вы используете незашифрованное беспроводное соединение, вы должны указать wpa-key-mgmt NONE и no wpa-psk .Для получения дополнительной информации о возможных вариантах конфигурации см. /usr/share/doc/wpasupplicant/README.Debian.gz .

На этом этапе вам следует рассмотреть возможность ограничения разрешений на чтение в / etc / network / interfaces только для пользователя root, поскольку файл содержит закрытый ключ, к которому не все пользователи должны иметь доступ.

8.2.3. Подключение к PPP через модем PSTN

Соединение «точка-точка» (PPP) устанавливает прерывистое соединение; это наиболее распространенное решение для соединений, выполняемых с помощью телефонного модема («модем PSTN», поскольку соединение осуществляется через коммутируемую телефонную сеть общего пользования).

Для подключения с помощью телефонного модема требуется учетная запись у поставщика услуг доступа, включая номер телефона, имя пользователя, пароль и, иногда, используемый протокол аутентификации. Такое соединение настраивается с помощью инструмента pppconfig в одноименном пакете Debian. По умолчанию он устанавливает соединение с именем провайдер (как у интернет-провайдера). Если вы сомневаетесь в протоколе аутентификации, выберите PAP : он предлагается большинством интернет-провайдеров.

После настройки можно подключиться с помощью команды pon (задавая ей имя подключения в качестве параметра, когда значение по умолчанию provider не подходит). Линия разрывается командой poff . Эти две команды могут быть выполнены пользователем root или любым другим пользователем, если они входят в группу dip .

8.2.4. Подключение через модем ADSL

Общий термин «модем ADSL» охватывает множество устройств с очень разными функциями.С Linux проще всего использовать модемы, которые имеют интерфейс Ethernet (а не только интерфейс USB). Они имеют тенденцию быть популярными; большинство провайдеров Интернет-услуг ADSL предоставляют (или берут в аренду) «коробку» с интерфейсами Ethernet. В зависимости от типа модема требуемая конфигурация может сильно различаться.

8.2.4.1. Модемы с поддержкой PPPOE

Некоторые модемы Ethernet работают с протоколом PPPOE (протокол точка-точка через Ethernet). Инструмент pppoeconf (из одноименного пакета) настроит соединение.Для этого он изменяет файл / etc / ppp / peers / dsl-provider с предоставленными настройками и записывает информацию для входа в / etc / ppp / pap-secrets и / etc / ppp / chap- секреты файлов. Рекомендуется принять все изменения, которые он предлагает.

Как только эта конфигурация будет завершена, вы можете открыть ADSL-соединение с помощью команды pon dsl-provider и отключиться с помощью poff dsl-provider .

8.2.4.2. Модемы с поддержкой PPTP
Протокол PPTP (Point-to-Point Tunneling Protocol) был создан Microsoft. Развернутый в начале ADSL, он был быстро заменен PPPOE. Если вам навязывают этот протокол, см. Раздел 10.3.4, «PPTP».
8.2.4.3. Модемы с поддержкой DHCP

Когда модем подключен к компьютеру с помощью кабеля Ethernet (перекрестный кабель), вы обычно настраиваете сетевое соединение с помощью DHCP на компьютере; модем автоматически действует как шлюз по умолчанию и заботится о маршрутизации (что означает, что он управляет сетевым трафиком между компьютером и Интернетом).

Таким образом можно использовать большинство «ADSL-маршрутизаторов» на рынке, а также большинство ADSL-модемов, предоставляемых провайдерами Интернет-услуг.

8.2.5. Автоматическая настройка сети для пользователей в роуминге

Многие инженеры Falcot имеют портативные компьютеры, которые в профессиональных целях они используют и дома. Конфигурация сети для использования зависит от местоположения. Дома это может быть сеть Wi-Fi (защищенная ключом WPA), в то время как на рабочем месте используется проводная сеть для большей безопасности и большей пропускной способности.

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

Для этого программа состоит из двух частей: демон, работающий от имени пользователя root, обрабатывает активацию и настройку сетевых интерфейсов, а пользовательский интерфейс управляет этим демоном. PolicyKit обрабатывает необходимые авторизации для управления этой программой, а Debian настроил PolicyKit таким образом, чтобы члены группы netdev могли добавлять или изменять соединения Network Manager.

Network Manager умеет обрабатывать различные типы подключений (DHCP, ручная настройка, локальная сеть), но только если конфигурация задается самой программой.Вот почему он будет систематически игнорировать все сетевые интерфейсы в / etc / network / interfaces и /etc/network/interfaces.d/ , для которых он не подходит. Поскольку Network Manager не предоставляет подробностей, когда не отображаются сетевые соединения, простой способ — удалить из / etc / network / interfaces любую конфигурацию для всех интерфейсов, которые должны управляться Network Manager.

Обратите внимание, что эта программа устанавливается по умолчанию, если во время начальной установки выбрана задача «Среда рабочего стола».

.

Настройка сетевого интерфейса Debian — Подсказка для Linux

Знания относительно настройки сетевого интерфейса в Debian GNU / Linux и связанных с Debian дистрибутивах необходимы каждому инженеру Linux. В этой статье мы объясним вам, где найти соответствующую информацию и как настроить ее для IPv4, IPv4 [2] и IPv6 [3]. Количество вариантов довольно велико, но дает вам большую гибкость в вашей конкретной ситуации.

Настройка сети Debian

Вся конфигурация сетевых интерфейсов хранится в текстовых файлах в единственном каталоге с именем / etc / network.Этот каталог содержит ряд файлов и подкаталогов для настройки как для IPv4, так и для IPv6.

  • интерфейсов и интерфейсов. D: общая конфигурация для каждого интерфейса
  • if-down.d: скрипты, запускаемые в случае сбоя интерфейса
  • if-post-down.d: скрипты, запускаемые после отказа интерфейса
  • if-up.d: скрипты, которые запускаются, если интерфейс повышается
  • if-pre-up.d: скрипты, которые запускаются до запуска интерфейса

Конкретная конфигурация выполняется для каждого сетевого интерфейса.Вы можете сохранить все это в одном файле с именем interfaces или в виде отдельных файлов в каталоге interfaces.d. Типичная конфигурация IPv4 с портативного устройства показана ниже. Он состоит из одного петлевого интерфейса (/ dev / lo) , интерфейса Ethernet (/ dev / eth0) и беспроводного интерфейса (/ dev / wlan0) . Строка 1 включает все сценарии, которые хранятся в каталоге /etc/network/interfaces.d/ . Строки 3–5 настраивают / dev / lo , строки 7–9 / dev / eth0, а строка 11 — интерфейс / dev / wlan0.Подробное объяснение отдельных команд приведено ниже.

1 источник /etc/network/interfaces.d/*
2
3 # Петлевой сетевой интерфейс
4 auto lo
5 iface lo inet loopback
6
7 # Основной сетевой интерфейс
8 allow-hotplug eth0
9 iface eth0 inet dhcp
10
11 iface wlan0 inet dhcp

Для других выпусков Debian GNU / Linux или основанных на нем дистрибутивов файл «интерфейсы» может выглядеть аналогично, но с другими именами сетевых устройств.Начиная с Debian 9 «Растянуть» старые сетевые имена, такие как / dev / eth0, / dev / eth2 и / dev / wlan0 , исчезли, поскольку имя устройства может измениться. Новые имена аналогичны этим — / dev / enp6s0 , / dev / enp8s0 , / dev / enp0s31f6 и / dev / enp5s0 [1]. Чтобы узнать о доступных сетевых интерфейсах, посмотрите файл «/ sys / class / net» — в нашем случае интерфейсы называются / dev / lo и / dev / enp0s3 .

Список доступных сетевых интерфейсов:


Конфигурация этих интерфейсов выглядит следующим образом.Изображение ниже взято из Debian GNU / Linux 9.5. ’

Базовая конфигурация сети в Debian GNU / Linux 9.5:


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

Подробная информация о конфигурации сети Debian

Автоматическое включение интерфейса при запуске

При запуске вашей системы сценарии установки проходят через файлы конфигурации для сетевых интерфейсов. Для автоматического включения интерфейса добавьте ключевое слово «auto» (сокращение от «allow-auto»), за которым следует логическое имя интерфейса (ов).Сценарии установки вызовут команду «ifup -a» (сокращение от «–all»), которая активирует упомянутые интерфейсы. Следующая строка выведет только интерфейс loopback / dev / lo:

Сетевые интерфейсы отображаются в том порядке, в котором они перечислены. Следующая строка вызывает / dev / lo, за которым следует / dev / wlan0 и, в конечном итоге, / dev / eth0.

Активировать интерфейс, если сетевой кабель подключен

Ключевое слово «allow-hotplug» приводит к событию, основанному на физическом соединении.Именованный сетевой интерфейс активируется, как только сетевой кабель подключен, и деактивируется, как только сетевой кабель отключается. Следующая строка демонстрирует это для интерфейса Ethernet / dev / eth0 (аналогично строке 8 листинга 1).

Конфигурация статического интерфейса

Для связи с другими компьютерами в сети интерфейсу назначается IP-адрес. Этот адрес получается либо динамически (через DHCP), либо фиксируется (статическая конфигурация).Поэтому объявление интерфейса начинается с ключевого слова «iface», за которым следует логическое имя сетевого интерфейса, тип соединения и метод, используемый для получения IP-адреса. В следующем примере это показано для сетевого интерфейса / dev / eth0 со статическим IPv4-адресом 192.168.1.5.

iface eth0 inet static
адрес 192.168.1.5
сетевая маска 255.255.255.0
шлюз 192.168.1.1

После объявления интерфейса вам предлагается указать ряд опций (название опции в скобках).Сюда входят такие значения, как IP-адрес (адрес), сетевая маска (сетевая маска), широковещательный диапазон (широковещательный), метрика маршрутизации для шлюза по умолчанию (метрика), шлюз по умолчанию (шлюз), адрес другой конечной точки. (точка-точка), локальный адрес ссылки (hwaddress), размер пакета (mtu), а также область действия адреса (область). В следующем примере показана конфигурация IPv6 для сетевого интерфейса / dev / enp0s3 [4].

iface enp0s3 inet6 статический адрес
fd4e: a32c: 3873: 9e59: 0004 :: 254
сетевая маска 80
шлюз fd4e: a32c: 3873: 9e59: 0004 :: 1

Динамическая настройка интерфейса через DHCP

Подключение к разным сетям требует гибкости.Протокол динамического управления хостом (DHCP) [5] делает эту гибкость возможной, а сетевые сценарии назначают IP-адрес сетевому интерфейсу, который передается от DHCP-сервера. Следующая строка демонстрирует это для интерфейса wlan с именем / dev / wlan0:

iface wlan0 inet dhcp

# Для IPv6 используйте эту строку вместо:
iface wlan0 inet6 dhcp

Подобно статической конфигурации, приведенной выше, можно установить ряд опций. Эти параметры зависят от вашей настройки DHCP.Среди прочего, список включает запрашиваемое имя хоста (имя хоста), метрику для добавленных маршрутов (метрика), предпочтительное время аренды в часах или секундах (leasehours, leasetime), идентификатор клиента (client) или адрес оборудования (hwaddress ).

Другие опции

Файл конфигурации / etc / interfaces также позволяет устанавливать протокол начальной загрузки (BOOTP) [6] (bootp), PPP (ppp), а также IPX [7].

Отображение конфигурации интерфейса

До выпуска Debian 8 GNU / Linux используйте команду «/ sbin / ifconfig» для отображения конфигурации интерфейса.См. Конфигурацию для первого интерфейса Ethernet ниже.

Конфигурация интерфейса с использованием ifconfig :

Начиная с версии 9, команда «ifconfig» больше не предустановлена ​​и заменена своим предшественником «ip». Вместо этого используйте команду «ip addr show».

Конфигурация интерфейса с использованием ip:

Включение и отключение интерфейса

Как уже было описано выше, опция «auto» автоматически включает интерфейс при запуске.Есть две команды для включения и отключения интерфейса вручную. До Debian 8 используйте «ifconfig eth0 up» или «ifup eth0» для включения интерфейса. Начиная с Debian 9 используйте только «ifup eth0». Аналогами являются «ifconfig eth0 down» и «ifdown eth0». На изображении ниже показан вывод по умолчанию при включении интерфейса.

Активация интерфейса с помощью ifup:

Добавление дополнительных опций

Можно добавить дальнейшее действие в случае активации или деактивации интерфейса.Эти сценарии называются сценариями if-pre-up и if-post-down и используются перед включением и после отключения интерфейса.

Следующий пример демонстрирует это в сочетании с брандмауэром, который активен, если интерфейс также активен. В строке 3 перед активацией интерфейса вызывается сценарий /usr/local/sbin/firewall-enable.sh (отсюда тег «pre-up», а в строке 4 сценарий «/ usr / local / sbin / firewall- disable.sh »вызывается после деактивации интерфейса.

1 allow-hotplug eth0
2 iface eth0 inet dhcp
3 pre-up / usr / local / sbin / firewall-enable.sh
4 после выключения /usr/local/sbin/firewall-disable.sh

Заключение

Базовая конфигурация сетевых интерфейсов в Debian GNU / Linux сравнима проста — несколько строк кода, и готово. Для получения дополнительной информации о дополнительных параметрах вы можете ознакомиться с приведенными ниже ресурсами.

Ссылки и справочные материалы

[1] Debian Wiki, Конфигурация сети
[2] IPv4, Википедия
[3] IPv6, Википедия
[4] Debian Static IPv4 и IPv6
[5] Протокол динамического управления хостом (DHCP), Википедия
[6] Протокол начальной загрузки (BOOTP), Википедия
[7] Межсетевой обмен пакетами (IPX), Википедия

Спасибо

Автор благодарит Axel Beckert за помощь и критические комментарии при подготовке статьи.

.

Сеть Debian для базовых и опытных пользователей

Основой любой сети, основанной на хостах * nix, является сочетание трех протоколов «Протокол управления транспортом / Интернет-протокол (TCP / IP)». Эта комбинация состоит из Интернет-протокола (IP), протокола управления транспортом (TCP) и универсального протокола дейтаграмм (UDP).

По умолчанию большинство пользователей настраивают свою сетевую карту во время установки Debian. Однако вы можете использовать команду ifconfig в приглашении оболочки или графические инструменты конфигурации сети Ubuntu, такие как network-admin, для редактирования информации о сетевых устройствах вашей системы или для добавления или удаления сетевых устройств в вашей системе

Настройка сети с помощью инструмента графической настройки в Debian

Если вы новичок в работе с сетями, графический инструмент настройки — лучший метод настройки нового оборудования в Debian.Мы собираемся использовать инструмент с графическим интерфейсом «network-admin» для настройки сети. Помните, что для запуска network-admin вы должны быть root.

Есть два способа запустить network-admin. Во-первых, вы можете использовать свой терминал, чтобы ввести «network-admin», он запустится, или вы можете перейти на Рабочий стол -> Администрирование -> Сеть

Теперь он запросит пароль root, введите пароль root и нажмите ОК

Когда он откроется, вы должны увидеть следующий экран

На приведенном выше экране выберите проводное соединение и щелкните вкладку свойств, вы должны увидеть следующий экран: моя сетевая карта в настоящее время настроена для DHCP-клиента, и вам необходимо убедиться, что флажок «Включить это соединение» установлен.

Если вы хотите настроить статический IP-адрес, вам нужно выбрать раскрывающийся список в разделе «Конфигурация», выбрать статический IP-адрес и убедиться, что флажок «Разрешить это соединение» установлен.

После выбора статического IP-адреса вам необходимо выбрать IP-адрес, маску подсети, адрес шлюза и нажать ОК

Теперь вы нажимаете на вкладку «Общие», здесь вы можете ввести свое имя хоста, имя домена

Далее вам нужно щелкнуть вкладку «DNS», чтобы настроить параметры DNS вашей системы, имя хоста или путь поиска DNS.

Щелкните вкладку «Хосты», а затем нажмите кнопку «Добавить» или «Свойства» (после выбора хоста), чтобы создать или отредактировать запись в файле / etc / hosts вашей системы

Выделите существующую запись, а затем нажмите кнопку «Свойства», чтобы изменить записи / etc / hosts на вкладке «Хосты» экрана «Конфигурация сети».

Вы также можете назначить своему компьютеру различные местоположения, что особенно полезно, если вы используете портативный компьютер и перемещаетесь между несколькими сетями, каждая из которых требует различных конфигураций.Просто выберите серую полосу в верхней части окна сетевого администратора и выберите «Создать местоположение». Введите имя, например «Дом», а затем повторите это еще раз, чтобы создать другое место — «Работа». Каждый раз, когда вы переключаетесь между местоположениями, Ubuntu обнаруживает, что ему необходимо использовать конфигурации, специфичные для этих местоположений, поэтому, например, вы можете использовать DHCP на работе, но не дома. Просто; просто выберите местоположение «Дом», настройте подключение к сети Ethernet для использования статического IP-адреса, и все готово для переключения между домашней и корпоративной сетями.

.

Все о Debian / etc / network / interfaces File — Linux Hint

Файл / etc / network / interfaces , доступный в Debian и производных от него дистрибутивах, позволяет определять статические и динамические IP-адреса для интерфейсов, настраивать информацию о маршрутизации и шлюзы по умолчанию, маскировать сетевое соединение и многое другое.

По умолчанию интерфейсов Файл выглядит следующим образом:

Где auto запускает интерфейс при загрузке, а iface вызывает сетевой интерфейс (в данном случае lo, loopback).Все строки, начинающиеся с « auto », определяют интерфейсы, которые будут включены при запуске команды « ifup -a », выполняемой при загрузке.

Строки, начинающиеся с «iface», имеют следующий синтаксис:

iface <интерфейс> <адрес_семейства> <метод>

Например:

В следующем примере показано, как настроить сетевую карту с использованием DHCP:

Настройка интерфейса с DHCP путем редактирования файла / etc / network / interfaces:

Чтобы добавить новый интерфейс с использованием DHCP, добавьте следующие строки:

auto
allow-hotplug
iface inet dhcp

Где allow-hotplug запустит интерфейс при обнаружении события.

Примечание: для IPv6 добавьте « inet6 »: iface inet6 dhcp

Где <интерфейс> вы должны указать имя вашего устройства, eth0 , enp2s0 , wlp3s0 и т. Д.

Настройка интерфейса со статическим адресом путем редактирования файла / etc / network / interfaces:

Если вместо настройки интерфейса с помощью DHCP вы хотите установить статический IP-адрес и шлюз, замените предыдущие инструкции следующими (замените 192.168.0.8 / 24 и 192.168.0.1 с правильными IP-адресами):

авто
iface inet static
адрес 192.168.0.1
сетевая маска 255.255.255.0

шлюз 192.168.0.1
DNS-серверов 8.8.8.8

Определение шлюза и широковещательной передачи необязательно.
В следующем примере показана другая конфигурация, которая запускается после того, как сетевой интерфейс включен (включен) или отключен (выключен). Строки « вверх, » выполняются, когда устройство включено, а строки « вниз» , когда оно отключено:

auto eth0
iface eth0 inet static
адрес 192.168.0.5
сеть 192.168.0.0
netmask 255.255.255.128
broadcast 192.168.0.0
up route add -net 192.168.0.128 netmask 255.255.255.0 gw 192.168.0.1
up route add default gw 192.168.0.200
down route del default gw 192.168.0.200
down route del -net 192.168.0.128 маска сети 255.255.255.128 gw 192.168.0.1

Настройка сетевой карты с 2 интерфейсами:

В следующем примере ниже показана статическая конфигурация сетевой карты с двумя интерфейсами:

auto eth0 eth0: 1
iface eth0 inet static
адрес 192.168.0.5
сеть 192.168.0.0
сетевая маска 255.255.255.0
широковещательная передача 192.168.0.255
шлюз 192.168.0.1
iface eth0: 1 inet статический адрес
192.168.0.10 сеть
192.168.0.0
сетевая маска 255.255.255.0

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

Настройте сетевое соединение, отредактировав файл / etc / network / interfaces:

В следующем примере показана моя предыдущая конфигурация режима связывания 1 в файле / etc / network / interfaces, я оставлю интерфейсы с их именами для облегчения понимания:

auto enp2s0
iface enp2s0 inet manual
bond-master bond0
bond-primary enp2s0 wlp3s0

auto wlp3s0
iface wlp3s0 inet manual
bond-master bond0
bond-primary enp2s0 wlp3s0
wpa-первичный enp2s0 wlp3s0
wpa-wpa ’14: CF: E2: 2A: EF: 00 ‘
wpa-psk’ 972537288765 ‘
auto bond0
iface bond0 inet dhcp
bond-slaves нет
bond-mode active-backup
bond-miimon 100
bond-downdelay 200
Задержка до выпуска облигаций 200

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

iface bond0 inet static
адрес 192.168.0.54
сетевая маска 255.255.255.0
сеть 192.168.0.0
шлюз 192.168.0.1

Вы можете запустить следующую команду, чтобы убедиться, что соединение работает правильно:

# cat / proc / net / bonding / bond0

Источник примеров: Как выполнить объединение сети Linux

Включить ведение журнала для файла / etc / network / interfaces:

Есть 3 варианта, связанные с ведением журнала:

VERBOSE: указывает, что файлы журнала содержат подробную информацию.
DEBUG: включить отладку при ведении журнала.
SYSLOG: сохранять журналы в / var / log / syslog.

Предварительные команды для / etc / network / interfaces: Предварительные команды выполняются перед включением сетевого устройства. Если предварительная команда не сработает, активация сетевой карты не состоится.

Инструкции пост-ап для / etc / network / interfaces: Инструкции пост-ап выполняются после включения сетевого интерфейса.

Инструкции перед отключением для / etc / network / interfaces: Инструкции перед отключением выполняются перед отключением сетевого устройства.

Инструкции после отключения для / etc / network / interfaces: Инструкции после отключения выполняются после отключения сетевого интерфейса.

Флаги «Pre-up», «pre-down», «post-up» и «post-down» являются условными, если они все равно сетевое устройство не будет включено или не будет правильно помечено как отключенное.

Например, инструкция:

предварительная установка / usr / local / sbin / iptables

Запустит брандмауэр перед включением сетевого интерфейса, если iptables не запускается, сетевой интерфейс не включается.

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

/etc/network/if-down.d
/etc/network/if-post-down.d
/etc/network/if-pre-up.d
/etc/network/if-up.d

Файл / etc / network / interfaces очень сложен, и многие другие доступные параметры подробно описаны на главной странице или в Интернете по адресу https: // manpages.debian.org/jessie/ifupdown/interfaces.5.en.html .

Надеюсь, вы нашли эту краткую статью о О debian / etc / network / interfaces File полезной.
Следите за LinuxHint для получения дополнительных обновлений и советов по Linux и сети.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *