Есть два сетевых интерфейса linux

Объединение сетевых интерфейсов в Linux. Настройка bonding

Объединение сетевых интерфейсов(Bonding) – это механизм, используемый Linux-серверами и предполагающий связь нескольких физических интерфейсов в один виртуальный, что позволяет обеспечить большую пропускную способность или отказоустойчивость в случае повреждения кабеля. В данном руководстве мы разберем реализацию объединения интерфейсов в Linux для Ubuntu/Debian и CentOS/RHEL/Fedora.

Агрегация сетевых интерфейсов в Ubuntu и Debian

Важно! Если у вас используется Ubuntu версии 17.10 и выше, то необходимо установить пакет ifupdown или настраивать агрегацию каналов нужно через netplan

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

В более старых версиях Debian или Ubuntu может потребоваться установка пакета ifenslave:

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

Для создания постоянного связанного интерфейса типа mode 0 (ниже мы разберем эти типы более подробно), нужно отредактировать файлы конфигурации сетевых интерфейсов. Откройте с помощью любого текстового редактора, например nano, файл /etc/network/interfaces , как показано в следующем фрагменте (замените IP-адрес, маску подсети, шлюз и DNS-серверы на используемые в вашей сети).

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

Настройки связанного интерфейса можно проверить при помощи следующих команд:

Подробную информацию об объединенном интерфейсе можно получить, просмотрев содержимое следующего файла ядра командой cat:

Для отладки ошибок можно использовать команду tail

Проверку параметров сетевой карты можно выполнить при помощи инструмента mii-tool:

Режимы работы

mode=0 (balance-rr)
При этом методе объединения трафик распределяется по принципу «карусели»: пакеты по очереди направляются на сетевые карты объединённого интерфейса. Например, если у нас есть физические интерфейсы eth0, eth1, and eth2, объединенные в bond0, первый пакет будет отправляться через eth0, второй — через eth1, третий — через eth2, а четвертый снова через eth0 и т.д.

mode=1 (active-backup)
Когда используется этот метод, активен только один физический интерфейс, а остальные работают как резервные на случай отказа основного.

mode=2 (balance-xor)
В данном случае объединенный интерфейс определяет, через какую физическую сетевую карту отправить пакеты, в зависимости от MAC-адресов источника и получателя.

mode=3 (broadcast) Широковещательный режим, все пакеты отправляются через каждый интерфейс. Имеет ограниченное применение, но обеспечивает значительную отказоустойчивость.

mode=4 (802.3ad)
Особый режим объединения. Для него требуется специально настраивать коммутатор, к которому подключен объединенный интерфейс. Реализует стандарты объединения каналов IEEE и обеспечивает как увеличение пропускной способности, так и отказоустойчивость.

mode=5 (balance-tlb)
Распределение нагрузки при передаче. Входящий трафик обрабатывается в обычном режиме, а при передаче интерфейс определяется на основе данных о загруженности.

mode=6 (balance-alb)
Адаптивное распределение нагрузки. Аналогично предыдущему режиму, но с возможностью балансировать также входящую нагрузку.

Объединение сетевых интерфейсов в CentOS, RHEL и Fedora

Создайте новый файл bonding.conf в директории /etc/modprobe.d/ . Имя может быть любым, но расширение должно быть .conf. Вставьте в этот файл следующую строку:

Такая строка в файле /etc/modprobe.d/bonding.conf требуется для каждого bond интерфейса.
Для агрегации интерфейсов создайте в директории /etc/sysconfig/network-scripts/ файл конфигурации с именем ifcfg-bond0. Вот пример содержимого файла конфигурации (IP-адреса в вашей системе могут отличаться):

После создания объединённого интерфейса нужно настроить его и связанные с ним сетевые карты, добавив в файлы конфигурации директивы MASTER и SLAVE. Для всех связанных интерфейсов эти файлы могут быть почти одинаковыми. Например, у двух интерфейсов eth0 и eth1, связанных в один, они могут иметь следующий вид. Отредактируйте их, как показано ниже.
Для eth0

