Сетевые настройки в CentOS 8, 7

Содержание

В данном материале я затрону актуальную тему, с которой начинается практически любая первоначальная работа с сервером. Настройка основных параметров сети в CentOS 7 и 8 — ip адрес, dhcp, ipv6, dns, hostname, статические маршруты, сетевые карты и другие network параметры. Двигаться по теме будем шаг за шагом от простого к сложному, разбирая все нюансы по порядку и отвечая на наиболее популярные вопросы.

Цели статьи

  1. Рассказать, как выполнить базовые сетевые настройки на сервере centos версий 7 и 8.
  2. Показать дополнительные возможности по настройки сети.
  3. На нескольких примерах рассказать, как решать типовые проблемы с сетью.
  4. Показать некоторые полезные сетевые утилиты.

Данная статья является частью единого цикла статьей про сервер Centos.

Сетевые настройки на сервере CentOS

Первый раз с сетевыми настройками сервера CentOS 7 или 8 мы сталкиваемся, когда производим установку. На экране первоначальной настройки есть отдельный пункт, касающийся настройки сетевых интерфейсов:

centos network

Зайдя в него мы видим список подключенных сетевых карт. Каждую из них можно включить соответствующим ползунком (пункт 1 на картинке). При активировании интерфейса он автоматически получает настройки по dhcp. Результат работы dhcp можно посмотреть тут же. Если вас не устраивают эти настройки, их можно отредактировать, нажав configure (пункт 3 на картинке). Здесь же можно задать hostname (пункт 2 на картинке):

centos сетевой интерфейс

Открыв окно дополнительный настроек Ehernet, вы сможете изменить имя сетевого интерфейса, указать настройки IP (пункт 1 на картинке), выбрать ручные настройки (пункт 2 на картинке), назначить ip адрес (пункт 3 на картинке), установить dns сервер (пункт 4 на картинке) и сохранить сетевые настройки (пункт 5 на картинке):

сетевые настройки centos

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

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

или в русской версии:

Для работы с ifconfig и прочими сетевыми утилитами необходимо установить пакет net-tools. Сделаем это:

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

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

Мы увидели конфигурацию сети, теперь давайте ее отредактируем. Допустим, нам нужно сменить ip адрес. Для этого идем в директорию /etc/sysconfig/network-scripts и открываем на редактирование файл ifcfg-eth0 или ifcfg-ens18. Название файла будет зависеть от имени сетевого интерфейса. В Centos 8 по-умолчанию убрали поддержку настройки сети через конфигурационные скрипты, поэтому установите отдельно пакет network-scripts.

Файл ifcfg-eth0 имеет примерно следующее содержание:

icfg-eth0

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

ifcfg-eth0 static ip

Мы изменили параметры:

BOOTPROTO с dhcp на none
DNS1 указали dns сервер
IPADDR0 настроили статический ip адрес
PREFIX0 указали маску подсети
GATEWAY0 настроили шлюз по-умолчанию

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

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

Все в порядке, новые настройки сетевого интерфейса установлены.

Как получить сетевые настройки по DHCP

Теперь рассмотрим обратную ситуацию. Допустим, у вас сетевая карта имеет какие-то настройки, установленные вручную. Но вы хотите, чтобы ваш компьютер получал настройки сети по dhcp в качестве клиента. Для этого вам нужно произвести операцию, обратную той, что мы делали раньше. То есть открываем файл /etc/sysconfig/network-scripts/ifcfg-ens18 и удаляем там строки с параметрами DNS, IPADDR, PREFIX, GATEWAY а в параметре BOOTPROTO указываем значение "dhcp".

Настройка dhcp

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

Затем проверяем, получил ли наш client по dhcp настройки.

Как настроить DNS в CentOS

Текущие настройки dns сервера в CentOS можно посмотреть в двух местах:

  1. В файле с настройками сетевой карты ifcfg-eth0, которым мы ранее неоднократно редактировали.
  2. В файле /etc/resolv.conf

