1. Вступ до мережевих концепцій: трохи теорії
На сьогоднішній лекції ми розберемо основи роботи з мережевими інструментами Linux. Ви дізнаєтеся, як перевіряти доступність мережевих вузлів, аналізувати стан мережевих інтерфейсів і конфігурацію, а також працювати з мережевими налаштуваннями.
Мережі — це нервова система ІТ-світу. Якщо ви коли-небудь замислювалися, як ваш браузер відображає сторінку сайту, то ось вам коротка відповідь: завдяки мережі. Незалежно від ролі, яку ви будете виконувати (розробник, адміністратор чи інженер), розуміння мережевих основ — це найважливіший скілл.
Що ж таке мережа? Це сукупність комп’ютерів, об’єднаних для обміну даними. У контексті Linux адміністрування мережі починається з розуміння базових концепцій:
- IP-адреса: це унікальний ідентифікатор пристрою в мережі. Уявіть, що це поштова адреса вашого комп’ютера.
- Підмережа: логічне об’єднання пристроїв у мережі. Це схоже на район, у якому живуть будинки з адресами.
- Шлюз: це «вихід у світ», через який пристрої у вашій локальній мережі можуть виходити в інтернет або підключатися до інших підмереж.
Є два типи IP-адрес: IPv4 (наприклад, 192.168.1.1) і IPv6 (наприклад, 2001:0db8:85a3:0000:0000:8a2e:0370:7334). IPv4 простіше, і саме з ним ми будемо працювати на цій лекції. IPv6 — це крутий і довгостроковий стандарт, але його ми вивчимо пізніше.
2. Команда ping: перевіряємо доступність вузла
Що робить ping?
ping — це утиліта, яка перевіряє, чи доступний інший вузол у мережі. Вона відправляє невеличку «привітальну записку» на цільовий сервер (ICMP-запит) і очікує відповіді. Якщо вузол відповідає, значить усе гаразд; якщо ні, можливо, щось пішло не так (або сервер вирішив вас проігнорувати, грубіян!).
Як користуватися ping?
Давайте спробуємо використати команду ping. Відкрийте термінал і введіть таку команду:
ping 8.8.8.8
Ця команда відправить запити на публічний DNS-сервер Google. Ви побачите щось на зразок цього:
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=10.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=10.2 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=10.3 ms
Ось що означають ці рядки:
- icmp_seq: номер відправленого запиту.
- ttl: «час життя» пакета (скільки мережевих «стрибків» він може зробити).
- time: час (у мілісекундах), який знадобився на відправлення й отримання відповіді.
Щоб обмежити кількість відправлених запитів, можна використовувати прапорець -c:
ping -c 4 8.8.8.8
Ця команда відправить лише 4 запити замість безкінечного потоку.
Практика: перевіряємо зв’язок із локальним хостом і інтернетом
Спробуйте ping із IP-адресою вашого маршрутизатора (зазвичай це щось на кшталт 192.168.1.1) і з 8.8.8.8. Це допоможе вам зрозуміти, чи працює локальна мережа і чи є доступ до інтернету.
3. Команда ip addr: перевіряємо мережеві інтерфейси
Що таке мережевий інтерфейс?
Мережевий інтерфейс — це те, через що ваш комп'ютер «спілкується» з мережею. Це може бути інтерфейс для Ethernet (кабельне з'єднання), WLAN (бездротове з'єднання) або віртуальні інтерфейси, створені для специфічних завдань.
Команда ip addr відображає поточну конфігурацію мережевих інтерфейсів. Спробуємо її:
ip addr
Результат буде приблизно таким:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic enp0s3
inet6 fe80::1a2b:3c4d:5e6f:f7g8/64 scope link
Що ми бачимо тут:
lo— це локальний інтерфейс (localhost). Його адреса завжди127.0.0.1.enp0s3— це назва мережевого інтерфейсу вашого Ethernet-адаптера.inet— IPv4-адреса інтерфейсу.inet6— IPv6-адреса інтерфейсу.
Як тимчасово налаштувати IP-адресу?
Якщо у вас є права суперкористувача (через sudo), ви можете тимчасово налаштувати IP-адресу:
sudo ip addr add 192.168.1.101/24 dev enp0s3
Ця IP-адреса буде діяти до перезавантаження.
4. Команда ifconfig: старий, але досі популярний інструмент
Раніше для управління мережевими інтерфейсами використовувався ifconfig. Зараз він поступово виходить з обігу (його замінив ip addr), але іноді він досі зустрічається у старих дистрибутивах.
Перевірка стану інтерфейсів
Щоб побачити стан інтерфейсів через ifconfig, виконайте:
ifconfig
Результат буде схожий на вивід команди ip addr.
Увімкнення/вимкнення інтерфейсу
Ви можете увімкнути або вимкнути інтерфейс за допомогою:
sudo ifconfig enp0s3 down
sudo ifconfig enp0s3 up
Знову ж таки, пам'ятайте, що ifconfig не працює на всіх сучасних дистрибутивах. Якщо команда не знайдена, спробуйте встановити пакет net-tools, або одразу переходьте на ip addr.
5. Приклад: перевіряємо доступність і мережу
Тепер давайте об'єднаємо отримані знання в невеликий практичний приклад.
Перевірте доступність локального інтерфейсу:
ping 127.0.0.1Перевірте IP-адресу вашої мережі:
ip addrСпробуйте тимчасово налаштувати нову IP-адресу:
sudo ip addr add 192.168.1.102/24 dev enp0s3 ip addr show enp0s3Перевірте доступність публічного вузла:
ping -c 3 8.8.8.8Якщо ви використовуєте старий дистрибутив, спробуйте переключити інтерфейс:
sudo ifconfig enp0s3 down sudo ifconfig enp0s3 up
Тепер ви озброєні базовими інструментами для діагностики мережі у Linux. Команди ping, ip addr і ifconfig — це ваші перші кроки у світ мережевого адміністрування. А далі буде тільки цікавіше!
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