Балансировка нагрузки

L4 против L7, health-check, липкие сессии и что делать с долгими соединениями.

Учить эту тему
  1. Что такое TLS и SSL?

    junior

    SSL - устаревший протокол шифрования транспорта (3.0 и раньше), TLS - его наследник (1.0...1.3). На практике все говорят SSL, но в конфигах используется TLS. TLS 1.2 - минимум, 1.3 - рекомендуется.

  2. Как работает HTTPS?

    junior

    HTTP поверх TLS. TLS handshake устанавливает общий ключ, сервер предъявляет сертификат от доверенного CA, дальше всё шифруется симметричным алгоритмом (AES-GCM или ChaCha20).

  3. Как работает TLS-handshake?

    middle

    TLS 1.2: ClientHello -> ServerHello + cert + key exchange -> клиент проверяет цепочку, генерит pre-master, оба считают session key, дальше симметричное AEAD. TLS 1.3 - 1-RTT, ECDHE по умолчанию, без RSA-key-exchange.

  4. Что такое ARP?

    middle

    Address Resolution Protocol: внутри L2-сегмента ищет MAC по известному IP. Broadcast 'who has 10.0.0.5? tell 10.0.0.1', ответ unicast. Кеш - ip neigh. Уязвимость - ARP-spoofing.

  5. Что такое VLAN и зачем он нужен?

    middle

    Логическое разделение L2-сети на подсегменты по тегу 802.1Q (VID 12 бит). Нужен для изоляции трафика, сегментации broadcast-доменов, multi-tenant, безопасности.

  6. L4 vs L7 балансировщик - в чём разница?

    middle

    L4 балансит TCP/UDP-потоки по (src, dst, port), не разбирает payload (HAProxy в TCP-mode, IPVS, NLB). L7 разбирает HTTP/gRPC, видит headers и path, умеет routing, retry, circuit breaker (nginx, Envoy, ALB).

  7. Сколько таблиц в iptables и зачем каждая?

    middle

    filter (ACL по умолчанию), nat (трансляция адресов), mangle (правка TTL/TOS/marking), raw (обход conntrack), security (SELinux). Цепочки: PREROUTING, INPUT, FORWARD, OUTPUT, POSTROUTING.

  8. IPv4 vs IPv6: ключевые отличия.

    senior

    32 vs 128 бит, без NAT в обычном дизайне, SLAAC вместо DHCP, нет broadcast (есть multicast/anycast), упрощённый header. Миграция - двойной стек, NAT64/DNS64.

  9. Что такое overlay-сеть?

    middle

    Виртуальная L2/L3 поверх физической: VXLAN, Geneve, GRE. Используется в Kubernetes (Flannel, Calico, Cilium), multi-host Docker, SDN. Платишь оверхедом инкапсуляции и MTU-головной болью.