CCcam C-line: настройка, синтаксис и подключение
Если вы впервые получили строку для подключения к серверу шаринга и смотрите на неё без понимания — всё нормально. Формат cccam cline выглядит лаконично, но в нём нет ничего лишнего: каждое поле строго на своём месте. Эта статья разбирает синтаксис посимвольно, объясняет, куда вставлять строку в CCcam и OScam, и даёт чёткий порядок диагностики, если соединение не устанавливается.
Что такое C-line и из чего она состоит
C-line — это клиентская строка протокола CCcam. Она говорит вашему ресиверу или серверу, к какому удалённому серверу шаринга подключиться и с какими учётными данными. Без неё ресивер работает только с физическими картами, вставленными локально.
Назначение C-line в протоколе CCcam
Протокол CCcam появился как проприетарное решение для card sharing и стал фактическим стандартом в среде спутчикового телевидения. C-line (от слова «client») — это директива для исходящего соединения: ваш ресивер выступает клиентом и запрашивает расшифровку ECM у удалённого сервера.
Когда зашифрованный канал требует Control Word, ваш декодер отправляет ECM-запрос по C-line на указанный хост. Сервер расшифровывает его с помощью физической карты и возвращает CW. Всё это происходит за миллисекунды — если всё настроено правильно.
Разбор синтаксиса поля за полем
Стандартный формат строки выглядит так:
C: <host> <port> <username> <password> [no] [{ params }]
Разберём каждый аргумент:
- C: — обязательная метка, регистр важен, только заглавная «C» и двоеточие.
- <host> — доменное имя или IP-адрес сервера. Например,
share.example.netили185.10.20.30. - <port> — TCP-порт сервера. Чаще всего 12000, но сервер может слушать на любом порту от 1 до 65535.
- <username> и <password> — учётные данные. Регистр символов строго учитывается:
User1иuser1— это разные логины. - [no] — опциональный флаг. Если указан, CCcam не будет передавать этому серверу информацию о ваших локальных картах (так называемый «no share back»).
- [{ params }] — блок дополнительных параметров в фигурных скобках. Здесь можно задать, например,
{ hop = 1 }или ограничение по CAID.
Пример рабочей строки:
C: myserver.dyndns.org 12000 clientuser SecretPass123 no { hop = 1 }
Отличие C-line от N-line и F-line
Путаница в типах строк — частая история у новичков, поэтому разберём быстро.
N-line — это строка протокола Newcamd (не CCcam). Формат другой: начинается с N: и содержит дополнительный DES-ключ. Некоторые серверы поддерживают оба протокола, но строки не взаимозаменяемы.
F-line — это серверная директива CCcam для добавления клиента. Начинается с F: и описывает, кому разрешено подключаться к вашему серверу. C-line — на входящее соединение, F-line — на исходящее.
Куда прописывать C-line: файлы и пути
Это один из самых частых вопросов, и он не такой простой, как кажется — пути зависят от образа прошивки и того, что вы используете: CCcam или OScam.
CCcam.cfg и путь /var/etc/CCcam.cfg
Стандартный путь к конфигу CCcam — /var/etc/CCcam.cfg. На образах Gemini, OpenPLi и OpenATV он именно там. Но встречаются варианты: /etc/CCcam.cfg (старые образы Dreambox), /usr/keys/CCcam.cfg (некоторые сборки для VU+).
Если не знаете точный путь — найдите его командой:
find / -name "CCcam.cfg" 2>/dev/null
C-line просто добавляется в файл отдельной строкой. Порядок строк имеет значение: CCcam пробует их по очереди, первая рабочая используется как основная. После правки файла демон нужно перезапустить:
killall -9 CCcam && /usr/bin/CCcam &
Или через init:
/etc/init.d/CCcam restart
Подключение C-line в OScam через oscam.server
В OScam C-line напрямую не вставляется — это частая ошибка. Нужно создать reader-секцию в файле /etc/oscam/oscam.server.
Конвертация cccam cline в формат OScam выглядит так. Исходная строка:
C: myserver.dyndns.org 12000 clientuser SecretPass123
Превращается в reader-блок:
[reader]
label = myserver
protocol = cccam
device = myserver.dyndns.org,12000
user = clientuser
password = SecretPass123
group = 1
cccversion = 2.3.0
cccmaxhops = 2
Параметр group должен совпадать с группой в oscam.user для ваших клиентов. cccversion — версия протокола CCcam, которую представляет ваш клиент серверу; обычно 2.3.0 работает нормально, но если сервер отклоняет соединение, попробуйте 2.1.4.
Несколько C-line и приоритет серверов
CCcam поддерживает несколько C-line одновременно. В конфиге можно прописать 5–10 строк и больше. Первая строка имеет наивысший приоритет, остальные используются как fallback при недоступности основной.
Параметр DELAY в CCcam.cfg задаёт задержку перед попыткой fallback-соединения в миллисекундах. Например:
DELAY 0
Нулевое значение означает немедленный переключение, что обычно предпочтительно.
В OScam приоритет reader'ов управляется через параметры reconnecttimeout и порядком секций в oscam.server, а также через cccreshare.
Проверка подключения и статус сервера
Настроили — теперь нужно убедиться, что соединение реально работает, а не просто «выглядит подключённым».
Веб-интерфейс CCcam на порту 16001
CCcam поднимает встроенный веб-сервер. По умолчанию он доступен на порту 16001. В браузере открываете:
http://<IP-ресивера>:16001
Порт можно изменить в CCcam.cfg директивой WEBINFO LISTEN PORT 16001. На странице видны активные C-line, подключённые серверы, принятые карты и количество подключённых клиентов.
Зелёный статус рядом со строкой сервера означает соединение установлено. Если горит красным — смотрите дальше.
Webif OScam: вкладка Readers и статус CONNECTED
В OScam веб-интерфейс доступен на порту, заданном в oscam.conf параметром httpport. По умолчанию это 8888:
http://<IP-ресивера>:8888
Переходите на вкладку «Readers». Для каждого reader'а должен отображаться статус CONNECTED. Если статус DISCONNECTED или FAILED — проблема в сети или данных авторизации.
Там же видно количество принятых карт (cards) и среднее время ECM. Нормальное время ECM — 100–400 мс. Если стабильно выше 800 мс — сервер перегружен или есть проблемы с маршрутизацией.
Чтение логов и проверка ECM-ответов
Для CCcam лог обычно находится в /tmp/CCcam.log или /var/log/CCcam.log. Смотреть в реальном времени:
tail -f /tmp/CCcam.log
Ищите строки вида card shared, ECM и временные метки. Успешный шаринг выглядит примерно так:
[Server] <username>: 1 card(s) shared, ECM: 234 ms
В OScam лог настраивается в oscam.conf секции [logging]. При уровне logfile = /var/log/oscam/oscam.log и loglevel = 5 вы увидите все ECM-запросы и ответы с временными метками.
Типичные ошибки C-line и их устранение
Большинство проблем с cccam cline делятся на три категории: сеть, данные авторизации, конфигурация. Диагностировать нужно именно в этом порядке — от сети к конфигу.
Connection refused и закрытый порт
Первое, что нужно сделать при отказе соединения — проверить, доступен ли вообще порт сервера. Команда:
telnet myserver.dyndns.org 12000
Если получаете Connection refused или timeout — либо сервер упал, либо порт заблокирован файрволом на стороне сервера или у вас провайдером. Некоторые ISP блокируют нестандартные TCP-порты. В этом случае попросите провайдера cccam cline предоставить строку на порту 80 или 443 — они почти всегда открыты.
Если telnet подключается, но висит — сервер слушает порт, но CCcam-демон не отвечает. Проблема на стороне сервера.
Неверные логин/пароль или регистр символов
CCcam различает регистр в логине и пароле. Если сервер выдаёт access denied или соединение сразу рвётся после handshake — скорее всего, опечатка или скопированный с пробелом в конце пароль.
Скопируйте строку в текстовый редактор без форматирования (например, nano) и вручную проверьте каждый символ. Особенно внимательно с нулём/буквой O, символами l/1/I и пробелами вокруг полей.
В OScam то же самое: поля user и password в reader-секции должны совпадать побайтово с тем, что выдал владелец сервера.
Сервер виден, но каналы не открываются (no cards / freeze)
Это отдельная и раздражающая ситуация: статус в интерфейсе зелёный, соединение установлено, но каналы замирают или не открываются вовсе.
Возможные причины:
- Нет нужного CAID. Сервер не раздаёт карту для вашего провайдера. Проверьте, какие CAID заявлены, и сравните с тем, что требует ваш канал.
- Рассинхрон времени. ECM-запросы имеют временную метку. Если время на ресивере отличается от серверного более чем на 30–60 секунд, сервер может отбрасывать запросы. Синхронизируйте NTP:
ntpdate pool.ntp.org - Локальная карта перекрывает шаринг. Если в вашем ресивере вставлена физическая карта с тем же CAID, CCcam будет использовать её, а не шаринговую линию. Это не ошибка — приоритет локальной карты выше.
- Несовпадение версии протокола. Старые сервера на CCcam 2.0.x могут отказывать клиентам с
cccversion = 2.3.0. В OScam попробуйте поставитьcccversion = 2.1.4или2.0.11. - Перегрузка источника. Сервер connected, но время ECM скачет выше 1000 мс и каналы фризят. Проблема у источника, не у вас.
Как выбрать надёжный источник C-line
Технически грамотная настройка не поможет, если сам источник строки ненадёжный. Вот на что смотреть — без рекламы конкретных сервисов.
Критерии стабильности: uptime и время ECM
Стабильный источник — это прежде всего предсказуемый uptime. Хороший показатель: 98–99% в месяц. Ниже 95% — уже сомнительно.
Время ECM должно быть не только низким, но и ровным. Среднее 200 мс с редкими пиками до 400 мс — норма. Если среднее 600 мс и постоянно скачет — либо сервер перегружен, либо стоит нестабильный транзитный узел между вами и картой.
Также обратите внимание на частоту реконнектов. Если соединение рвётся каждые несколько часов — это признак проблемного хоста. Хороший сервер держит соединение сутками без обрывов.
Поддерживаемые CAID и пакеты
Перед тем как платить или договариваться о доступе, убедитесь, что источник реально раздаёт нужные вам CAID. Распространённые: 0x0500 (Viacess), 0x0604 (Irdeto), 0x0963 (Videoguard), 0x1800 (Nagravision), 0x0B00 (Conax).
Отдельно уточните: это локальная карта на сервере или пересылка от другого источника? Чем больше hop count (количество пересылок), тем выше ECM и ниже стабильность. Hop = 0 означает локальную карту — это лучший вариант.
Признаки нестабильного источника
Есть несколько явных признаков того, что источник cccam cline ненадёжный:
- Постоянные обрывы и автореконнекты — несколько раз в день без видимой причины.
- Высокое и нестабильное ECM, превышающее 800 мс в среднем.
- Одна физическая карта раздаётся на очень большое количество клиентов одновременно — это перегружает сервер и поднимает ECM до неприемлемых значений.
- Отсутствие реакции от администратора при проблемах.
- Нет никакой информации о заявленных CAID и числе клиентов на карту.
Лучший способ проверить источник перед длительным использованием — мониторить ECM в течение 24–48 часов в разное время суток, особенно в прайм-тайм (19:00–23:00), когда нагрузка на серверы максимальна.
Какой порт по умолчанию используется в C-line?
Чаще всего 12000, но конкретный порт задаётся владельцем сервера и может быть любым в диапазоне 1–65535. Порт всегда явно указан в строке вторым аргументом — никакого автоопределения нет.
В какой файл вставлять C-line в CCcam?
В файл CCcam.cfg. Типичный путь — /var/etc/CCcam.cfg; на части образов это /etc/CCcam.cfg или /usr/keys/CCcam.cfg. После правки файла нужно перезапустить демон CCcam, иначе изменения не применятся.
Как использовать C-line в OScam?
C-line нельзя вставить напрямую — нужно конвертировать её в reader-секцию в файле oscam.server: задать protocol = cccam, device = host,port, а также поля user, password и group. После правки перезапустите OScam или примените конфиг через веб-интерфейс.
Почему сервер подключён, но каналы не открываются?
Статус connected означает только то, что TCP-соединение установлено. Каналы могут не открываться из-за отсутствия нужного CAID на сервере, рассинхрона времени (проверьте NTP), перегрузки источника или того, что локальная карта в ресивере перехватывает запрос. Смотрите ECM в логах и сверяйте CAID.
Как проверить, что C-line рабочая?
Веб-интерфейс CCcam на порту 16001 покажет статус каждой строки. В OScam — вкладка Readers в webif: ищите статус CONNECTED и ненулевое количество принятых карт. В логах должны появляться ECM-запросы с временем ответа — это значит, карта действительно используется.
Сколько C-line можно добавить одновременно?
Жёстких ограничений по числу строк нет, но каждое активное соединение потребляет ресурсы ресивера и сетевой трафик. На практике 3–5 строк достаточно: одна основная и несколько fallback. Десятки одновременных соединений на слабом железе замедляют систему и не дают практической пользы.
Практические советы для стабильного просмотра
Даже самая стабильная линия CCCam или OSCam требует пары простых подготовительных шагов. Обновляйте прошивку ресивера, раз в неделю очищайте ECM‑кеш и держите 15–20% свободного места на USB‑накопителе или во встроенной памяти, чтобы кардридер записывал ключи без задержек.
При настройке антенны оставляйте запас по MER/BER: смещение на два градуса или ослабленный F‑коннектор чаще становится причиной “фризов”, чем сам кардшаринг. Держите под рукой короткий патч‑корд для проверки другого роутера и сохраните два профиля в OSCam — под TCP и под UDP — чтобы мгновенно переключиться, если провайдер начнёт фильтровать протокол.
Utgard.tv следит за каждым хабом 24/7, однако вы можете ускорить диагностику, если будете вести небольшой журнал действий. Записывайте время переключения канала, активный CAID и то, использовали ли вы Wi‑Fi или Ethernet. Такой мини‑отчёт позволит инженерам воспроизвести вашу конфигурацию в лаборатории и предложить решение не за часы, а за минуты.
- Держите активными две линии: если первый сервер уходит на обслуживание, второй тут же подхватывает поток без повторного ввода логина.
- Раз в месяц делайте замер скорости и задержек. Стабильных 1–2 Мбит/с при пинге до 80 мс достаточно для SD/HD, но если джиттер превышает 20 мс — переведите роутер на провод.
- Сохраните в закладки страницу статуса Utgard.tv и Telegram‑бота @utgard_tv_bot — там появляются уведомления о работах раньше, чем успеют среагировать SEMrush или внешние мониторы.