IP-підмережі — це логічні поділи IP-мережі, що дозволяють проксі-сервісам сегментувати та керувати окремими діапазонами IP-адрес для виділення клієнтам, конкретним випадкам використання або внутрішній інфраструктурі, тим самим оптимізуючи використання IP-ресурсів та продуктивність мережі.
Розуміння IP-підмереж
IP-адреса (Internet Protocol) однозначно ідентифікує пристрій у мережі. Підмережування — це процес поділу великої мережі на менші, більш керовані підмережі (сабнети). Цей поділ досягається шляхом запозичення бітів з хостової частини IP-адреси для створення ідентифікатора підмережі.
Основи IP-адрес
IP-адреси поділяються на IPv4 та IPv6.
- IPv4: 32-бітна адреса, представлена в десятковій нотації з крапками (наприклад,
192.168.1.1). Вона надає приблизно 4,3 мільярда унікальних адрес. - IPv6: 128-бітна адреса, представлена в шістнадцятковій нотації (наприклад,
2001:0db8:85a3:0000:0000:8a2e:0370:7334). Вона пропонує значно більший адресний простір.
Маска підмережі та нотація CIDR
Маска підмережі розрізняє мережеву частину IP-адреси від хостової частини. В IPv4 вона зазвичай представлена в десятковому форматі з крапками (наприклад, 255.255.255.0).
CIDR (Classless Inter-Domain Routing) нотація надає стислий спосіб представлення підмереж шляхом додавання слеша та кількості бітів у мережевій частині (наприклад, /24).
Приклад:
IP-адреса IPv4 192.168.1.100 з маскою підмережі 255.255.255.0 еквівалентна 192.168.1.100/24.
Тут перші 24 біти (192.168.1) представляють мережу, а решта 8 бітів (.100) представляють хост.
Компоненти підмережі
Кожна підмережа має три ключові типи адрес:
- Мережева адреса: Перша адреса в підмережі, де всі біти хоста встановлені в нуль. Вона ідентифікує саму підмережу. (наприклад,
192.168.1.0/24) - Широкомовна адреса: Остання адреса в підмережі, де всі біти хоста встановлені в одиницю. Використовується для надсилання даних на всі пристрої в межах цієї конкретної підмережі. (наприклад,
192.168.1.255/24) - Хостові адреси: Діапазон придатних для використання IP-адрес у підмережі, за винятком мережевої та широкомовної адрес. Вони призначаються пристроям. (наприклад,
192.168.1.1до192.168.1.254для/24)
Кількість придатних для використання хостових адрес в підмережі IPv4 розраховується як 2^(32 - CIDR_prefix) - 2.
Приклад розрахунку:
Для підмережі /24: 2^(32 - 24) - 2 = 2^8 - 2 = 256 - 2 = 254 придатних для використання IP-адрес хостів.
Для підмережі /28: 2^(32 - 28) - 2 = 2^4 - 2 = 16 - 2 = 14 придатних для використання IP-адрес хостів.
Підмережі в контексті проксі
Проксі-сервіси використовують IP-підмережі для ефективного управління, розподілу та ротації великих пулів IP-адрес. Це дозволяє здійснювати гранульований контроль над IP-ресурсами та підвищує гнучкість і стійкість послуг.
Придбання та управління IP-ресурсами
Проксі-провайдери отримують діапазони IP-адрес, часто як цілі підмережі, з різних джерел:
* Інтернет-провайдери (ISP): Пряме виділення від вищестоящих провайдерів.
* Регіональні інтернет-реєстратори (RIR): Пряме виділення від таких організацій, як ARIN, RIPE NCC, APNIC.
* Центри обробки даних: Орендовані підмережі як частина послуг колокації або виділених серверів.
Ці отримані підмережі формують пул, з якого беруться IP-адреси для клієнтів. Розширені проксі-сервіси впроваджують надійні системи управління IP для відстеження використання, доступності та репутації IP-адрес у кожній підмережі.
Основні застосування підмереж у проксі-сервісах
Сегментація клієнтів та виділені IP-адреси
Підмережі дозволяють проксі-провайдерам призначати окремі діапазони IP-адрес окремим клієнтам або групам клієнтів.
* Виділені проксі-IP: Клієнту може бути призначено конкретну /32 (одну IP-адресу) або невелику підмережу (наприклад, /29, що надає 6 придатних для використання IP-адрес), яку використовує лише його трафік. Це запобігає проблемам з репутацією IP від інших клієнтів.
* Спільні проксі-пули: Кілька клієнтів можуть ділити IP-адреси з більших підмереж, але інтелектуальні системи розподілу часто забезпечують справедливе використання та мінімізують перехресне забруднення.
Географічна різноманітність
Проксі-сервіси часто працюють глобально, вимагаючи IP-адреси з різних географічних місць. Підмережі є фундаментальними для досягнення цього:
* Підмережі отримуються з різних центрів обробки даних або ISP у різних містах, штатах та країнах.
* Клієнти можуть потім запитувати проксі з IP-адресами з конкретних географічних підмереж, що дозволяє їм імітувати локальну присутність.
Ротація IP та управління репутацією
Для сервісів, що вимагають частих змін IP (наприклад, веб-скрейпінг, перевірка реклами), підмережі сприяють ефективній ротації IP:
* У межах підмережі: Проксі можуть ротувати через усі доступні IP-адреси хостів у межах однієї налаштованої підмережі.
* Через кілька підмереж: Більш надійна ротація передбачає отримання IP-адрес з кількох різноманітних підмереж, мінімізуючи ймовірність блокування всієї підмережі через конкретні шаблони активності.
* Ізоляція репутації: Якщо IP-адреси в межах конкретної підмережі отримують погану репутацію (наприклад, через надмірні запити або шкідливу діяльність), проксі-система може ізолювати цю підмережу, запобігаючи її впливу на інші підмережі або трафік клієнтів.
Управління трафіком та балансування навантаження
Підмережі можуть використовуватися для розподілу вихідного проксі-трафіку:
* Розподіл навантаження: Трафік може балансуватися між різними підмережами або діапазонами IP-адрес у межах підмережі, щоб запобігти тому, щоб будь-яка окрема IP-адреса стала вузьким місцем або досягла лімітів швидкості.
* Рівні послуг: Різні підмережі можуть призначатися для різних рівнів послуг (наприклад, преміум IP-адреси з чистих підмереж, стандартні IP-адреси із загальних пулів).
Безпека та контроль доступу
На вхідній стороні проксі-сервіси можуть використовувати підмережі для безпеки:
* Білий список: Дозволяти з'єднання лише з певних IP-підмереж клієнтів для доступу до проксі.
* Чорний список: Блокувати з'єднання, що надходять від відомих шкідливих IP-підмереж.
Технічні аспекти реалізації
Конфігурація проксі-сервера вказує, які підмережі доступні для вихідних з'єднань. Коли надходить запит клієнта, логіка проксі визначає, яку вихідну IP-адресу використовувати.
# Концептуальний фрагмент конфігурації проксі
proxy_pools:
- name: "US-East-1_Pool"
type: "residential"
subnets:
- 192.0.2.0/24
- 203.0.113.0/28
- name: "EU-West-2_Dedicated"
type: "datacenter"
subnets:
- 198.51.100.0/29 # Призначено клієнту A
- 198.51.100.8/29 # Призначено клієнту B
- name: "US-West-1_IPv6"
type: "datacenter"
subnets:
- 2001:db8:1::/64
Внутрішня логіка проксі-сервісу динамічно вибирає доступну IP-адресу з вказаної підмережі на основі таких політик, як:
* Циклічний розподіл між IP-адресами в підмережі.
* Найменш використовувана IP-адреса.
* "Липка" IP-адреса для кожної сесії клієнта.
* IP-адреси з конкретними географічними атрибутами.
Підмережі IPv4 проти IPv6 у проксі
Хоча принципи підмережування залишаються незмінними, масштаб значно відрізняється.
| Характеристика | Підмережі IPv4 | Підмережі IPv6 |
|---|---|---|
| Розмір адреси | 32-бітний | 128-бітний |
| Типовий префікс | /24, /28, /32 (одна IP) |
/64 (стандарт для локальної мережі), /48, /56 (часто делегується клієнтам) |
| Хости/Підмережа | Обмежено (наприклад, 254 для /24, 14 для /28) |
Величезний (наприклад, 2^64 для /64 практично нескінченний) |
| Використання проксі | Гранульований контроль, управління дефіцитом, ротація | Достаток, легше призначати виділені /64 або /56 клієнтам, менше уваги на дефіцит окремих IP-адрес |
| Репутація | Репутація підмережі є значним фактором через дефіцит | Менш критично для кожної підмережі через її величезність; часто /64 розглядається як єдина сутність для репутації |