Значение этих директив следующее:
DEVICE: определяет имя устройства
USERCTL: определяет, может ли пользователь управлять интерфейсом (в данном случае нет)
ONBOOT: определяет, включать ли интерфейс при загрузке
MASTER: есть ли у этого устройства ведущий интерфейс (здесь это bond0)
SLAVE: работает ли это устройство каки ведомое
BOOTPROTO: Определяет получение IP-адреса по DHCP. При статическом IP-адресе устанавливается значение none

Читайте также:  Включить пользователя другой windows

Перезагрузите сетевую службу и проверьте конфигурацию командой ifconfig.

Заключение

Объединение сетевых интерфейсов — удобный и функциональный механизм для обеспечения качественной и бесперебойной работы вашей сети. Надеемся, данное руководство было полезным. Более подробную информацию об используемых командах можно получить в соответствующих man-страницах.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Как найти доступные сетевые интерфейсы в Linux

Одна из общих задач, которую мы выполняем после установки системы Linux, – настройка сети.

Конечно, вы можете настроить сетевые интерфейсы во время установки.

Но некоторые из вас могут предпочесть сделать это после установки или изменить существующие настройки.

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

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

Найти доступные сетевые интерфейсы в Linux

Мы можем найти доступные сетевые карты несколькими способами.

Способ 1. Использование команды ifconfig:

Наиболее часто используемый метод поиска сведений о сетевом интерфейсе – это использование команды ifconfig.

Я полагаю, что некоторые пользователи Linux все еще могут использовать это.

Как вы видите в приведенном выше выводе, у меня есть два сетевых интерфейса, а именно enp5s0 (на плате проводного адаптера Ethernet) и wlp9s0 (адаптер беспроводной сети) на моем компьютере с Linux.

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

Он имеет IP-адрес 127.0.0.1.

Мы также можем использовать одну и ту же команду ifconfig во многих вариантах UNIX, например, FreeBSD, для просмотра списка доступных сетевых карт.

Способ 2. Использование команды «ip»:

Команда ifconfig устарела в последних версиях Linux.

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

Вы также можете использовать следующие команды.

Вы заметили, что эти команды также показывают состояние подключения сетевых интерфейсов?

Если вы внимательно посмотрите на вышеприведенный вывод, вы заметите, что моя карта Ethernet не подключена с помощью сетевого кабеля (см. Слово «DOWN» в вышеприведенном выводе).

И беспроводная сетевая карта подключена (см. Слово «UP»).

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

Этих двух команд (ifconfig и ip) достаточно, чтобы найти доступные сетевые карты в ваших системах Linux.

Тем не менее, есть немного других доступных методов для перечисления сетевых интерфейсов в Linux.

Способ 3:

Ядро Linux сохраняет данные о сетевом интерфейсе в каталоге /sys/class/net.

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

Способ 4:

В операционных системах Linux файл /proc/net/dev содержит статистику о сетевых интерфейсах.

Чтобы просмотреть доступные сетевые карты, просто просмотрите его содержимое с помощью команды:

Способ 5: использование команды «netstat»

Команда netstat отображает различные сведения, такие как сетевые подключения, таблицы маршрутизации, статистику интерфейса, маскарадные подключения и мультикаст.

Пожалуйста, помните, что netstat устарел.

Замена для «netstat -i» – «ip -s link».

Также обратите внимание, что этот метод будет перечислять только активные интерфейсы, а не все доступные интерфейсы.

Способ 6: использование команды «nmcli»

Nmcli – это nmcli – инструмент командной строки для управления NetworkManager и создания отчетов о состоянии сети.

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

Если у вас установлена система Linux с установленным Network Manager, вы можете получить список доступных сетевых интерфейсов с помощью инструмента nmcli, используя следующие команды:

Теперь вы знаете, как найти доступные сетевые интерфейсы в Linux.

Далее, проверьте следующие руководства, чтобы узнать, как настроить IP-адрес в Linux.

Источник

Настройка локальной сети в Linux