Зачем они сейчас в двух местах, я не знаю, но раньше настройки dns сервера в каких-то дистрибутивах, не помню уже точно каких, указывались только в resolv.conf, но в какой-то момент это изменилось. И все сетевые настройки стали храниться в одном файле вместе с адресом, шлюзом, маской и прочим. Если сейчас отредактировать файл resolv.conf и внести туда какие-то dns сервера, то после перезагрузки они будут заменены на значения из файла ifcfg-eth0.

Так что для того, чтобы установить параметры dns сервера, нужно отредактировать файл сетевых настроек ifcfg-eth0, добавив туда столько серверов, сколько требуется. Например так:

Для применения настроек сохраняем файл и перезапускаем сеть, все как обычно. После перезагрузки сервера настройки dns будут записаны в файл resolv.conf

Как отключить ipv6

В настоящее время активного использования протокола ipv6 в России нет и в обычной работе он чаще всего не нужен. Хотя нас уже много лет пугают, что свободных ip адресов уже практически не осталось, но на деле пока еще всем хватает. Так что с точки зрения практических соображений ipv6 в настоящее время на сервере не нужен и его можно отключить.

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

Все строки с . это ipv6 протокол. В моем случае это sshd, postfix и chronyd. Отключим им ipv6 и оставим только ipv4.

Начнем с sshd. Открываем файл настроек /etc/ssh/sshd_config и находим строки:

Раскомментируем их и изменим. Должно получиться вот так:

Теперь открываем файл настроек постфикс /etc/postfix/main.cf. Ищем там строку:

Отключаем ipv6 в chronyd. Для этого создаем файл /etc/sysconfig/chronyd и добавляем строку:

Теперь отключаем ipv6 в CentOS. Открываем файл /etc/sysctl.conf и добавляем туда строки:

Редактируем файл /etc/sysconfig/network, добавляя туда:

Добавляем запрет на работу ipv6 в конфигурацию grub. Открываем конфиг /etc/default/grub и добавляем к параметру GRUB_CMDLINE_LINUX еще одно значение ipv6.disable=1. Должно получиться примерно так:

После этого обновляем конфиг загрузчика.

Перезагружаемся и проверяем результат:

Нигде нет упоминания про inet6 и адреса формата ipv6. Значит все в порядке, мы отключили ipv6 в CentOS. Теперь проверим список открытых портов:

Все порты ipv4. Все в порядке, наша задача выполнена.

Как изменить hostname в CentOS

По-умолчанию, во время установки CentOS ставит имя хоста localhost.localdomain. Если вы его не поменяли, то можно это сделать позже. Для начала давайте проверим, какое имя хоста у вас установлено. Делается это с помощью команды в консоли hostname, либо с помощью uname:

Для того, чтобы изменить имя хоста в CentOS, необходимо отредактировать файл /etc/hostname. Проверим его содержимое:

Отредактируем этот файл, чтобы изменить hostname:

Сохраняем файл и проверяем:

Есть готовая команда, которая сразу устанавливает необходимое имя сервера:

Все в порядке, мы изменили имя хоста на centos.localhost

Установить шлюз по-умолчанию в CentOS

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

Строка с Destination 0.0.0.0 определяет адрес шлюза. Если у вас ее нет, либо в поле Gateway установлен неверный шлюз, то можно это изменить. Устанавливаем шлюз по-умолчанию:

Или то же самое с помощью команды ip.

Network Manager в CentOS

В CentOS по-умолчанию имеется служба, которая управляет всеми сетевыми подключениями — NetworkManager. Она постоянно контролирует сетевые настройки и с помощью демона по управлению конфигурациями вносит соответствующие изменения в активные сетевые устройства. Она поддерживает стандартные файлы конфигураций ifcfg.

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

Приложение Описание
NetworkManager Стандартный networking daemon
nmtui Простой текстовый интерфейс (TUI) для NetworkManager
nmcli Утилита, работающая в командной строке, которая позволяет пользователям и скриптам взаимодействовать с NetworkManager
control-center Утилита с графическим интерфейсом оболочки GNONE
nm-connection-editor GTK+ 3 приложения, необходимые для некоторых задач, не поддерживаемых control-center

Пользователи не взаимодействуют с NetworkManager в CentOS напрямую, для этого используются графические и утилиты командной строки. Одной из таких утилит является system config network tui. В Centos 8 по-умолчанию NetworkManager является рекомендованным способом по настройке сети. Все остальные способы объявлены deprecated.

