15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати
01.11.2024
1 +1

Як налаштувати мережу в CentOS: повний покроковий посібник

Налаштування мережі в CentOS є однією з найбільш фундаментальних завдань для будь-якого системного адміністратора. Незалежно від того, чи ви налаштовуєте щойно розгорнуте середовище VPS Hosting або керуєте Dedicated Server, правильне налаштування мережевих інтерфейсів є критичним першим кроком до стабільного, підключеного та готового до виробництва сервера.

Цей комплексний посібник проведе вас через все, що вам потрібно знати: визначення мережевих інтерфейсів, призначення статичних IP-адрес, налаштування DHCP, перезавантаження мережевих служб, перевірку підключення та вирішення найпоширеніших проблем з мережею в системах CentOS.

Зміст

  1. Розуміння мережевих інтерфейсів у CentOS
  2. Визначення доступних мережевих інтерфейсів
  3. Налаштування статичної IP-адреси
  4. Налаштування DHCP (динамічного призначення IP-адрес)
  5. Перезавантаження мережевої служби
  6. Перевірка конфігурації мережі
  7. Вирішення проблем із мережею
  8. Висновок

1. Розуміння мережевих інтерфейсів у CentOS {#understanding-network-interfaces}

У CentOS (версії 7 та 8) мережеві інтерфейси керуються через файли конфігурації, збережені в наступному каталозі:

/etc/sysconfig/network-scripts/

Кожен мережевий інтерфейс має спеціальний файл конфігурації, названий за такою конвенцією:

ifcfg-<interface_name>

Де <interface_name> — це ідентифікатор, призначений інтерфейсу операційною системою. Поширені приклади включають:

Назва інтерфейсуОпис
eth0Традиційне найменування інтерфейсу Ethernet
ens33Передбачувана назва мережевого інтерфейсу (VMware/віртуальна)
ens3Поширена у віртуальних машинах на основі KVM
enp0s3Ethernet на основі PCI (VirtualBox, bare metal)

> Примітка: CentOS 7 та пізніші версії за замовчуванням використовують «передбачувані назви мережевих інтерфейсів» (наприклад, ens33, enp3s0) замість застарілої конвенції найменування eth0. Це покращує послідовність під час перезавантажень та змін обладнання.

Розуміння цієї структури є важливим перед внесенням будь-яких змін у конфігурацію. Редагування неправильного файлу або використання неправильних параметрів може призвести до втрати мережевого підключення — особливо критичної проблеми при керуванні віддаленими серверами.

2. Визначення доступних мережевих інтерфейсів {#identifying-network-interfaces}

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

Крок 1: Доступ до терміналу

Підключіться до вашого сервера через SSH або отримайте прямий доступ до терміналу, якщо у вас є фізичний доступ або доступ до консолі:

ssh user@your-server-ip

Крок 2: Список усіх мережевих інтерфейсів

Виконайте наступну команду для відображення всіх доступних мережевих інтерфейсів разом з їхніми IP-адресами та статусами:

ip addr

Приклад виходу:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
    link/ether 00:0c:29:ab:cd:ef brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.105/24 brd 192.168.1.255 scope global dynamic ens33

Крім того, ви можете використовувати старішу команду ifconfig (потребує пакету net-tools):

ifconfig -a

Або перелічити лише назви інтерфейсів за допомогою:

ip link show

Запам’ятайте назву інтерфейсу, який ви хочете налаштувати (наприклад, ens33), перш ніж переходити до наступного розділу.

3. Налаштування статичної IP-адреси {#configuring-static-ip}

Призначення статичної IP-адреси — це рекомендований підхід для серверів, оскільки він гарантує, що IP-адреса ніколи не змінюється неочікувано — що є критичним для записів DNS, правил брандмауера та стабільності віддаленого доступу.

Крок 1: Відкрийте файл конфігурації мережевого інтерфейсу

Використовуйте текстовий редактор, такий як nano або vi, щоб відкрити файл конфігурації для вашого інтерфейсу. Замініть ens33 на назву вашого фактичного інтерфейсу:

sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33

Крок 2: Додайте або змініть параметри конфігурації

Файл може вже містити деякі параметри. Оновіть або додайте наступні рядки для налаштування статичної IP-адреси:

DEVICE=ens33
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

Розбір параметрів:

ПараметрОпис
DEVICEНазва мережевого інтерфейсу
TYPEТип інтерфейсу (зазвичай Ethernet)
BOOTPROTOВстановіть на none для призначення статичної IP-адреси
ONBOOTВстановіть на yes для активації інтерфейсу під час завантаження
IPADDRВаша бажана статична IP-адреса
NETMASKМаска підмережі для вашої мережі
GATEWAYШлюз за замовчуванням (IP-адреса вашого маршрутизатора)
DNS1Основний DNS-сервер (Google: 8.8.8.8)
DNS2Вторинний DNS-сервер (Google: 8.8.4.4) — необов’язково

> Важливо: Замініть приклади значень (192.168.1.100, 192.168.1.1 тощо) на фактичні значення, надані вашим мережевим провайдером або хостинг-провайдером.

Ви також можете використовувати нотацію CIDR з параметром PREFIX замість NETMASK:

PREFIX=24

Це еквівалентно NETMASK=255.255.255.0.

Крок 3: Збережіть та вийдіть

Якщо використовуєте nano, збережіть файл, натиснувши:

CTRL + X → Y → Enter

Якщо використовуєте vi або vim:

:wq → Enter

4. Налаштування DHCP (динамічного призначення IP-адрес) {#configuring-dhcp}

Якщо ваше середовище використовує DHCP-сервер для автоматичного призначення IP-адрес (поширено в середовищах розробки, хмарних платформах або внутрішніх мережах), налаштуйте інтерфейс наступним чином:

Крок 1: Відкрийте файл конфігурації

sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33

Крок 2: Встановіть параметри DHCP

Замініть існуючий вміст наступною мінімальною конфігурацією DHCP:

DEVICE=ens33
TYPE=Ethernet
BOOTPROTO=dhcp
ONBOOT=yes

Крок 3: Збережіть та вийдіть

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

> Коли використовувати DHCP проти статичної IP: Використовуйте DHCP для робочих станцій, розробницьких ВМ або тимчасових середовищ. Використовуйте статичні IP для виробничих серверів, веб-серверів, серверів баз даних та будь-якої системи, яка потребує послідовної, передбачуваної адреси. Якщо ви розміщуєте веб-сайти або додатки на плані Shared Web Hosting або VPS, статична IP настійно рекомендується.

5. Перезавантаження мережевої служби {#restarting-network-service}

Після збереження змін конфігурації ви повинні перезавантажити мережеву службу, щоб застосувати їх. Існує кілька методів залежно від вашої версії CentOS.

Метод 1: Перезавантажте всю мережеву службу (CentOS 7)

sudo systemctl restart network

Метод 2: Вимкніть та ввімкніть інтерфейс

Цей метод перезавантажує лише конкретний інтерфейс, мінімізуючи порушення для інших інтерфейсів:

sudo ifdown ens33 && sudo ifup ens33

Метод 3: Використання NetworkManager (CentOS 7/8)

Якщо NetworkManager активна у вашій системі, використовуйте nmcli:

sudo nmcli connection reload
sudo nmcli connection up ens33

Метод 4: Перезавантажте службу NetworkManager

sudo systemctl restart NetworkManager

> Попередження: Якщо ви підключені через SSH, перезавантаження мережевої служби тимчасово розірве ваше з’єднання. Переконайтеся, що у вас є альтернативний спосіб доступу до сервера (наприклад, консоль або KVM) на випадок, якщо нова конфігурація містить помилку.

6. Перевірка конфігурації мережі {#verifying-network-configuration}

Після перезавантаження мережевої служби перевірте, що ваша конфігурація була застосована правильно.

Перевірте призначену IP-адресу

ip addr show ens33

Вихід повинен відображати IP-адресу, яку ви налаштували під рядком inet:

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
    inet 192.168.1.100/24 brd 192.168.1.255 scope global ens33

Перевірте шлюз за замовчуванням

ip route show

Ви повинні побачити рядок, подібний до:

default via 192.168.1.1 dev ens33

Перевірте розпізнавання DNS

cat /etc/resolv.conf

Підтвердіть, що ваші DNS-сервери перелічені:

nameserver 8.8.8.8
nameserver 8.8.4.4

Протестуйте підключення до Інтернету

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

ping -c 4 google.com

Очікуваний вихід:

PING google.com (142.250.185.46) 56(84) bytes of data.
64 bytes from lga34s32-in-f14.1e100.net: icmp_seq=1 ttl=117 time=12.4 ms
64 bytes from lga34s32-in-f14.1e100.net: icmp_seq=2 ttl=117 time=11.9 ms
...
4 packets transmitted, 4 received, 0% packet loss

Якщо всі чотири пакети отримані з втратою 0%, ваша конфігурація мережі працює правильно.

Протестуйте розпізнавання DNS окремо

nslookup google.com

або

dig google.com

7. Вирішення проблем із мережею {#troubleshooting}

Навіть досвідчені адміністратори стикаються з проблемами мережі. Ось найпоширеніші проблеми та способи їх вирішення в CentOS.

Проблема 1: Мережевий інтерфейс не запускається під час завантаження

Симптом: Сервер втрачає мережеве підключення після перезавантаження.

Причина: Параметр ONBOOT встановлено на no або відсутній у файлі конфігурації.

Виправлення: Відкрийте файл конфігурації інтерфейсу та переконайтеся, що наступний рядок присутній і встановлено правильно:

ONBOOT=yes

Потім перезавантажте мережеву службу:

sudo systemctl restart network

Проблема 2: Немає підключення до Інтернету після налаштування

Симптом: Інтерфейс має IP-адресу, але ви не можете досягти зовнішніх хостів.

Можливі причини та виправлення:

  • Неправильний шлюз: Перевірте, що GATEWAY відповідає IP-адресі вашого маршрутизатора або мережевого шлюзу.
  • Неправильне налаштування DNS: Переконайтеся, що ###PPT_NOTR_79_CODE
15%

Збережіть 15% на всі хостинг-послуги

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код:

Skills
Почати