Как настроить сеть в CentOS: пошаговая инструкция

Каждый системный администратор должен знать, как выполняется настройка сети CentOS, поскольку это одна из самых популярных операционных систем для серверного оборудования. Благодаря открытому коду её легко адаптировать под нужды компании, в том числе для развертывания виртуальных или выделенных серверов. В этой статье мы рассмотрим базовые параметры, основные способы подключения к Интернету и дополнительные возможности для CentOS 6, 7 и 8.

Как работает сеть?

Чтобы корректно выполнить в CentOS сетевые настройки, сначала нужно понять, как сеть работает.

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

  • IP-адрес – это уникальный числовой идентификатор. Его можно сравнить с номером телефона, который используют, когда нужно связаться с другим абонентам.
  • MAC-адрес – физический адрес для связи по локальной сети. Его присваивают сетевой карте устройства еще на этапе производства.

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

Получают его с помощью протокола DHCP – протокола динамической настройки узла. Процесс состоит из трёх этапов.

  • От устройства исходит запрос в локальную сеть. Его принимает DHCP-сервер. Он отправляет в ответ IP-адрес из заданной области и оставляет запись о том, что он занят и не может использоваться другим устройством.
  • Компьютер отправляет запрос IP маршрутизатору, который разрешает доступ к Интернету.
  • От компьютера поступают запросы к DNS-серверам для получения стандартных сведений.

Таким образом, настройка Linux CentOS после установки предполагает налаживание и проверку нескольких параметров.

Основные CentOS-команды консоли

Управление в CentOS выполняется с помощью команд.

ip a – просмотр перечня установленных сетевых интерфейсов.

sudo systemctl restart networking – в 7 версии CentOS перезапуск сети.

systemctl restart network – в CentOS 8 или Stream 8 перезапуск сети.

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

Пользователь может выполнить настройку сети уже при установке дистрибутива CentOS. Для этого нужно выбрать раздел «Сеть и имя узла».

В левой части экрана увидите список доступных интерфейсов и можете выбрать нужный. В правой части экрана нажмите кнопку «Настроить».

В следующем окне откройте вкладку «Параметры IPv4». Выбирайте метод «Вручную» и кликните по кнопке «Добавить». Введите подходящие параметры и нажмите «Сохранить».

Как выполняется в CentOS настройка сети из консоли

Для начала нужно понять, какие интерфейсы доступны. Для этого вводим команду «ip a» и получаем ответ.

В нашем случае доступно 2 интерфейса:

lo – локальная петля;

enp0s3 – сетевой адаптер Ethernet.

Дальше в CentOS настройка сетевого интерфейса выполняется через конфигурационные файлы, названия которых начинается с приставки «ifcfg». Найти их можно в каталоге /etc/sysconfig/network-scripts/

Рассмотрим процесс на примере файла ifcfg-enp0s3.

Откройте его в редакторе nano (при желании можно использовать другой редактор).

nano /etc/sysconfig/network-scripts/ifcfg-enp0s3

Увидите несколько параметров.

DEVICE — название сетевого интерфейса.

TYPE — тип интерфейса.

BOOTPROTO — способ назначения IP-адреса.

ONBOOT — запуск интерфейса при включении сервера.

IPADDR — IP-адрес.

NETMASK — маска.

GATEWAY — шлюз.

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

DEVICE=enp0s3

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.0.0

NETMASK=255.255.255.0

GATEWAY=192.168.0.1

DNS1=8.8.8.8

Сохраните изменения с помощью сочетания клавиш «Ctrl+X», затем нажмите «Y». Перезапустите сеть.

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

# cp /etc/sysconfig/network-scripts/ifcfg-eno2 /etc/sysconfig/network-scripts/ifcfg-eno3

# vi /etc/sysconfig/network-scripts/ifcfg-eno3

# systemctl restart network

Настройка основных параметров при подключении к сети CentOS

Чтобы наладить соединение и убедиться, что всё работает корректно, нужно проверить основные параметры.

IP-адрес

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

# ifconfig | grep inet