System config network tui

Для управления сетевыми настройками в CentOS можно воспользоваться графической утилитой nmtui. Проверить ее наличие в системе очень просто. Достаточно запустить ее в консоли:

Настройка Network Manager

Если она у вас не установлена, то исправить это очень просто. Устанавливаем в CentOS system config network tui:

С помощью tui можно указать любые сетевые настройки, которые мы делали раньше через командную строку и редактирование конфигурационных файлов network-scripts. Давайте сделаем это. Вызываем программу:

Выбираем первый пункт Edit a connection, затем выбираем сетевой интерфейс и жмем "Edit":

Настройка сетевой карты

Здесь мы можем изменить имя сетевой карты, mac адрес, указать тип сетевых настроек — ручной или dhcp, указать вручную ip адрес, адрес шлюза, днс сервера, добавить маршруты и некоторые другие настройки:

Настройка сетевых параметров в NetworkManager

После завершения редактирования сохраняем настройки, нажимая ОК.
Если в первом экране утилиты выбрать пункт Set System Hostname, то можно быстро указать имя хоста. Результат будет такой же, как мы делали раньше в консоли.

Как добавить статический маршрут в CentOS

Для управления маршрутизацией в CentOS может понадобиться добавить статический маршрут. Сделать это достаточно просто с помощью консольной команды. Для начала проверим существующие маршруты, используя netstat:

В данном случае у нас один маршрут для адреса 0.0.0.0/0.0.0.0 шлюз используется 192.168.159.2, он же шлюз по-умолчанию. То есть по сути, статических маршрутов никаких нет. Добавим один из них.

Допустим, у нас есть подсеть 192.168.8.0 маска 255.255.255.0, трафик в эту подсеть маршрутизирует шлюз 192.168.159.5 Добавляем маршрут:

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

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

Но после перезагрузки этот статический маршрут будет удален. Чтобы этого не произошло и добавленные маршруты сохранялись, необходимо их записать в специальный файл. В папке /etc/sysconfig/network-scripts создаем файл с именем route-eth0 следующего содержания:

Перезагружаемся и проверяем, на месте ли маршрут:

Все в порядке, статический маршрут добавлен.

Как настроить 2 IP адреса на одном интерфейсе

Если у вас появилась необходимость настроить 2 IP адреса на одном интерфейса в CentOS, то сделать это достаточно просто. Воспользуемся командой ifconfig. Для начала проверим список сетевых интерфейсов:

Добавим к интерфейсу eno16777728 еще один ip адрес 192.168.159.120:

Проверим, что получилось:

То же самое, с помощью ip.

Все в порядке, мы добавили второй ip адрес на один и тот же интерфейс. Но после перезагрузки дополнительный адрес не сохранится. Чтобы его сохранить, необходимо создать файл настроек интерфейса в папке /etc/sysconfig/network-scripts

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

Как сделать перезапуск сети в CentOS

Ранее я уже касался этого вопроса, но на всякий случай повторим отдельно. Допустим, вы внесли некоторые изменения в конфигурацию сети. Как применить эти настройки, не перезагружая сервер? Очень просто. Для перезапуска сети в CentOS достаточно воспользоваться командой systemd:

Если увидите ошибку:

Значит у вас не установлен пакет network-scripts, а управление сетью выполняется с помощью NetworkManager, который сам перезапускает сеть после изменения настроек.

Если у вас старая версия Centos без systemd, а это 6-я версия и младше, то сеть перезапускается вот так.

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

Как узнать IP адрес в CentOS

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

Либо второй вариант определения локального ip адреса:

Обе команды позволяют быстро узнать свой ip адрес.

Что делать, если CentOS не видит сетевую карту?

Вы установили сервер, загрузились и обнаружили, что в системе нет ни одной сетевой карты. Что в таком случае делать? Первым делом посмотрите вывод команды dmesg и поищите там поминание о своей карте. Возможно, она в системе есть, просто не активирована. Активировать ее можно с помощью nmtui, а котором я рассказывал выше.

