Фундаментальные основы компьютерных сетей для системных администраторов

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

1. Модель OSI и физические принципы передачи данных в сетях

Модель OSI и физические принципы передачи данных в сетях

Представьте, что вы отправляете электронное письмо коллеге в соседнем кабинете. На первый взгляд, это мгновенное действие, но за доли секунды данные проходят путь, сравнимый с логистикой международной корпорации. Если на каком-то этапе произойдет сбой — например, кабель перебит или приложение неверно интерпретировало кодировку — письмо не дойдет. Понимание того, «где именно» сломался процесс, невозможно без эталонной модели взаимодействия открытых систем (OSI).

Иерархия абстракций: зачем нужна модель OSI

В 1980-х годах сетевое оборудование разных производителей часто было несовместимо. Модель OSI (Open Systems Interconnection) была создана как универсальный язык, разделяющий сложный процесс передачи данных на семь логических уровней. Для системного администратора это не просто академическая абстракция, а основной инструмент диагностики: когда «интернет не работает», мы проверяем уровни последовательно, начиная с физического.

Главный принцип работы модели — инкапсуляция. Представьте матрешку: данные прикладного уровня (ваше сообщение) «заворачиваются» в заголовки транспортного уровня, те — в заголовки сетевого, и так далее до самого низа. На принимающей стороне происходит обратный процесс — декапсуляция, где каждый уровень «снимает» свою обертку, проверяет её на ошибки и передает содержимое выше.

| Уровень OSI | Название | Тип данных (PDU) | Основная функция | | :--- | :--- | :--- | :--- | | L7 | Прикладной | Данные (Data) | Интерфейс взаимодействия приложения с сетью | | L6 | Представительский | Данные (Data) | Кодирование, сжатие, шифрование | | L5 | Сеансовый | Данные (Data) | Управление сессиями и диалогами | | L4 | Транспортный | Сегмент / Датаграмма | Доставка «из конца в конец», порты | | L3 | Сетевой | Пакет (Packet) | Маршрутизация по IP-адресам | | L2 | Канальный | Кадр (Frame) | Физическая адресация (MAC), контроль ошибок | | L1 | Физический | Бит (Bit) | Передача сигналов по среде |

Физический уровень (L1): от электричества к битам

На первом уровне нет понятий «IP-адрес» или «файл». Здесь существуют только биты и сигналы. Задача уровня L1 — передать последовательность нулей и единиц через физическую среду. В современных сетях это чаще всего медная витая пара, оптоволокно или радиоволны (Wi-Fi).

Важнейшая характеристика этого уровня — полоса пропускания (bandwidth). Часто её путают со скоростью, но правильнее воспринимать её как «ширину дороги». Чем шире дорога, тем больше машин (данных) может проехать за единицу времени. Однако на сигнал всегда влияют затухание (attenuation) и помехи (noise). Например, если проложить неэкранированную витую пару (UTP) рядом с силовым кабелем лифта, электромагнитная наводка исказит сигнал, и биты на приемном конце превратятся в «кашу».

> На физическом уровне возникают самые «глупые», но фатальные ошибки: плохо обжатый коннектор RJ-45, перегиб оптоволокна с радиусом меньше допустимого или использование кабеля категории 5e там, где требуется 10-гигабитный линк категории 6a.

Канальный уровень (L2): порядок в локальном сегменте

Если L1 просто передает сигналы, то канальный уровень (Data Link) группирует их в осмысленные блоки — кадры (фреймы). Здесь появляется первая серьезная адресация — MAC-адрес (Media Access Control). Это уникальный 48-битный идентификатор, «зашитый» в сетевую карту на заводе.

L2 отвечает за то, чтобы данные внутри одной локальной сети (LAN) дошли до нужного устройства. Здесь работает протокол Ethernet. Важной функцией уровня является обнаружение ошибок. В конец каждого кадра добавляется контрольная сумма (FCS — Frame Check Sequence). Если при получении кадра расчетная сумма не совпала с указанной, кадр просто отбрасывается.

> Инсайт: Канальный уровень не занимается исправлением ошибок (это задача L4), он только выявляет их. Если кабель плохой, L2 будет молча выбрасывать битые кадры, а пользователь увидит «тормоза» из-за необходимости повторных запросов данных на верхних уровнях.