# ifconfig | grep inet

Есть возможность настроить получение анонсов по DHCP. Для этого в конфигурационном файле поменяйте значение параметра BOOTPROTO на «dhcp» и перезагрузите интерфейс. Теперь для подключения можно зайти в веб-консоль. В разделе серверы и оборудование нажмите на значок консоли.

В следующей вкладке задайте значения сервера и введите команду «ip address». В строке с обозначением интерфейса eno1 увидите динамический IP-адрес.

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

Удалите переменную IPADDR и добавьте вместо неё IPADDR1 и IPADDR2. Перезагрузите сервер.

DNS

DNS-серверов может использоваться несколько: основной будет называться DNS1, а дополнительные с добавлением переменных (DNS2, DNS3 и другие).

В CentOS настройка DNS выполняется в конфигурационном файле. Открываем /etc/sysconfig/network-scripts/ifcfg-eno1 и указываем DNS1="82.148.21.1". После перезагрузки адрес DNS-сервера можно посмотреть в «/etc/resolv.conf».

# grep "nameserver" /etc/resolv.conf

Если здесь содержатся данные о DNS-сервере, то настройка выполнена корректно.

Hostname

Обычно имя сервера присваивается автоматически – localhost.localdomain. Но допустимо задавать другие названия. Чтобы hostname изменить, нужно ввести

# vi /etc/hostname

Curie

# hostname – это команда для проверки настроек. Если имя хоста совпадает, всё сделали правильно.

За настройку шлюза отвечает переменная GATEWAY. Мы уже рассматривали, как задать его вручную через консоль. А команда «netstat -nr» возвращает его первоначальный адрес.

IPv6

Чтобы сэкономить ресурсы, допустимо отключить протокол IPv6. Для этого откройте файл /etc/sysctl.conf и впишите дополнительные строки.

# vi /etc/sysctl.conf

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

Изменения нужно применить.

# sysctl -p

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

В файле /etc/sysconfig/network тоже нужно дописать 2 строки.

# vi /etc/sysconfig/network

NETWORKING_IPV6=no

IPV6INIT=no

Теперь откройте файл /etc/default/grub. В параметре GRUB_CMDLINE_LINUX допишите

ipv6.disable=1

Сохраните файл, обновите GRUB. Перезагрузите сервер.

Статический маршрут

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

Проверить доступные маршруты можно через консоль с помощью команды

# netstat -nr

В результате система выдаст ответ.

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

# route add -net 192.168.8.0/24 gw 192.168.159.5

Однако новые настройки сбрасываются в случае перезагрузки, поэтому их нужно прописывать в конфигурации. Для этого создаём файл с названием route-eth0 в папке /etc/sysconfig/network-scripts. Затем указываем параметры.

# mcedit /etc/sysconfig/network-scripts/route-eth0

192.168.8.0/24 via 192.168.159.5

Выполняем перезагрузку и проверку.

Настройка сети в CentOS через Network Manager

В CentOS предусмотрена специальная утилита Network Manager для управления сетевыми соединениями. Её особенностью является графический интерфейс, благодаря которому упрощается процесс настройки.

Открывается Network Manager с помощью команды «nmtui». Откроется псевдо-GUI интерфейс, где можно задать актуальные настройки. То есть можно пользоваться не только клавиатурой, но ещё и мышью.

Кроме того, управление можно осуществлять с помощью утилиты CLI (интерфейс командной строки). Например, для интерфейса с названием «eno1» будут актуальны следующие команды для настройки IP-адреса, шлюза и DNS-сервера.

# nmcli con mod eno1 ipv4.addresses 82.148.21.49/24

# nmcli con mod eno1 ipv4.gateway 82.148.21.1

# nmcli con mod eno1 ipv4.dns "8.8.8.8

Заключение

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

Настроить сеть можно через консоль или утилиту Network Manager. Процесс несложный даже для новичков. Но всё же для работы с CentOS желательно иметь хотя бы минимальные знания в области информационных технологий.

Всё ещё остались вопросы?