August 5

Сети. Материал. База

Эта статья была сделана для нашего прекрасного телеграмм канала PLR.

В этой статье вы найдёте и получите знания про:

  • Модель TCP/IP — 4 уровня стека протоколов и за что каждый отвечает
  • DNS — как работает преобразование доменов в IP-адреса, типы записей (A, AAAA, CNAME, MX, NS, TXT, PTR)
  • Основные сетевые порты — стандартные порты популярных сервисов
  • Книги по сетям — от базовых (Таненбаум, Олифер) до продвинутых (Stevens, Unix Network Programming)
  • Видеокурсы — бесплатные (freeCodeCamp, Professor Messer, Jeremy's IT Lab) и платные (Coursera, Udemy, Pluralsight)
  • Практика и лаборатории — симуляторы (Packet Tracer, GNS3, EVE-NG) и онлайн-площадки (TryHackMe, HackTheBox)
  • Инструменты — анализ трафика (Wireshark, tcpdump), сканирование (Nmap, Masscan, Netcat, Hping3), DNS-разведка (dig, dnsrecon, sublist3r)
  • Онлайн-ресурсы — сайты, блоги, RFC-документация, YouTube-каналы для изучения сетей
  • Сертификации — Network+, CCNA, Security+, CCNP как ориентиры для структурированного обучения

(Если честно, при написании статьи (ПРЯМ В КОНЦЕ, НУ ЁМАЁ) я случайно вышел, и она не сохранилась, поэтому статья будет не самой качественной, как в первоначальной версии, которой уже нет. но я постараюсь.)

Модель TCP/IP

В основе современного интернета лежит стек протоколов TCP/IP. В отличие от теоретической 7-уровневой модели OSI, TCP/IP состоит из 4 уровней и гораздо более практичен.

Модель иерархическая, при отправке данные проходят каждый уровень сверху вниз (инкапсуляция), при получении снизу вверх (деинкапсуляция).

Канальный уровень

Задача: передача данных в пределах одной физической сети (LAN) и управление доступом к среде передачи (кабель, радиоволны). Здесь объединяется физическая передача сигналов и логическая организация кадров.

Адресация: в самых распространённых технологиях (Ethernet, Wi-Fi) используются аппаратные MAC-адреса.

Примеры: Ethernet, Wi-Fi (802.11), PPP (Point-to-Point Protocol).

Сетевой уровень

Задача: глобальная маршрутизация пакетов между разными сетями (интерсеть). Именно этот уровень позволяет пакету из вашей домашней сети добраться до сервера на другом континенте.

Адресация: логическая, с помощью IP-адресов (IPv4 и IPv6).

Основной протокол: IP. Он не гарантирует доставку пакета, просто передаёт его дальше согласно таблице маршрутизации (или отбрасывает, если маршрута нет). Гарантий нет.

Вспомогательные протоколы: ICMP (Internet Control Message Protocol) для служебных сообщений и ошибок (на нём работают ping и traceroute).

Нюанс: протоколы маршрутизации (OSPF, BGP и др.) решают задачу этого уровня (строят таблицы маршрутов), но сами работают поверх IP или TCP и логически находятся выше.

Транспортный уровень

Задача: доставка данных между конкретными приложениями (процессами) на устройствах. Для этого используются порты (например, 80 для HTTP, 22 для SSH), которые позволяют различать трафик разных программ на одном устройстве.

Протоколы:

TCP — надёжная доставка с установлением соединения (3-way handshake).
Гарантирует порядок пакетов, контролирует перегрузку сети и запрашивает повторную отправку потерянных данных. Подходит для сайтов, файлов, почты.

UDP — быстрая доставка без установления соединения и без гарантий.
Не запрашивает повторную отправку при потере пакета — просто перекладывает эту задачу на приложение. Подходит для видеозвонков, онлайн-игр и DNS-запросов.

Прикладной уровень

Задача: протоколы, с которыми напрямую работают пользовательские приложения. На этом уровне данные приобретают конечный смысл (веб-страница, письмо, видео). Кодирование и/или шифрование обеспечиваются надстройками (например, TLS).

Примеры:
• HTTP / HTTPS — веб
• SSH — удалённый доступ
• FTP / SFTP — передача файлов (SFTP работает поверх SSH)
• SMTP / POP3 / IMAP — электронная почта
• DNS — преобразование доменных имён в IP
• DHCP — автоматическая выдача сетевых настроек

DNS

Преобразует доменные имена (например, google.com) в IP-адреса.

Как работает:
Клиент отправляет запрос DNS-резолверу. Резолвер сначала проверяет свой кэш. Если записи нет он обращается к корневым серверам (.), потом к TLD-серверам (.com) и наконец (свершилось!) к авторитетным серверам домена. В ответ возвращается IP-адрес.

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

A — IPv4-адрес

AAAA — IPv6-адрес

CNAME — псевдоним (алиас) другого имени

MX — почтовые серверы

NS — серверы имён зоны

TXT — текстовые данные (SPF, DKIM, DMARC, верификация)

PTR — обратная запись (IP → домен) в зонах in-addr.arpa / ip6.arpa

Порт 53: обычно UDP для обычных запросов; TCP для больших ответов и некоторых операций.

Важные порты

Часто используемые:

21 (FTP), 22 (SSH), 23 (Telnet)

25 (SMTP), 53 (DNS), 80 (HTTP), 110 (POP3)

143 (IMAP), 443 (HTTPS), 993 (IMAPS), 995 (POP3S)

3306 (MySQL), 3389 (RDP) , 5432 (PostgreSQL), 8080 (альтернативный HTTP)

Исчерпывающий материал по сетям

Книги

Базовый уровень:

  • "Компьютерные сети" — Эндрю Таненбаум. Классический учебник, покрывает все уровни от физического до прикладного. Подробно, академично, фундаментально. Издательство Питер PDF-версия
  • "TCP/IP Illustrated, Volume 1: The Protocols" — W. Richard Stevens. Библия сетевых протоколов. Разбирает каждый протокол с примерами реального трафика в Wireshark. Amazon Wikipedia
  • "Сети для чайников" — Лоуренс Миллер. Простое введение для новичков. ЛитРес (автор Lawrence Miller)

Продвинутый уровень:

  • "TCP/IP Illustrated, Volume 2: The Implementation" — Gary R. Wright, W. Richard Stevens. Как TCP/IP реализован в BSD Unix. Для тех, кто хочет понимать сети на уровне ядра ОС. Amazon Книга бесплатно
  • "Unix Network Programming, Volume 1: The Sockets Networking API" — W. Richard Stevens. Программирование сетевых приложений на C. Raw sockets, системные вызовы. Amazon Wikipedia Официальный сайт PDF на GitHub
  • "Network Warrior" — Gary A. Donahue. Практическое руководство по реальным сетям: Cisco, VLAN, маршрутизация, безопасность. Amazon O'Reilly Goodreads

На русском:


Видеокурсы

Бесплатные:

Платные:

  • Coursera: "The Bits and Bytes of Computer Networking" (Google) Coursera
  • Stanford CS144: Introduction to Computer Networking Stanford Online CS144 GitHub
  • Udemy: "The Complete Networking Fundamentals Course" Udemy
  • Pluralsight: Network+ (N10-009) Path Pluralsight

Практика и лаборатории

Симуляторы и эмуляторы:

Практические задачи:

  • TryHackMe: "Network Fundamentals" — модуль с практическими заданиями по сетям. TryHackMe
  • HackTheBox Academy: "Network Enumeration with Nmap" — практический курс по сканированию сетей. HTB Academy
  • OverTheWire: Bandit — хотя это про Linux, там есть задачи на работу с сетью. Официальный сайт

Онлайн-лаборатории:


Инструменты для изучения сетей

Анализ трафика:

Сканирование и разведка:

DNS-инструменты:


Онлайн-ресурсы

Сайты и блоги:

Документация (RFC):

YouTube-каналы:


Сертификации (как ориентир для изучения)

Начальный уровень:

Продвинутый уровень:

Спасибо за внимание! Надеемся, что вы посоветуете данную статью, поделитесь с друзьями/коллегами и оцените нашу статью!