Там есть пункт меню Activate connection, нужно в него зайти и активировать вашу сетевую карту. После этого ее можно будет настраивать.

активировать сетевую карту

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

Есть еще вероятность, что вы не увидите своей карточки при выводе команды ifconfig, если в эту карту не воткнут сетевой провод. Чтобы наверняка посмотреть все интерфейсы, необходимо использовать ключ -a:

Есть еще один способ поискать сетевую карту в системе. Установите пакет pciutils:

И посмотрите вывод команды:

Если сетевая карта видится системой, то должно быть что-то в этом роде:

Если в выводе пусто, значит сетевая карта не определена.

Что делать, если сеть недоступна в CentOS?

Допустим, вы пытаетесь пинговать какой-то адрес, например 8.8.8.8 и получаете ответ, что сеть не доступна:

А в ответ получаете:

Такая ситуация может возникнуть, если у вас не установлен шлюз по-умолчанию. Добавить его можно с помощью команды:

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

Использование сетевых утилит traceroute, dig в CentOS

Для диагностики сетевых подключений в CentOS полезно использовать специальные утилиты. Но если вы использовали установку minimal, то их скорее всего в системе не будет. К примеру, популярная утилита traceroute при попытке ее запуска выдаст сообщение:

Ее нужно установить отдельно из репозитория:

То же самое с популярной программой dig для работы с dns серверами и записями:

Чтобы эта сетевая утилита заработала, необходимо установить пакет bind-utils:

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

Для поднятия тегированного интерфейса на CentOS нужно в первую очередь проверить поддержку ядром 8021q:

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

Все в порядке, модуль 8021q загружен, добавим его в автозагрузку:

Теперь создаем файл конфигурации для vlan в /etc/sysconfig/network-scripts:

Обращаю внимание на выделенное жирным. Во всех инструкциях в интернете, что мне попались, этот параметр был указан как TYPE=Ethernet, но с такой настройкой интерфейс с vlan не поднимался, появлялась ошибка:

Только после того, как я исправил, все заработало как надо. Так что сохраняем и активируем интерфейс:

Проверяем наш vlan:

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

Часто задаваемые вопросы по теме статьи (FAQ)

Все зависит от конкретной ситуации. Я чаще всего удаляю, потому что мне его функционал не нужен. В подавляющем большинстве случаев, я настраиваю сеть в centos один раз во время установки сервера. Какой мне смысл оставлять NM в системе и постоянно его обновлять? Тем не менее Redhat настоятельно рекомендует использовать NetworkManager для настройки сети и в этом есть определенный смысл. К примеру, если вы будете проходить сертификацию, то вам 100% нужен будет этот инструмент, так как с его помощью можно быстрее настроить сеть и вероятность ошибки будет минимальной. Так что решайте сами по месту, нужен вам Network Manager или нет.

Принципиальной разницы нет. Результат будет один и тот же.

Централизованно для всей системы настроить proxy не получится. Для каждой службы нужно это делать отдельно — yum или dnf, браузер и т.д.

Я реализую такой подход в настройке системы — отключать все, что не используется. Это повышает надежность и безопасность системы. Поэтому если вы не используете ipv6 в работе, рекомендую его отключить.

Заключение

На этом мой объемный материал на тему настройки сети в CentOS закончен. Буду очень рад комментариям, замечаниям, поправкам. Они наверняка будут. Создавая подобные материалы я в первую очередь учусь сам и подтягиваю свои знания в предметной области. Тут могут быть где-то ошибки и описки, хотя я и проверяю все на живых системах во время написания руководств, но все равно возможны неточности и опечатки.

Напоминаю, что данная статья является частью единого цикла статьей про сервер Centos.

Онлайн курс по Linux

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

Помогла статья? Подписывайся на telegram канал автора

Автор Zerox

91 комментарий

При неработающей сети начинать с установки пакетов — интересный подход. 🙂
Только ведь не установятся они — чтобы достучаться до сервера с пакетами сеть должна работать

Все же чаще всего сеть настраивается во время установки. По крайней мере в моем руководстве это делается. Потом уже, если надо что-то поменять, нужна информация о том, как это сделать.