Сетевой уровень (L3): глобальная навигация

На уровне L3 (Network) данные превращаются в пакеты. Здесь в игру вступают IP-адреса. Если MAC-адрес — это «имя» устройства, которое не меняется, то IP-адрес — это «почтовый адрес», который зависит от местоположения устройства в глобальной сети.

Основное устройство этого уровня — маршрутизатор (роутер). Он анализирует заголовок пакета, находит IP-адрес назначения и по своей таблице маршрутизации решает, через какой интерфейс отправить данные дальше. Именно на L3 происходит объединение разрозненных локальных сетей в глобальный Интернет.

Транспортный уровень (L4): надежность и порты

Транспортный уровень — это «служба доставки». Его главная задача — обеспечить связь между конкретными процессами (программами) на двух узлах. Для этого используются номера портов. Например, веб-сервер обычно слушает порт 80 или 443, а почтовый сервер — 25.

Здесь работают два ключевых протокола:

  • TCP (Transmission Control Protocol) — гарантирует доставку. Он устанавливает соединение («рукопожатие»), нумерует сегменты и требует подтверждения получения. Если сегмент потерялся, TCP отправит его снова.
  • UDP (User Datagram Protocol) — работает по принципу «выстрелил и забыл». Он быстрее, так как не тратит время на подтверждения, и идеален для видеостриминга или онлайн-игр, где потеря одного кадра менее критична, чем задержка.
  • Верхние уровни (L5–L7): от сессии до интерфейса

    Уровни 5, 6 и 7 часто объединяют в один «прикладной» блок в упрощенной модели TCP/IP, но в OSI они разделены:

  • L5 (Сеансовый) управляет созданием и завершением сеансов связи. Например, когда вы авторизуетесь на сайте, L5 следит, чтобы ваша сессия не «протухла» слишком быстро.
  • L6 (Представительский) отвечает за формат данных. Здесь происходит преобразование кодировок (например, из ASCII в UTF-8) и шифрование (TLS/SSL).
  • L7 (Прикладной) — это то, что видит приложение. Протоколы HTTP, FTP, SMTP, DNS живут именно здесь. Это «входные ворота» для ваших данных в мир сетевых протоколов.
  • Пошаговый разбор инкапсуляции: путь HTTP-запроса

    Рассмотрим процесс отправки простого GET-запроса к сайту google.com.

  • L7 (Application): Браузер формирует текст запроса: GET / HTTP/1.1.
  • L6 (Presentation): Данные шифруются с помощью TLS.
  • L5 (Session): Создается логический сеанс связи с сервером.
  • L4 (Transport): К данным добавляется TCP-заголовок. В нем указывается порт источника (например, 54321) и порт назначения (443). Формируется сегмент.
  • L3 (Network): К сегменту добавляется IP-заголовок. Указывается IP вашего компьютера и IP сервера Google. Формируется пакет.
  • L2 (Data Link): К пакету добавляется заголовок Ethernet с MAC-адресом вашей сетевой карты и MAC-адресом шлюза (роутера). В конец добавляется контрольная сумма. Формируется кадр.
  • L1 (Physical): Кадр преобразуется в последовательность электрических импульсов и уходит в кабель.
  • Практический аспект: диагностика по модели OSI

    Системный администратор всегда должен «думать уровнями». Представьте ситуацию: пользователь жалуется, что сайт не открывается.

  • Проверка L1: Горят ли лампочки на сетевой карте? Вставлен ли кабель? Не перебит ли он? (Инструменты: визуальный осмотр, кабельный тестер).
  • Проверка L2: Видит ли компьютер соседа по коммутатору? Есть ли запись в ARP-таблице? (Инструменты: arp -a).
  • Проверка L3: Проходит ли ping до шлюза или до внешнего IP-адреса? (Инструменты: ping, traceroute).
  • Проверка L4: Открыт ли нужный порт на сервере? Не блокирует ли его брандмауэр? (Инструменты: telnet, nc, nmap).
  • Проверка L7: Возвращает ли веб-сервер ошибку 404 или 500? Правильно ли настроены конфиги Nginx? (Инструменты: curl, логи сервера).
  • Такой системный подход позволяет отсечь 90% ложных гипотез в первые минуты поиска неисправности.

    2. Технологии коммутации и маршрутизации: различия уровней L2 и L3

    Технологии коммутации и маршрутизации: различия уровней L2 и L3

    Начинающие системные администраторы часто путают функции коммутаторов и маршрутизаторов, особенно когда сталкиваются с устройствами класса «L3 Switch». Чтобы навести порядок, нужно четко разграничить два процесса: передачу данных внутри одной «песочницы» (локальной сети) и пересылку данных между разными «песочницами».

    Коммутация на уровне L2: логика прозрачного моста

    Коммутатор (свитч) работает на канальном уровне модели OSI. Его главная задача — соединить устройства в пределах одной локальной сети (LAN). В отличие от своего предшественника, концентратора (хаба), который просто копировал сигнал на все порты, коммутатор «умнее». Он анализирует MAC-адреса.

    Внутри каждого коммутатора живет таблица MAC-адресов (CAM-таблица). Когда устройство подключается к порту и отправляет первый кадр, коммутатор запоминает: «MAC-адрес AA:BB:CC находится на порту №5». В следующий раз, когда кто-то захочет отправить данные этому устройству, коммутатор направит кадр точно в 5-й порт.

    > Если коммутатор не знает, где находится адресат (его нет в таблице), он выполняет Flooding — рассылает кадр на все порты, кроме входящего. Как только адресат ответит, его положение будет занесено в таблицу.

    Широковещательные штормы и VLAN

    Одной из проблем L2-сетей являются широковещательные запросы (Broadcast). Например, когда компьютер ищет IP-адрес соседа, он кричит на всю сеть: «Кто здесь 192.168.1.5?». Все устройства в этом сегменте получают этот запрос. Если таких запросов становится слишком много, сеть «ложится» под нагрузкой — это называется широковещательным штормом.

    Для решения этой проблемы и повышения безопасности используют VLAN (Virtual Local Area Network). Мы можем программно разделить один физический коммутатор на несколько логических. Устройства в VLAN 10 никогда не услышат криков устройств из VLAN 20, даже если они воткнуты в соседние порты.

    Маршрутизация на уровне L3: выбор пути

    Маршрутизатор (роутер) работает на сетевом уровне. Его задача — соединять разные сети. Если коммутатор оперирует MAC-адресами, то маршрутизатор — IP-адресами.

    Маршрутизатор не просто перекидывает данные, он принимает решение на основе таблицы маршрутизации. В этой таблице указаны пути к различным сетям: «Чтобы попасть в сеть 10.0.0.0/8, отправь пакет через соседа 192.168.1.1».

    | Характеристика | Коммутатор (L2) | Маршрутизатор (L3) | | :--- | :--- | :--- | | Идентификатор | MAC-адрес | IP-адрес | | Область действия | Локальная сеть (LAN) | Глобальные сети (WAN/Inter-VLAN) | | Таблица | CAM (MAC-table) | Routing Table | | Тип передачи | Switching (быстро, на чипах) | Routing (сложнее, с анализом заголовков) |

    Статическая и динамическая маршрутизация

    Маршрутизатор должен знать, куда отправлять пакеты. Есть два способа наполнить его таблицу:

  • Статическая маршрутизация: Администратор вручную прописывает пути. Это надежно и предсказуемо для маленьких сетей. Но если канал упадет, маршрутизатор сам не найдет обходной путь — админу придется перенастраивать его руками.
  • Динамическая маршрутизация: Роутеры общаются друг с другом через специальные протоколы (OSPF, BGP, EIGRP). Они обмениваются информацией о состоянии сетей. Если один путь заблокирован, протокол автоматически пересчитает маршрут и направит трафик в обход.
  • > В больших сетях (и в самом Интернете) используется динамика. Протокол BGP (Border Gateway Protocol) — это «клей», который держит весь интернет, позволяя огромным сетям провайдеров договариваться о маршрутах.

    L3-коммутаторы: гибрид для корпоративных сетей

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

    Зачем они нужны? Обычный роутер — это «бутылочное горлышко». Если у вас 20 VLAN и вы хотите передавать данные между ними через один роутер (схема Router-on-a-Stick), скорость будет ограничена мощностью процессора роутера. L3-коммутатор делает маршрутизацию между VLAN на аппаратном уровне (ASIC), что в десятки раз быстрее.

    Пошаговый разбор: как пакет проходит через L2 и L3

    Представим, что компьютер А (192.168.1.2) хочет отправить данные компьютеру Б (172.16.0.5). Они находятся в разных сетях.

  • Компьютер А понимает, что адрес Б находится вне его сети (маска подсети говорит об этом).
  • Компьютер А формирует пакет с IP назначения 172.16.0.5, но упаковывает его в кадр с MAC-адресом своего шлюза по умолчанию (роутера).
  • L2-коммутатор видит кадр, смотрит на MAC-адрес шлюза и перекидывает его в порт, где воткнут роутер.
  • Роутер получает кадр, «раздевает» его до IP-пакета, видит адрес 172.16.0.5.
  • Роутер смотрит в таблицу маршрутизации, находит нужный интерфейс, ведущий к сети 172.16.0.0.
  • Роутер «заворачивает» пакет в новый кадр с MAC-адресом компьютера Б и отправляет его в сеть назначения.
  • Типичные сценарии на собеседовании

    Частый вопрос: «Может ли коммутатор заменить роутер?». Ответ: Обычный L2-коммутатор — нет, так как он не понимает IP-адреса и не умеет изменять заголовки пакетов (TTL, контрольные суммы IP). L3-коммутатор — может в рамках локальной сети, но он обычно не поддерживает специфические WAN-технологии (например, PPPoE или сложные правила NAT), которые нужны для выхода в интернет.

    Другой вопрос: «Что такое петля на L2?». Если соединить два порта коммутатора кабелем (или через другой коммутатор), кадры начнут бесконечно циркулировать по кругу, вызывая отказ сети. Для борьбы с этим на L2 используется протокол STP (Spanning Tree Protocol), который блокирует лишние связи.

    3. Стек протоколов TCP/IP: структура IP-адресации и служебные сообщения ICMP

    Стек протоколов TCP/IP: структура IP-адресации и служебные сообщения ICMP

    Если модель OSI — это идеальный теоретический чертеж, то TCP/IP — это реальное здание, в котором мы все живем. Этот стек протоколов стал стандартом де-факто благодаря своей гибкости и открытости. В центре этой вселенной стоит протокол IP (Internet Protocol), который обеспечивает уникальную адресацию каждого узла в глобальной сети.

    Анатомия IPv4-адреса: больше, чем четыре числа

    IPv4-адрес — это 32-битное число, которое для удобства записывают в виде четырех октетов (байтов), разделенных точками, например 192.168.10.15. Но компьютер не видит точек, он видит биты: 11000000.10101000.00001010.00001111.

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

    Маски и префиксы (CIDR)

    Маска подсети — это тоже 32-битное число, состоящее из непрерывной последовательности единиц, а затем нулей. Например, маска 255.255.255.0 в двоичном виде содержит 24 единицы. Это означает, что первые 24 бита адреса — это «название улицы» (сеть), а оставшиеся 8 бит — «номер дома» (хост).

    В современной админской практике используется запись CIDR (Classless Inter-Domain Routing). Вместо длинной маски мы пишем префикс: /24.

  • /24 дает нам адресов (из которых 254 доступны для устройств).
  • /30 часто используется для линков между двумя роутерами, давая всего 2 полезных адреса.
  • > Важно: В любой подсети два адреса зарезервированы. Первый (все нули в части хоста) — это адрес самой сети. Последний (все единицы в части хоста) — это широковещательный адрес (Broadcast).

    Служебные сообщения ICMP: нервная система сети

    Протокол IP сам по себе «немой» — он не сообщает об ошибках. Эту роль берет на себя ICMP (Internet Control Message Protocol). Это служебный протокол, который живет на сетевом уровне и помогает диагностировать проблемы.

    Когда вы запускаете команду ping, вы отправляете ICMP Echo Request. Если узел жив, он отвечает ICMP Echo Reply. Если же пакет не может быть доставлен, промежуточный роутер пришлет вам сообщение об ошибке, например:

  • Destination Unreachable (Сеть или узел недоступны).
  • Time Exceeded (Время жизни пакета TTL истекло).
  • Именно на сообщении Time Exceeded основана работа утилиты traceroute. Она отправляет пакеты с TTL=1, затем TTL=2 и так далее, заставляя каждый роутер на пути «раскрыть себя», прислав ICMP-ответ об истечении времени.

    Структура IP-пакета: что внутри заголовка

    Для системного администратора важно понимать, что находится «под капотом» IP-пакета. Заголовок IPv4 обычно занимает 20 байт.

  • Version: Для IPv4 это всегда 4.
  • TTL (Time to Live): Счетчик «прыжков». Каждый роутер уменьшает его на 1. Если TTL=0, пакет уничтожается. Это защита от вечных петель.
  • Protocol: Указывает, какой протокол находится внутри (например, 6 для TCP, 17 для UDP).
  • Source & Destination IP: Адреса отправителя и получателя.
  • Checksum: Проверка целостности самого заголовка.
  • Публичные и частные адреса (RFC 1918)

    Адресов IPv4 всего около 4.3 миллиарда, и они давно закончились. Чтобы интернет продолжал работать, было введено разделение на публичные («белые») и частные («серые») адреса. Частные адреса не маршрутизируются в интернете.

    | Диапазон | Класс (исторически) | Описание | | :--- | :--- | :--- | | 10.0.0.0 – 10.255.255.255 | A | Для крупных корпоративных сетей | | 172.16.0.0 – 172.31.255.255 | B | Средние сети | | 192.168.0.0 – 192.168.255.255 | C | Домашние и малые офисные сети |

    Если ваш компьютер имеет адрес 192.168.1.5, он может общаться с миром только через роутер, который выполняет NAT (трансляцию адресов), подменяя ваш «серый» адрес на свой «белый».

    Разбор задачи: расчет подсети

    Представьте, что вам нужно разбить сеть 192.168.1.0/24 на 4 равные подсети для разных отделов.

  • Чтобы получить 4 подсети, нам нужно «занять» у части хоста 2 бита ().
  • Исходный префикс был /24, новый станет /26 ().
  • Шаг сети составит адреса.
  • Подсети будут:
  • - .0/26 (диапазон хостов .1–.62) - .64/26 (диапазон хостов .65–.126) - .128/26 (диапазон хостов .129–.190) - .192/26 (диапазон хостов .193–.254)

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

    4. Инфраструктурные службы DNS, DHCP и механизмы трансляции адресов NAT

    Инфраструктурные службы DNS, DHCP и механизмы трансляции адресов NAT

    Сеть на уровне IP-адресов — это сухие цифры. Но пользователям нужны имена (google.com), а администраторам — автоматизация. Инфраструктурные службы делают сеть «человечной» и масштабируемой. Без DNS мы бы заучивали тысячи цифр, без DHCP — вручную настраивали бы каждый смартфон, а без NAT — интернет бы схлопнулся еще в 90-х из-за нехватки адресов.

    DHCP: как устройства получают «паспорт»

    DHCP (Dynamic Host Configuration Protocol) избавляет админа от рутины. Когда вы втыкаете кабель в компьютер, происходит процесс DORA, состоящий из четырех шагов:

  • Discovery: Клиент кричит на всю сеть (Broadcast): «Мне нужен IP-адрес!».
  • Offer: DHCP-сервер отвечает: «У меня есть свободный адрес 192.168.1.50, возьмешь?».
  • Request: Клиент: «Да, беру, забронируй его за мной».
  • Acknowledgement: Сервер: «Ок, адрес твой на 24 часа. Вот еще маска, шлюз и DNS».
  • > Нюанс: Адрес выдается в аренду (Lease). Когда пройдет половина срока (T1), клиент попытается продлить аренду. Если сервер не ответит, клиент продолжит работать, но в конце срока будет вынужден отдать адрес и начать поиск заново.

    DNS: телефонная книга интернета

    DNS (Domain Name System) — это распределенная база данных, которая превращает доменные имена в IP-адреса. Процесс разрешения имени (resolution) иерархичен.

    Когда вы вводите www.example.com:

  • Ваш компьютер спрашивает рекурсивный резолвер (обычно DNS провайдера или 8.8.8.8).
  • Резолвер идет к корневым серверам (.) и спрашивает: «Где найти зону .com?».
  • Корневой сервер отправляет его к серверам TLD (Top-Level Domain).
  • Сервер .com отправляет его к авторитативному серверу компании Example.
  • Тот выдает финальный IP-адрес.
  • Для ускорения процесса используется кэширование. Каждый DNS-ответ содержит время жизни (TTL в секундах). Пока TTL не истек, резолвер не будет переспрашивать сервер, а возьмет адрес из памяти. Это причина, по которой после смены IP-адреса сайта он может «не открываться» у части пользователей еще несколько часов.

    Основные типы записей DNS

  • A-запись: Имя -> IPv4 адрес.
  • AAAA-запись: Имя -> IPv6 адрес.
  • CNAME: Псевдоним (одно имя ссылается на другое).
  • MX: Адрес почтового сервера для этого домена.
  • TXT: Произвольный текст (часто для подтверждения владения доменом или настроек безопасности почты SPF/DKIM).
  • NAT: спаситель IPv4

    NAT (Network Address Translation) позволяет целой компании выходить в интернет, используя всего один публичный IP-адрес. Чаще всего мы используем разновидность NAT под названием PAT (Port Address Translation) или «Masquerading».

    Как это работает?

  • Пакет от 192.168.1.5 уходит на роутер.
  • Роутер запоминает: «Хост .5 отправил запрос с порта 1234».
  • Роутер меняет внутренний IP на свой внешний (например, 1.2.3.4), а порт меняет на свой свободный (например, 40001).
  • Когда приходит ответ от сервера, роутер смотрит в свою таблицу трансляций, видит порт 40001, вспоминает, что это для хоста .5, и переправляет пакет обратно.
  • > NAT — это не безопасность, но он создает побочный эффект: извне невозможно инициировать соединение с компьютером внутри сети, так как в таблице трансляций нет соответствующей записи. Для работы внутренних сервисов (например, веб-камеры) нужно настраивать Port Forwarding (проброс портов).

    Пошаговый разбор: почему не работает интернет?

    Представьте: компьютер получил IP по DHCP, но сайты не грузятся. ping 8.8.8.8 проходит, а ping google.com — нет.

  • Диагноз: Проблема в DNS.
  • Шаг 1: Проверяем настройки. Команда nslookup google.com. Если пишет «DNS request timed out», значит, сервер не отвечает.
  • Шаг 2: Проверяем, какой DNS-сервер выдал DHCP. Возможно, это внутренний сервер компании, который «упал».
  • Шаг 3: Пробуем сменить DNS на публичный (например, 1.1.1.1). Если заработало — чиним локальный DNS.
  • Шаг 4: Если даже по IP (8.8.8.8) ничего не пингуется, проверяем таблицу NAT на роутере — возможно, закончились свободные порты или переполнена память.
  • Типичные ошибки конфигурации

    Частая ошибка — установка слишком маленького TTL в DNS при переносе сайта. Если вы поставите 60 секунд, вы создадите огромную нагрузку на сервер. Если поставите 48 часов и ошибетесь в IP-адресе — сайт будет недоступен двое суток для всего мира.

    В DHCP опасна ситуация IP Conflict. Если администратор вручную назначил серверу адрес 192.168.1.10, но не исключил его из пула выдачи DHCP, сервер рано или поздно выдаст этот же адрес какому-нибудь ноутбуку. В итоге оба устройства будут работать нестабильно.

    5. Жизненный цикл пакета и методология поиска сетевых неисправностей

    Жизненный цикл пакета и методология поиска сетевых неисправностей

    Мы изучили все детали механизма: от физических бит до имен DNS. Теперь пришло время собрать это в единую картину и проследить «путешествие» данных от нажатия клавиши Enter до получения ответа. Понимание этого пути — высший пилотаж для системного администратора, позволяющий локализовать проблему в считанные секунды.

    Жизненный цикл пакета: от браузера до сервера

    Допустим, вы вводите http://myserver.local/index.html. Что происходит в недрах системы?

    Этап 1: Подготовка (L7–L4)

    Приложение (браузер) понимает, что ему нужен ресурс. Оно обращается к операционной системе. Если IP-адрес myserver.local неизвестен, запускается механизм DNS (как мы разбирали ранее). Получив IP (например, 192.168.1.20), данные спускаются на транспортный уровень. Поскольку это HTTP, используется TCP. Происходит «трехстороннее рукопожатие» (SYN -> SYN-ACK -> ACK). Теперь канал связи открыт.

    Этап 2: Инкапсуляция и маршрутизация (L3)

    Данные упаковываются в IP-пакет. ОС проверяет свою таблицу маршрутизации.
  • Если целевой IP в той же подсети, пакет готов к отправке локально.
  • Если в другой, пакет будет отправлен на шлюз по умолчанию.
  • Этап 3: Поиск соседа (ARP)

    Прежде чем отправить кадр на канальном уровне (L2), нужно узнать MAC-адрес получателя (или шлюза). ОС заглядывает в ARP-кэш. Если там пусто, отправляется ARP Request: «У кого IP 192.168.1.1? Сообщите мне свой MAC». Получив ответ, ОС формирует Ethernet-кадр.

    Этап 4: Коммутация и передача (L2–L1)

    Кадр попадает на коммутатор. Тот смотрит в свою CAM-таблицу и перекидывает кадр в нужный порт. Пакет летит по проводам в виде электрических сигналов. Если на пути есть роутер, он выполняет декапсуляцию до L3, меняет TTL, пересчитывает контрольную сумму и заново инкапсулирует пакет для следующего сегмента сети.

    Методология поиска неисправностей: Top-Down vs Bottom-Up

    Когда «ничего не работает», у администратора есть две основные стратегии:

  • Bottom-Up (Снизу вверх): Начинаем с физики. Проверяем кабель, линк на сетевой карте, ARP-таблицу, пинг шлюза. Это лучший метод для проблем с подключением конкретного узла.
  • Top-Down (Сверху вниз): Начинаем с приложения. Проверяем ответ сервера, DNS-записи, настройки прокси. Это эффективно, если сеть в целом работает, но не открывается конкретный сервис.
  • Divide and Conquer (Разделяй и властвуй): Начинаем с середины (L3). Пингуем внешний адрес (например, 8.8.8.8). Если пинг идет — проблема на уровнях L4–L7. Если нет — проблема на L1–L3.
  • Золотой набор инструментов администратора

    Для диагностики вам не всегда нужны дорогие сканеры. Достаточно встроенных утилит:

  • ipconfig / ifconfig / ip a: Проверка собственного IP, маски и шлюза. Если вы видите адрес 169.254.x.x — значит, DHCP-сервер не ответил (это адрес APIPA).
  • ping: Проверка доступности и задержек (Latency). Большие задержки или потери пакетов — признак проблем на L1/L2 или перегрузки канала.
  • tracert / traceroute: Показывает, на каком именно узле (хопе) пакет «умирает». Если затыки начинаются на первом же прыжке — виноват ваш роутер.
  • nslookup / dig: Проверка работы DNS.
  • netstat / ss: Показывает активные соединения и открытые порты на вашем компьютере. Помогает понять, слушает ли приложение нужный порт.
  • Wireshark / tcpdump: «Микроскоп» для сети. Позволяет увидеть каждый бит в реальном времени. Если вы видите в Wireshark исходящие SYN-пакеты, но не видите ответных SYN-ACK — значит, удаленный сервер их игнорирует или их режет фаервол.
  • Кейс с собеседования: «Пинг идет, сайт не открывается»

    Это классическая ловушка. Если ping работает, значит уровни L1, L2 и L3 в порядке. Проблема выше.

  • Проверяем L4: Попробуйте telnet [IP] 80. Если соединение не устанавливается — порт закрыт фаерволом.
  • Проверяем L7 (DNS): Возможно, ping вы делали по IP, а браузер использует имя, которое не резолвится.
  • Размер пакета (MTU): Редкая, но коварная проблема. Маленькие пакеты пинга проходят, а большие пакеты данных от сайта — нет, потому что где-то на пути канал не пропускает пакеты стандартного размера (1500 байт), а фрагментация запрещена.
  • Финальное напутствие

    Сетевое администрирование — это не магия, а строгая логика уровней. Помните: любая сложная проблема — это просто последовательность простых сбоев. Всегда проверяйте свои предположения, не доверяйте «лампочкам» на 100% и всегда имейте под рукой свежую схему сети. Если вы понимаете, как пакет «одевается» и «раздевается» на каждом этапе своего пути, вы сможете починить любую сеть.