---
date: 2026-09-27
tags:
  - zapret
  - zapret2
  - steam
  - games
  - hostlist
  - profile
  - howto
aliases:
  - Steam Zapret
  - Стим не работает с Zapret
  - Какие домены у Steam
  - Домены Steam для hostlist
  - Порты Steam 27015-27050
  - Профиль для Steam в Zapret 2
  - Стим не заходит в сеть
  - steamserver.net что это
description: "Какие домены, порты и CDN использует Steam при входе и в магазине, по разбору дампа трафика, и как собрать под Steam профиль Zapret 2."
---

> [!mirror] Резервное зеркало
> Актуальная версия этой страницы — на основной вики: [wiki.zapret.moe/Zapret2/steam](https://wiki.zapret.moe/Zapret2/steam)

# 🎮 Steam и Zapret 2: какие домены и порты нужны и как настроить профиль

> [!info] О чём заметка
> Что делает клиент Steam (*Стим*) в сети при запуске и при просмотре магазина: к каким серверам и на какие порты он подключается, в каких сетях они живут и чем это важно для [[profile|профиля]] [[Zapret2|Zapret 2]]. Разбор основан на записи трафика, а в конце собран готовый список доменов и портов для своего профиля. Как создать профиль в интерфейсе, по шагам расписано в [[add-profile]], подбор стратегии для самих игр — в [[find-game-strategy]].

> [!tip] TL;DR
> 1. Клиент Steam входит в сеть через собственные серверы Valve `*.steamserver.net`, и не только по порту 443, но и по TCP **27020, 27021 и 27024**. Профиль с портами `80,443` эти соединения не увидит.
> 2. Магазин, сообщество, картинки и видео приходят с чужих сетей доставки: Akamai (`steampowered.com`, `steamcommunity.com`, `steamusercontent.com`) и Fastly (`*.fastly.steamstatic.com`). Через них прошёл почти весь трафик Steam в записи.
> 3. Для профиля берите hostlist, а не список IP: адреса CDN меняются, а часть контента в записи пришла по IPv6.
> 4. Минимальный профиль: TCP-порты `80,443-65535` и hostlist из `steampowered.com`, `steamcommunity.com`, `steamstatic.com`, `steamusercontent.com`, `steamcontent.com`, `steamserver.net`.
> 5. Трафик самих игр (UDP 27000–27250 и P2P) этим профилем не покрывается, для него нужен отдельный профиль по [[find-game-strategy]].

## Откуда данные и чего в них нет

Разбор сделан по записи трафика компьютера с Windows 27 сентября 2026 года. Запись длится 47 секунд: за это время клиент Steam подключился к сети, открылся магазин, страница игры с трейлером и раздел сообщества. Запись разобрана по заголовкам пакетов и по открытой части TLS-рукопожатия, где клиент называет имя сервера (об этом ниже). Содержимое соединений зашифровано и не расшифровывалось.

> [!warning] Это карта подключений, а не проверка обхода
> Во время записи Zapret не вмешивался в соединения Steam (в записи нет поддельных пакетов, которые он отправляет), и провайдер ничего не заблокировал: все соединения к Steam установились, трейлеры и картинки скачались целиком. Поэтому запись показывает, **куда** Steam ходит, но не говорит, какие из этих соединений режет [[Zapret/about#Обход DPI (система ТСПУ)|ТСПУ]] (технические средства противодействия угрозам — оборудование DPI у провайдера) и какая стратегия их пробивает. В записи также нет скачивания игры, запуска игры с сетевой игрой, голосового чата, мастерской и оплаты: для этих частей Steam сверяйтесь с официальным списком Valve, разобранным ниже.

Многие соединения к Fastly в записи закончились пакетом RST (сброс соединения). Для встроенного браузера на Chromium это обычный способ закрыть лишние соединения, и признаком блокировки он здесь не был: до сброса в каждом таком соединении завершилось TLS-рукопожатие и сервер успел ответить. Если вы разбираете свою запись, RST в конце соединения сам по себе не признак блокировки; подозрительно, когда сброс приходит сразу после первого пакета клиента и ответа от сервера нет.

## Как Steam входит в сеть: серверы подключения Valve

Первое, что делает клиент после запуска, — проверяет, есть ли интернет. Он отправляет обычный HTTP-запрос без шифрования `GET /204` на `steamconnecttest.com` и ждёт пустой ответ с кодом 204. В записи этот домен разрешился в адрес внутри сети Ростелекома: так выглядит кэширующий узел Akamai, установленный у провайдера. Сразу за ним клиент проверяет IPv6 через `ipv6check-http.steamserver.net` и `ipv6check-udp.steamserver.net`.

Дальше начинается главное. Чтобы войти в аккаунт, получать сообщения, список друзей и уведомления, клиент держит постоянное соединение с одним из серверов подключения Valve. В сети Steam их называют CM-серверами (от *connection manager*, «менеджер соединений»). В записи клиент почти одновременно открыл восемь соединений к таким серверам во Франкфурте (`fra1`, `fra2`) и Стокгольме (`sto1`, `sto2`):

| Сервер | Порт TCP |
|---|---|
| `cmp1-fra1.steamserver.net` | 27020 |
| `cmp1-fra2.steamserver.net` | 27024 |
| `cmp2-fra2.steamserver.net` | 27020, 27024, 443 |
| `cmp1-sto1.steamserver.net` | 27021 |
| `cmp1-sto2.steamserver.net` | 27020 |
| `cmp2-sto2.steamserver.net` | 443 |

Все восемь соединений оставались открытыми до конца записи, но основная переписка шла по одному, к `cmp2-sto2` на порт 443: по нему прошло около 50 КБ, по каждому из остальных — около 7 КБ, то есть рукопожатие и редкий служебный обмен. Похоже, клиент держит запасные соединения к нескольким серверам, а работает через одно. Это вывод по одной записи: как клиент выбирает сервер, Valve не документирует.

Все эти серверы живут в собственной сети Valve, автономной системе `AS32590` (адреса `155.133.x.x` и `162.254.198.x`). Соединения к ним зашифрованы TLS, и в первом пакете клиент открыто называет имя сервера. Это поле называется SNI (*Server Name Indication*): по нему ТСПУ узнаёт, к какому сайту идёт соединение, и по нему же hostlist Zapret решает, применять ли к соединению профиль.

Проще говоря: вход в Steam — это обычное TLS-соединение с понятным именем `*.steamserver.net`, только часто на нестандартном порту. Если профиль слушает лишь порты 80 и 443, соединения на 27020, 27021 и 27024 пройдут мимо него, даже когда домен есть в списке. Valve в справке указывает для входа и загрузок диапазон TCP и UDP **27015–27050**, и все порты из записи в него попадают.

## Магазин и сообщество: встроенный браузер и чужие CDN

Магазин, страницы игр, профиль и сообщество внутри клиента показывает не сам клиент, а встроенный браузер `steamwebhelper.exe`, собранный на Chromium. Поэтому эта часть Steam ведёт себя в сети как обычный сайт: десятки параллельных соединений к нескольким доменам, картинки и видео со своих серверов доставки.

Эти серверы принадлежат не Valve. Крупные сервисы арендуют место в сетях доставки контента (CDN, *Content Delivery Network*), которые держат копии файлов по всему миру; подробнее о них и о том, как узнать владельца адреса, — в [[find-domain-owner]]. В записи Steam использовал две такие сети:

| Домен | Что грузит | Сеть |
|---|---|---|
| `store.steampowered.com` | страницы магазина | Akamai |
| `api.steampowered.com` | программный интерфейс клиента | Akamai |
| `steamcommunity.com` | сообщество, профили | Akamai |
| `images.steamusercontent.com` | скриншоты и картинки пользователей | Akamai (IPv6) |
| `video.akamai.steamstatic.com` | трейлеры | Akamai (IPv6) |
| `store.fastly.steamstatic.com`, `community.fastly.steamstatic.com` | оформление магазина и сообщества | Fastly |
| `shared.fastly.steamstatic.com`, `shared.steamstatic.com`, `cdn.fastly.steamstatic.com` | общие скрипты, стили, обложки игр | Fastly |
| `avatars.fastly.steamstatic.com` | аватары | Fastly |
| `video.fastly.steamstatic.com` | трейлеры | Fastly |

По объёму соотношение получилось резким: через Fastly прошло около 37 МБ, через Akamai около 20 МБ, а через серверы Valve — около 0,1 МБ.

![[steam-traffic-by-network.png]]

Проще говоря: собственные серверы Valve отвечают за вход и связь с аккаунтом, а всё тяжёлое, что вы видите в магазине, приходит с Akamai и Fastly. Если в Steam удаётся войти, но магазин пустой, без картинок или трейлеров, проблема почти наверняка в доменах CDN, а не в `steamserver.net`.

### Почему в hostlist лучше писать родительский домен

Встроенный браузер экономит соединения. Если несколько доменов обслуживает один и тот же сервер с одним сертификатом, Chromium может отправлять запросы к ним всем по одному уже открытому соединению HTTP/2. В записи одно соединение к Fastly, открытое под именем `shared.fastly.steamstatic.com`, передало 23,8 МБ, больше половины всего трафика Fastly. Скорее всего, по нему шли и файлы с других поддоменов `steamstatic.com`: SNI называет только тот домен, ради которого соединение открыли первым, и остальные имена в открытом виде уже не появляются.

Для Zapret это значит, что решение о профиле принимается один раз, по первому имени. Список из точных поддоменов вроде `store.fastly.steamstatic.com` легко пропустит соседний поддомен, который браузер откроет первым в следующий раз. Поэтому для Steam родительский домен (`steamstatic.com`) надёжнее точных поддоменов. Общий совет [[add-profile]] начинать с точных поддоменов защищает от того, чтобы профиль задел посторонние сайты; здесь такой опасности нет, потому что все поддомены `steamstatic.com`, `steampowered.com` и остальных доменов из списка ниже принадлежат самому Steam.

### Два разных TLS-почерка

Сам клиент Steam и его встроенный браузер открывают TLS-соединения по-разному, и в записи это видно по первому пакету.

Клиент (соединения к `*.steamserver.net`, первые запросы к `api.steampowered.com`, `steamcommunity.com` и `shared.steamstatic.com`) отправляет короткое приветствие TLS, сообщение ClientHello, на 517 байт. Оно целиком помещается в один TCP-пакет, и имя сервера во всех 13 таких соединениях стоит на одном и том же месте, со 155-го байта.

Встроенный браузер отправляет ClientHello на 1,7–2,1 КБ. Размер набирает постквантовый ключ `X25519MLKEM768`, который современный Chromium добавляет в каждое соединение: одна эта часть занимает 1216 байт. Такое сообщение не помещается в один пакет и уходит двумя. Вдобавок Chromium перемешивает порядок полей в ClientHello при каждом подключении, поэтому имя сервера оказывается то в первом пакете, то во втором. В записи оно попало во второй пакет или на стык пакетов в 22 соединениях из 47.

Проще говоря: к серверам входа Steam уходит маленький предсказуемый пакет, а к магазину — большой, разрезанный надвое, с именем сайта в случайном месте. Стратегия, которая пробивает один вид соединений, не обязана пробивать другой, поэтому при подборе проверяйте отдельно вход в сеть и загрузку магазина. Как стратегии режут и подменяют пакеты — в [[desync]].

## Сверка с официальным списком Valve

У Valve есть справочная статья «Required Ports for Steam» (версия от февраля 2026 года): https://help.steampowered.com/en/faqs/view/2EA8-4D75-DA21-31EB. Она перечисляет домены, которые прокси должен пропускать для веб-запросов Steam, и порты для разных частей платформы.

Домены из официального списка: `steampowered.com`, `steamcommunity.com`, `steamgames.com`, `steamusercontent.com`, `steamcontent.com`, `steamstatic.com` и `akamaihd.net`. С записью есть два расхождения. Во-первых, в официальном списке нет `steamserver.net`, хотя именно на нём в записи были серверы входа и проверки IPv6, и нет `steamconnecttest.com`. Во-вторых, `steamcontent.com` (серверы, с которых скачиваются игры и обновления) и `akamaihd.net` в записи не встретились, потому что за 47 секунд ничего не скачивалось. Домен `akamaihd.net` — общий домен Akamai, на нём живут тысячи чужих сайтов, поэтому вписывать его в профиль Steam целиком не стоит.

Порты по данным Valve:

| Назначение | Протокол и порты |
|---|---|
| Вход в сеть и загрузка контента | TCP 80 и 443, TCP и UDP 27015–27050 |
| Трафик игр | UDP 27000–27250 |
| Сетевая игра и голосовой чат Steam (P2P) | UDP 3478, 4379, 4380, 27014–27030 |
| Remote Play (трансляция игр внутри дома) | UDP 27031–27036 и TCP 27036, локальные порты на своём компьютере |

Там же Valve пишет, что весь не-веб трафик, в основном UDP, идёт на адреса собственной сети `AS32590`. Это пригодится для игрового профиля: трафик игр часто идёт без имени сервера, и отбирать его приходится по адресам (ipset), а не по доменам.

В записи порт 27036 тоже появился, но как широковещательная рассылка UDP внутри домашней сети: так клиент ищет другие компьютеры со Steam для Remote Play. Этот трафик не уходит к провайдеру, и обходить его не нужно.

## Как настроить профиль под Steam

### Сначала проверьте готовые профили пресета

Большая часть Steam живёт на Akamai и Fastly. Если в вашем [[preset|пресете]] уже есть профиль под одну из этих сетей (например, «Akamai TCP») и он включён, магазин может заработать без отдельного профиля: достаточно подобрать стратегию в готовом профиле. Как найти такой профиль — в [[find-domain-owner]]. Собственный профиль Steam всё равно понадобится, если не заходит в сеть сам клиент: серверы `steamserver.net` живут в сети Valve, и профили под CDN их не касаются.

### Свой профиль: порты и домены

Порядок действий в интерфейсе — как в [[add-profile]]; ниже только то, что отличается для Steam.

- [ ] **TCP-порты:** `80,443-65535`. Запись захватывает и 443, и порты серверов входа 27015–27050. Для профиля, который отбирает трафик по hostlist, широкий диапазон безопасен: соединения к чужим доменам ему не достанутся. Подробнее о фильтрах — [[filter]].
- [ ] **Hostlist («Ваши записи»):**

```
steampowered.com
steamcommunity.com
steamstatic.com
steamusercontent.com
steamcontent.com
steamserver.net
steamgames.com
```

Каждая строка включает в профиль все поддомены: `steamserver.net` накрывает серверы входа `cmp*-*.steamserver.net`, `steamstatic.com` — все `*.fastly.steamstatic.com` и `*.akamai.steamstatic.com`. `steamconnecttest.com` в список вносить не обязательно: проверка интернета идёт по HTTP без шифрования и заблокирована, судя по записи, не была. Если клиент при запуске упорно пишет, что нет подключения к интернету, допишите и его. Формат списков — в [[Zapret/hostlist|hostlist]].

- [ ] **UDP:** для входа и магазина, судя по записи, не нужен. Клиент не отправлял UDP на серверы Valve, и ни одно соединение QUIC (HTTP/3 поверх UDP-порта 443) в записи нельзя отнести к Steam. Если в вашей записи QUIC к доменам Steam появится, добавьте в профиль UDP-порт `443`: отключить QUIC во встроенном браузере Steam, как в обычном Chrome, нельзя.
- [ ] **Порядок профилей:** профиль Steam ставьте выше широких профилей по сетям Akamai и Fastly, иначе соединения магазина заберёт первый подходящий широкий профиль. Почему так — в [[profile-independence|«Одно соединение — один профиль»]].

### Если одна стратегия не пробивает всё

Профиль с одним списком получает одну стратегию на все соединения Steam. Но соединения здесь разные: маленький ClientHello клиента к серверам Valve и большой ClientHello браузера к Akamai и Fastly, в разных сетях, которые ТСПУ может обрабатывать по-разному. Если после подбора стратегии клиент входит в сеть, а магазин не грузится, или наоборот, разделите профиль на два:

- профиль «Steam вход» с одной строкой `steamserver.net`;
- профиль «Steam магазин» с остальными доменами списка.

Каждому подбирайте стратегию отдельно. Если внутри магазина не грузится только одна сеть (например, картинки с Fastly есть, а трейлеры с Akamai нет), таким же образом выносится в свой профиль `fastly.steamstatic.com` или `akamai.steamstatic.com`; такой профиль ставится выше общего, потому что соединение достаётся первому подходящему профилю.

### Игры — отдельным профилем

Профиль выше покрывает клиент, магазин и сообщество. Сетевые игры ходят по UDP на адреса Valve или на серверы самих издателей, часто без доменного имени, и hostlist их не видит. Для игры нужен свой профиль с ipset и UDP-портами из таблицы Valve выше; сбор адресов через TCPView и перебор стратегий расписаны в [[find-game-strategy]].

## Как проверить результат

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

1. Полностью закройте Steam: «Steam» → «Выход» или правый клик по значку в трее → «Выход». Убедитесь в диспетчере задач, что не осталось процессов `steam.exe` и `steamwebhelper.exe`.
2. Запустите Steam заново. Если клиент вошёл в сеть и показывает друзей в сети, соединения к `steamserver.net` проходят.
3. Откройте магазин и страницу любой игры: должны загрузиться обложки, скриншоты и трейлер. Пустые прямоугольники вместо картинок указывают на домены CDN.
4. Если что-то не грузится, проверьте по [[log-analyzer|«Анализу лога»]], какой профиль обработал соединения Steam, а общие ловушки проверки — в [[verify-strategy]].

Если стратегия не подошла, переходите к следующей в «Готовых стратегиях» и снова проверяйте с полного перезапуска. Автоматически подобрать стратегию для доменов Steam можно в [[Zapret/Blockcheck|BlockCheck]].

## 📚 См. также

- [[add-profile|Как добавить свой профиль]] — создание профиля в GUI по шагам
- [[find-game-strategy|Как найти стратегию для игры]] — отдельный профиль для игрового трафика по IP
- [[find-domain-owner|Как узнать CDN домена]] — Akamai, Fastly и готовые профили пресета
- [[find-site-domains|Как найти домены сайта через F12]] — тот же поиск доменов для обычного сайта
- [[profile-independence|Одно соединение — один профиль]] — почему важен порядок профилей
- [[verify-strategy|Как проверить, заработала ли стратегия]] — ловушки проверки
- [[Zapret/hostlist|hostlist]] · [[Zapret/ipset|ipset]] — форматы списков доменов и адресов
- 🔗 Required Ports for Steam, справка Valve: https://help.steampowered.com/en/faqs/view/2EA8-4D75-DA21-31EB

---

> [!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ
> При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование доступно в Forgejo: [исходник этой заметки](https://git.zapret.moe/zapretdiscordyoutube/todo/src/branch/main/Zapret2/steam.md) · [скачать весь репозиторий одним zip-архивом](https://git.zapret.moe/zapretdiscordyoutube/todo/archive/main.zip).