Добрый день! Centos 7 64, серверная платформа asus, имеет 4 встроенных сетевых интерфейса. Centos определил их как enp(7,8,9,10)s0. Вдруг появился еще один enp11s0. Сеть настроена в ручную на enp8s0. При перезагрузках запускается то 7, то 11, то 10, и система дает им приоритет. Что это за скачки и как это можно исправить?

Что значит при перезагрузках запускается то 7, то 11? О каком приоритете идет речь? У вас настроен только один интерфейс и при перезагрузках он меняет свое название? Вы это имеете ввиду?

Настроен интерфейс enp8s0 на статический ip 192.168.1.55. При перезагрузке появляется адрес у интерфейса enp7s0 от dhcp роутера 192.168.1.172. Система считает его основным, а т.к. в iptables.sh прописан enp8s0 с 192.168.1.55, то нет доступа в интернет и невозможно зайти на сервер по ssh

Так отключите настройки dhcp с enp7s0, если они не нужны.

После обновления Centos 7 до 8 перестали работать статически маршруты. смотря вывод ip route и netstat -nr вижу что по какой-то причине, которую я так и не могу разгадать, перестали считываться маршруты из route-eth0. Может подскажешь в какую сторону копать, впервые с таким столкнулся

В Centos 8 убрали поддержку network-scripts. Думаю, дело в этом. Их надо ставить отдельно:

# dnf install network-scripts

нет, так как network-scripts стоит. я тоже на это грешил. куда рыть так и не понятно.

Здравствуйте! Давно пользуюсь вашими статьями. Может быть сможете подсказать. Два дня уже голову ломаю. Есть сервер на Windows Server 2019 (1С, RDP, файловая шара) и ноутбук на Windows 10. Ноутбук иногда находится в одной сети с сервером, а иногда подключается извне. Требуется чтобы ноут имел доступ к серверу (а в идеале — ко всей сети, где находится север, служба маршрутизации на сервере включена) и в одном случае, и в другом. Статического IP у сети, где находится сервер, нет. Решил сделать связку через промежуточный узел. В качестве такого узла имеем небольшую ВДСку в дата-центре с CentOS 7 и OpenVPN на борту. ВДСка имеет внешний интерфейс eth0 со статическим IP и интерфейс tun0 (10.250.220.1) от OpenVPN. И сервер, и ноутбук нормально подключаются к ВДСке, видят ее и друг друга (в конфиге OpenVPN включено client-to-client). В локальной сети сервер имеет адрес 192.168.114.100, в VPN — 10.250.220.6. Ноутбук в VPN получает 10.250.220.10.

И во тут начинается проблема. Находясь в локальной сети, ноут спокойно находит сервер по NetBios имени. Для подключения по имени из VPN, можно сделать соответствующую запись в hosts, но когда ноут снова окажется в локалке, запись в hosts либо будет вести в никуда, если VPN будет отключен, либо будет гнать трафик через ВДСку, если VPN включить. Решил сделать так, чтобы при удаленной работе при включении VPN, трафик шел через ВДС, а при локальной работе, когда VPN выключен — напрямую. Для этого в файле hosts ноутбука сделал запись: "server 192.168.114.100", в конфиге сервера OpenVPN для клиента ноутбука прописал: push "route 192.168.114.0 255.255.255.0". Когда ноут в локалке — все просто, а когда удаленно, ноутбук получает этот маршрут при подключении к VPN и "понимает", что трафик в подсеть 192.168.114.0 нужно отправлять через 10.250.220.1, что и делает. Но дальше дело не идет. Как я понимаю, нужно "объяснить" ВДСке, что делать с этими пакетами дальше, а именно — перенаправлять на 10.250.220.6. Для этой цели пытаюсь прописать там соответствующий маршрут: "route add -net 192.168.114.0/24 gw 10.250.220.6", но получаю ответ: "SIOCADDRT: Сеть недоступна". Перепробовал уже 100500 разных вариаций — ответ один и тот же.

Что я делаю не так? Буду очень признателен за наводку на путь истинный!

Вы не в том направлении стали решать проблему. Не надо использовать файл hosts. На vds поднимите днс сервер, например, dnsmasq. Добавьте туда статическую dns запись с ip адресом сервера в vpn. В openvpn есть настройка, которая позволяет передать клиенту vpn сервер. Укажите этот dnsmasq. Этого будет достаточно.