Для систематизирования информации по настройке сети в ОС Linux было решено написать эту заметку. Здесь в доступной форме описан процесс настройки сетевого интерфейса на примере ОС Ubuntu. Также данное руководство поможет «поднять» локальную сеть и на любом другом дистрибутиве Linux.

Содержание

Для просмотра текущих параметров сети и состояния сетевых интерфейсов в ОС Линукс существует команда:

Читайте также:  Firefox 64 bits windows downloads

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

Из приведенного примера видно, что на компьютере используется два сетевых интерфейса: eth0 и lo.

Интерфейс lo — это локальная петля, которая имеет IP-адрес 127.0.0.1 и предназначена для сетевого доступа к своему же компьютеру. Далее этот интерфейс рассматриваться не будет, так как для эффективной работы не требует дополнительной настройки.

Интерфейс eth0 — это Ethernet сетевая карта, которая имеет сетевые параметры: IP-адрес — 192.168.1.18, маску сети — 255.255.0.0 и MAC-адрес — 00:11:5b:91:25:3e. Значение RUNNING показывает, что в данный момент сетевой интерфейс eth0 работает.

Для просмотра типа соединения, скорости и поддерживаемых параметров сетевым интерфейсом eth0 набираем команду:

Из вывода видно, что сетевой интерфейс eth0 работает на скорости 100Мб/с с включенным полным дуплексом (Full Duplex). Полный дуплекс от полудуплекса (Half Duplex) отличается тем, что первый обеспечивает передачу данных в обе стороны одновременно, а второй осуществляет передачу входящих и исходящих данных поочередно.

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

Для возобновления работы сетевого интерфейса eth0:

Эта строка запускает bash-скрипт networking, перезапускающий сетевые интерфейсы системы.

Так же по аналогии производится остановка всех интерфейсов:

Настроить сеть можно одним из вышеприведенных способов. Эти два способа абсолютно взаимозаменяемые. Кому как привычнее.

  1. Настройка сети с помощью команд.

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

Чтобы задать основной IP-адрес и маску сети для интерфейса eth0:

Редактировать будем конфигурационный файл /etc/network/interfaces. Чтобы вывести на экран содержимое конфига, набираем команду:

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

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

Строка auto eth0 говорит, что сетевой интерфейс eth0 должен стартовать при загрузке ОС.

Вторая строка iface eth0 inet static говорит, что сетевому интерфейсу eth0 IP-адрес задается вручную.

Строка address 192.168.1.18 говорит, что сетевому интерфейсу eth0 назначен IP-адрес 192.168.1.18 (этот сетевой адрес взят для примера и на его месте может быть любой другой).

Строка netmask 255.255.0.0 говорит, что маска сети является 255.255.0.0.

Последняя строчка gateway 192.168.1.253 показывает, что сетевым шлюзом является компьютер с IP-адресом 192.168.1.253. Эта строка может отсутствовать, так как ее наличие в конфигурационном файле зависит от параметров локальной сети, к которой подключается настраиваемый компьютер.

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

Настройка DNS-сервера.

Так же во многих случаях для правильной работы локальной сети на настраиваемом компьютере потребуется ввести IP-адрес используемого DNS-сервера.

Для этого нужно открыть конфигурационный файл командой:

Строка nameserver 192.168.1.253 говорит, что в качестве DNS-сервера используется компьютер с IP-адресом 192.168.1.253.

Смена MAC-адреса сетевой карты.

Чтобы временно поменять MAC-адрес сетевой карты eth0 нужно воспользоваться командой:

Для смена MAC-адреса навсегда нужно в конфигурационном файле /etc/network/interfaces к настройкам сетевого интерфейса добавить строку с новым MAC-адресом:

Смены скорости сетевого интерфейса.

  1. sergo #
    1 ноября, 23:27

огромное спасибо за статью! в линукс недавно, оч помогло, не подскажете, если сетевых в компьютере две, у одной сетевой dns-server 192.168.0.9, а у другой например 192.168.1.9, корректно будет в одном файле resolv.conf написать
nameserver 192.168.0.9
nameserver 192.168.1.9
Поймут сетевухи кому какой dns?
И можно ли в линукс назначить сетевой карточке какое-то имя, например eth0 это loc, а eth1 это prov?

1. DNS можно указать оба, но сетевым следует указать маски сети 255.255.255.0. Тогда они будут ходить по своим DNS `ам.

2. Про названия сетевых не знаю. Думаю, что можно, это же Linux!!

выключаем интерфейс
ifconfig eth0 down
даем команду
ifrename -i eth0 -n новое_имя (например local)
ifconfig local up
потом в вашем линуксе наверно надо будет в файле /etc/network/interfaces некоторые eth0 поменять на local, у меня просто альт, и этого файла вообще нет, у меня /etc/net/ifaces/папки_с_интерфейсами, и вот у меня надо папку eth0 переименовать в local, ну и потом
service network restart 🙂

Нужно будет добавить в статью, спасибо))

Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0
у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255)
В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32

gpns: Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0 у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255) В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32

Черт, Вы перевернули все мое сознание. Придется переделывать настройки сетевого интерфейса на компьютере, которые работали уже почти 2 года.
Почему тогда командой ifconfig показывается та маска, которую я установил?

Читайте также:  Стандартный vga графический адаптер для windows 10 x64

Простым языком! Ясно и понятно! Огромное спасибо!
P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.

GydruS: P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.

Спасибо, приму к сведенью. Хотя вроде отличие есть, в точке )

спасибо за ваш сайт. мне нравится! все доходчиво и понятно
у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
не могу понять как это сделать.

andrey: спасибо за ваш сайт. мне нравится! все доходчиво и понятно у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.

Если честно давно не сталкивался с DSL -соединениями. Расскажите по потробнее:
1. Какая локальная сеть? За модемом или на другой сетевой?

соединение самое обычное – городская сеть
компьютер подключен через сетевую карту
выход в интернет подключается через соединение DSL

andrey: соединение самое обычное – городская сеть компьютер подключен через сетевую карту выход в интернет подключается через соединение DSL

По-моему Вам нужно настраивать сам модем. Посмотрите в сторону Dual PPPOE
Я что-то подобное делал на роутере D-Link DIR -320, но на модеме не разу.

спасибо. буду искать!

К словам о DSL через локальную сеть: очень много парился, перерыл кучу манов (у меня Debian Lenny) и чтобы избавить других людей от тех же граблей скажу – pppoeconf помогает не всем, у меня например, инет появлялся на пару секунд и пропадал чудным образом. Конфиги, логи не помогли. Но спустя две недели и нару клочьев вырванных волос, наткнулся на простенькую команду ifconfig ppp0 mtu 1372. Надеюсь комуто это поможет. Выговорился, аж легче стало)))

помогите пожалуйста.
только начинаю осваивать Linux.
стоит на машине Ubuntu 10.10. подключено 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?! по отдельности все работает норм, а вместе только виндовая сеть.
виндовая сеть – eth0, модем – eth1

молодец автор!!огромный респект!
а я вот бьюсь…какой Lin выбрать для конторы которая ранее в глаза его не видела….а виндовую сеть суся 12.1 вскрыл за 5 мин))))))))

Я тоже написал подробную заметку про настройка сети, но она больше ориентированная на debian – based дистрибутивы http://www.artcom-ufa.ru/posts/2011/07/20/nastroika-seti-v-linux

Добрый день,у меня в папке etc нет ни папки network,ни папки net,стоит centos 5.7,что делать подскажите

Здравствуйте, такая проблема случилась. К интернету комп подключен через роутер.. Проблема в том, что некоторые сайты не открываются- пишет ошибка преобразования dns .. Что нужно сделать. чтобы все нормально работало?? Заранее спасибо!!

Артем: 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?!

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

Вполне годная статья. Спасибо огромное

я всего 3-й мес на linux но уже штук 17 перепробовал но никто не хочет dsl подкл\сразу обрывает локалку\ оставил zorin и вот поставил ALT -работаю как домашние а для сети ХРюша\7 -снес как и все остальные\.если-бы сеть на ALT то до конца жизни… я всего лет 7 как освоил комп – стар ужо.

Источник

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