Добрый день! Почему при установке по умолчанию NetworkManager как-то не правильно отдает hostname машины? Т.е. dhcp сервер на windows server выдает ему айпи, но dns на том же windows server не хочет обновлять/добавлять у себя А запись.

А разве должна по дефолту обновляться dns запись? По-моему, это реализуется через интеграцию DNS с AD, а не с dhcp.

Частично разобрался. По умолчание поле nmcli connection modify ipv4.dhcp-fqdn имеет пустое значение почему-то. После установки полного fqdn линукс клиент начинает нормально регистрироваться на виндовом dhcp и dns серверах. Удалять NetworkManager считаю не правильным подходом. Не зря же его ставят по умолчанию. Хотя оно и глючное местами или просто его не умеем готовить.

Его ставят по-умолчанию, чтобы быстрее и удобнее можно было настроить сеть через консоль. Чаще всего в моих случаях я настраиваю сеть один раз во время установки сервера и больше не трогаю. Отдельная программа для этого мне не нужна. Мне не трудно и руками конфиг заполнить.

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

К примеру, если вы будете сдавать экзамен на сертификат, надо использовать NM, чтобы экономить время, которого в обрез на экзамене. Меньше шансов ошибиться и потратить лишнее время на исправление ошибки.

Добрый день. Важное дополнение. Делал все по инструкции на вируалке под управление Hyper-V. Не получалось правильно получить IP адрес от DHCP сервера, пока не добавил строку в network скрипт:
NM_CONTROLLED=no

Нет, теперь что-то странное стало происходить, убрал эту строчку. Теперь в дхцп лизах в микротике мак один и тот же, а IP меняются — то хост машина, то виртуалка появляется под этим маком.

Все верно. Вам надо в свойствах адаптера на hyperv указать, чтобы он разрешал на интерфейс выходить макам виртуалок, а то он на свой подменяет. Там есть для этого галочка. Сейчас по памяти не помню точно эту настройку, но что-то с mac связано.

Что-то мне не понятно. Если Центос не видит сетевую карту, то как я установлю какие-либо пакеты.

Очевидно, что не по сети. Можно через флешку скопировать.

После отключения ipv6 8 ка не грузиться под root/ может кому интересно что произошло дам доступ к виртуалке . свяжитесь со мной

Что-то где-то напутали. Я отключал ipv6 в Centos 8.

Здравствуйте Владимир.
Хочу настроить сервер с двумя сетевыми картами, одна, встроенная, для интернета, вторая, внешняя, для локальной сети.
При выполнении команды ifconfig обнаруживается только встроенная карта.
Команда lspci видит обе:

]$ lspci | grep Ethernet
00:19.0 Ethernet controller: Intel Corporation 82566DM-2 Gigabit Network Connection (rev 02)
07:04.0 Ethernet controller: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 (rev 0c)

Буду Вам признателен, если подскажите, как поднять вторую сетевую карту.

Пробовали команду:
ifconfig -a
или
ip a
Попробуйте и напишите результат.

Я хочу внести уточнение. Сразу же после установки внешняя сетевая карта после выполнения ifconfig определялась так (без информации о пакетах для экономии места):

virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:1f:56:99 txqueuelen 1000 (Ethernet)

После отключения libvirtd определяться перестала. Команды ifconfig — a и ip a тоже ничего не обнаруживали.
Сейчас я снова запустил сервис libvirtd.
Команда ifconfig -a вывела такую информацию по этому устройству:

virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:1f:56:99 txqueuelen 1000 (Ethernet)

virbr0-nic: flags=4098 mtu 1500
ether 52:54:00:1f:56:99 txqueuelen 1000 (Ethernet)

Вывод команды ip -a:

3: virbr0: mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 52:54:00:1f:56:99 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
4: virbr0-nic: mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:1f:56:99 brd ff:ff:ff:ff:ff:ff

С отключенным сервисом libvirtd ни ifconfig -a ни ip -a внешнюю плату не обнаруживают.


Источник: serveradmin.ru