Перейти к содержанию
Обсудить задачу →
Статьи и инструкции

Сервер 1С не обнаружен: проверяем службы, порты и кластер

Ищем точку отказа по шагам: адрес базы, DNS, TCP, службы, рабочие узлы, VPN и СУБД. Команды и протокол проверки.
Оригинальная концептуальная иллюстрация диагностики служб и сети на компьютере рядом с сервером

Ошибка «Сервер 1С:Предприятия не обнаружен» не означает автоматически, что сервер выключен. Клиент мог обратиться к старому адресу, попасть не в тот кластер или получить недоступный адрес рабочего процесса. Причиной также бывают остановленная служба, закрытый порт, неверный маршрут VPN и сбой после обновления.

Ниже — последовательность диагностики клиент-серверной 1С в Windows и Linux: что проверить, какую команду выполнить и какой вывод из результата допустим. Примеры относятся к архитектуре 1С:Предприятия 8.3; конкретные параметры сверяют с установленным релизом. Источники проверены 9 ноября 2026 года. Это инструкция: реальный сервер 1С, сетевые настройки и данные при подготовке не изменялись; успешное исправление на стенде не заявляется.

Сначала определите масштаб: один компьютер, одна база или все пользователи

Один компьютер

Сравните адрес базы, DNS, VPN и версию клиента с рабочим компьютером в той же сети.

Одна информационная база

Проверьте имя Ref, регистрацию базы, назначение рабочего процесса и доступ к её СУБД.

Все пользователи

Проверьте общую сеть, службу и порт кластера, состояние сервера и последние изменения.

Отдельно уточните: доступен ли сервер по RDP/SSH, работают ли другие приложения, кто и когда подключался последний раз, было ли обновление платформы, VPN, антивируса или firewall. Доступный RDP подтверждает только свой маршрут и свой порт.

Скопируйте полный текст ошибки, включая вложенную причину, адрес, порт и время. Фраза «не работает 1С» не позволяет отличить отказ TCP от ошибки лицензирования или СУБД.

Как клиент доходит до базы и почему одного порта недостаточно

Маршрут подключения: клиент, менеджер кластера, рабочий процесс и сервер СУБД; отдельно агент и RAS
Упрощённая схема для диагностики. В реальном кластере несколько серверов и рабочие процессы могут находиться на разных узлах.

Клиенту нужен не только начальный адрес подключения, но и доступ к узлу, обслуживающему сеанс. Поэтому успешный TCP-тест порта кластера ещё не доказывает доступность всей цепочки.

КомпонентТиповое значение TCPЧто проверять
Агент сервера, ragent1540Администрирование и взаимодействие компонентов; не пользовательский порт «на все случаи»
Менеджер кластера, rmngr1541Начальная доступность выбранного кластера
Рабочие процессы, rphostДиапазон 1560–1591Реальный порт и узел нужного процесса
RAS для утилиты rac1545, если используетсяОтдельный административный путь; не условие обычного входа пользователя
СУБДОпределяется её настройкойДоступ с сервера 1С, а не со всех клиентских ПК

Первые три значения сверены с официальной таблицей портов 1С. Они могут быть изменены. Не открывайте весь диапазон наугад и не публикуйте административные службы в интернет. Для филиала предпочтителен согласованный VPN и ограничение источников; смена внешнего номера порта не заменяет защиту.

Шаг 1. Проверьте, куда именно подключается клиент

В окне запуска 1С выберите базу и откройте её параметры через «Изменить». Сначала посмотрите вариант размещения: файловый путь, сервер 1С или веб-адрес. Эти способы требуют разных проверок.

Учебный клиент-серверный адрес:
Srvr="app1c.corp.example.net:1541";Ref="Accounting";

Srvr — адрес и порт кластера 1С
Ref — имя информационной базы в кластере, не имя базы СУБД
  • Сравните Srvr и Ref с утверждённым паспортом системы или рабочим подключением.
  • После миграции проверьте старые ярлыки и общие списки баз.
  • Не заменяйте порт кластера 1541 на порт агента 1540 ради эксперимента.
  • Не создавайте новую базу с похожим именем, чтобы «появилось подключение».
  • Если используется https://..., начните с веб-публикации и её backend, а не с портов на пользовательском ПК.

Примеры используют вымышленные внутренние адреса: app1c.corp.example.net, 10.20.30.10 и базу Accounting. Подставляйте фактические значения; статья не задаёт универсальный IP-план.

Шаг 2. Проверьте DNS с проблемного компьютера

В Windows откройте PowerShell. Сначала узнайте, какой адрес возвращает имя, и сравните его с ожидаемым адресом сервера. При VPN внутреннее имя может ошибочно разрешаться через домашний DNS.

$Server1C = 'app1c.corp.example.net'
Resolve-DnsName -Name $Server1C -Type A
Resolve-DnsName -Name $Server1C -Type AAAA
Get-DnsClientServerAddress
Get-NetIPConfiguration

Отсутствие AAAA нормально, если IPv6-адрес не предусмотрен. Если запись есть, проверяют и соответствующий маршрут. Несколько A/AAAA не означают, что все адреса пригодны для этого сервиса.

На Linux-клиенте или промежуточном сервере проверьте системное разрешение имени:

getent ahosts app1c.corp.example.net
ip address
ip route get 10.20.30.10

Важно сравнить результаты на проблемном и рабочем узлах в одно время. Не начинайте с редактирования hosts и очистки всех кэшей: так легко спрятать исходную причину. Если по IP TCP доступен, а по имени — нет, это основание разбирать разрешение адреса и выбор маршрута, а не переустанавливать платформу. Возможности Resolve-DnsName описаны Microsoft.

Шаг 3. Проверьте TCP, а не только ping

На проблемном Windows-компьютере выполните две проверки: по имени и по ожидаемому IP. Вторая нужна для сравнения; она не меняет рабочую строку подключения.

Test-NetConnection -ComputerName $Server1C -Port 1541 -InformationLevel Detailed
Test-NetConnection -ComputerName '10.20.30.10' -Port 1541 -InformationLevel Detailed

Смотрите RemoteAddress, SourceAddress, InterfaceAlias и TcpTestSucceeded. Команда может ждать тайм-аут, если трафик молча отбрасывается. ICMP может быть запрещён при работающем TCP; успешный ping не подтверждает открытый порт.

  • TCP false: проверить слушающий сокет на сервере и затем весь сетевой путь.
  • TCP true: соединение с этим адресом и портом установлено; дальше нужны кластер, рабочий процесс и протокол 1С.
  • Проверка выполнена с другого компьютера: она не доказывает доступность с проблемного.

По документации Test-NetConnection это диагностическая проверка соединения. Она не входит в информационную базу и не проверяет лицензию.

Шаг 4. Windows: найдите именно работающую службу и её параметры

На сервере откройте services.msc. Найдите агент 1С, посмотрите состояние и свойства: путь к исполняемому файлу, параметры запуска и учётную запись. После обновлений рядом могут остаться службы разных версий.

$Srv1CServices = Get-CimInstance Win32_Service |
    Where-Object { $_.PathName -match 'ragent\.exe' }
$Srv1CServices | Select-Object Name, DisplayName, State, StartMode,
    StartName, ProcessId, PathName | Format-List

Get-CimInstance Win32_Process |
    Where-Object { $_.Name -in @('ragent.exe','rmngr.exe','rphost.exe') } |
    Select-Object Name, ProcessId, ExecutablePath, CommandLine

В PowerShell команда Get-CimInstance читает объекты CIM. Поля Win32_Service помогают сопоставить службу, PID и путь. Для полного вывода могут понадобиться права администратора.

  • State: Running не доказывает исправность всех процессов кластера.
  • PathName: фактическая версия каталога bin и параметры службы.
  • Параметры: порт агента, порт кластера, диапазон процессов и каталог данных — сверить с паспортом.
  • StartName: правильная учётная запись, её права на служебные и временные каталоги.

Не запускайте второй агент вручную на тех же портах и с тем же каталогом данных. Не меняйте службу на LocalSystem в качестве универсального «лечения прав».

Шаг 5. Сопоставьте порт, адрес прослушивания и PID

В повышенной PowerShell-сессии сервера посмотрите фактически слушающие сокеты. Пример фильтрует типовые значения; при нестандартной схеме замените диапазон.

$Srv1CListeners = Get-NetTCPConnection -State Listen |
    Where-Object {
        ($_.LocalPort -in @(1540,1541,1545)) -or
        ($_.LocalPort -ge 1560 -and $_.LocalPort -le 1591)
    }
$Srv1CListeners | Select-Object LocalAddress, LocalPort, OwningProcess
$Srv1CListeners.OwningProcess | Sort-Object -Unique |
    ForEach-Object { Get-Process -Id $_ -ErrorAction SilentlyContinue } |
    Select-Object Id, ProcessName, Path

Если 1541 не слушается, открытие firewall не создаст сервис. Если порт занят другим процессом, надо устранить конфликт по плану изменения, а не завершать неизвестный PID. Адрес 127.0.0.1 допускает только локальное подключение; wildcard и IPv6-прослушивание требуют проверки фактической сетевой модели.

Не все порты диапазона рабочих процессов обязаны одновременно слушаться. Нужны реальные адрес и порт процесса, обслуживающего нужную базу. Вывод может меняться при перераспределении процессов. Основание команды — Get-NetTCPConnection.

Linux: сначала найдите unit, затем смотрите состояние и журнал

Имя systemd-unit зависит от дистрибутива, версии и способа установки. Не подставляйте первое найденное имя из чужой инструкции.

systemctl list-units --all --type=service --no-pager | grep -Ei '1c|srv1cv8|ragent'
systemctl list-unit-files --type=service --no-pager | grep -Ei '1c|srv1cv8|ragent'

# Ввести точное имя найденной службы
read -r -p 'Unit сервера 1С: ' UNIT_1C
systemctl status "$UNIT_1C" --no-pager -l
systemctl show "$UNIT_1C" -p ExecStart -p User -p Group -p FragmentPath
journalctl -u "$UNIT_1C" --since '30 minutes ago' --no-pager -n 200

sudo ss -lntp
ps -eo pid,user,args | grep -E '[r]agent|[r]mngr|[r]phost'
df -h
df -i

Сопоставьте ExecStart, пользователя, параметры, порты и сообщения вокруг времени ошибки. Проверьте место и inode, доступ к каталогам, отсутствующий mount и ограничения безопасности ОС. Не отключайте SELinux/AppArmor целиком: ищите конкретный запрет и корректное правило.

У systemctl status ненулевой код может означать неактивное состояние; это полезный результат диагностики. Некоторые журналы доступны только с дополнительными правами. Если приложение запускается вне systemd, найдите его реальный механизм запуска, а не создавайте параллельную службу.

Шаг 6. Firewall и VPN: проверьте весь путь в обе стороны

Дерево проверки: слушает ли сервер, доступен ли TCP с клиента, доступен ли рабочий процесс, открывается ли база
Каждый положительный результат подтверждает только свой этап. Следующий шаг выбирают по наблюдению.
  • Клиент → адрес кластера и его порт.
  • Клиент → фактический узел и порт рабочего процесса.
  • Межсерверные соединения кластера → по утверждённой схеме.
  • Сервер 1С → фактический endpoint СУБД.
  • Администратор → агент/RAS только из разрешённого сегмента.

На Windows проверьте активный сетевой профиль и результирующие правила:

Get-NetConnectionProfile
Get-NetFirewallRule -PolicyStore ActiveStore -Enabled True -Direction Inbound |
    Where-Object { $_.DisplayName -match '1[CС]|1cv8' } |
    Select-Object DisplayName, Action, Profile, PolicyStoreSourceType

Фильтр по названию — быстрый поиск, не полный аудит. Правило может называться иначе; посмотрите также адреса, программы и фильтры портов, GPO и endpoint-защиту. Вывод Get-NetFirewallRule не показывает автоматически все решения промежуточных firewall.

Если на сервере есть listener, а клиент не подключается, сравните локальную проверку с удалённой, маршрут туда и обратно, ACL VLAN, VPN и наблюдение пакетов. Не используйте отключение всех защит как постоянное исправление. Временное узкое правило допустимо только как согласованный контролируемый эксперимент с последующим возвратом.

1541 доступен, но входа нет: проверьте адрес рабочего процесса

Откройте штатное средство администрирования кластера: MMC в Windows либо согласованный инструмент для вашей среды. В описании администрирования 1С показаны варианты управления. Для начального обследования ничего не создавайте и не удаляйте.

  1. Найдите правильный центральный сервер и кластер.
  2. Проверьте список информационных баз и точное имя нужной базы.
  3. Посмотрите рабочие серверы и активные рабочие процессы, их узлы и порты.
  4. Сопоставьте адрес из вложенного текста ошибки с реальной схемой.
  5. Проверьте разрешение и TCP этого узла с проблемного клиента.
# Подставить реальный узел и порт процесса, а не случайный порт диапазона
$WorkerNode1C = 'app1c-worker.corp.example.net'
$WorkerPort1C = [int](Read-Host 'Порт нужного рабочего процесса')
Resolve-DnsName -Name $WorkerNode1C
Test-NetConnection -ComputerName $WorkerNode1C -Port $WorkerPort1C -InformationLevel Detailed

Типичный сценарий после переноса: начальный адрес доступен, но для дальнейшего соединения используется имя узла, неизвестное клиенту VPN. Проверяйте реальные имена из кластера и сообщения ошибки, split-DNS и маршруты. Механическая замена Srvr на внешний IP не исправит все адреса внутри цепочки.

Не редактируйте реестр кластера текстовым редактором, чтобы «подправить имя». Адреса и состав меняют штатным способом после проверки влияния на сеансы и резервирования конфигурации.

RAC и RAS: отдельная диагностика администрирования

Если rac не подключается к 1545, это прежде всего проблема административного пути. Пользовательский сеанс может работать без запущенного RAS. И наоборот, доступность RAS не доказывает работоспособность входа в базу.

RAS должен соответствовать версии кластера; для rac действуют правила совместимости. Их описывает руководство администратора 1С 8.3.27, раздел 5.3.2. Для расследования используйте комплект установленной платформы и его справку:

# PowerShell: путь вводят по фактическому установленному комплекту
$Rac1C = Read-Host 'Полный путь к rac.exe'
& $Rac1C help
# Для дальнейших команд сверить синтаксис своей версии
Test-NetConnection -ComputerName 'admin1c.corp.example.net' -Port 1545

Не запускайте новый RAS вслепую на занятом порту и не передавайте административные пароли в скриншотах или переписке. Ошибка аутентификации администратора отличается от недоступного TCP. Получение списка кластера — административная проверка, а не тест пользовательского сеанса.

После обновления: проверьте фактически запущенные версии

Наличие нового каталога на диске не доказывает, что сервер работает из него. Путь службы, путь процесса и клиентский запуск могут указывать на разные комплекты.

  • Посмотрите PathName службы и ExecutablePath/CommandLine работающего процесса.
  • В клиенте зафиксируйте полную версию платформы, не только «8.3».
  • Проверьте, какую версию выбирает стартовое окно или явный ярлык.
  • Уточните версии MMC-компонентов, RAS и инструмента администрирования.
  • Сопоставьте время обновления с первым неуспешным входом.

Если вложенная ошибка прямо сообщает о различающихся версиях, разберите эту ветку отдельно. Не считайте каждую сетевую ошибку доказательством несовместимости. Массовое обновление клиентов без понимания запущенного серверного комплекта может расширить инцидент.

Общий порядок настройки разобран в статье о сервере 1С. Здесь задача — вернуть правильный маршрут и совместимое подключение, сохранив данные и параметры кластера.

Кластер найден, ошибка относится к СУБД: смените уровень диагностики

«Сервер 1С не обнаружен» и «невозможно соединиться с сервером баз данных» — разные точки отказа. Если в деталях названы PostgreSQL или SQL Server, проверяйте соединение именно с узла 1С, исполняющего запрос.

# На сервере 1С, не на пользовательском ПК
$DbNode1C = 'db1c.corp.example.net'
$DbPort1C = [int](Read-Host 'Фактический TCP-порт СУБД')
Resolve-DnsName -Name $DbNode1C
Test-NetConnection -ComputerName $DbNode1C -Port $DbPort1C
  • Для PostgreSQL типовое 5432 не отменяет проверки реального порта, listen_addresses, доступа и журнала.
  • Для SQL Server проверьте конкретный экземпляр и его порт; именованный экземпляр не обязан использовать 1433.
  • Успешный TCP не доказывает аутентификацию, наличие базы и её рабочее состояние.
  • Не открывайте СУБД всем клиентским подсетям ради исправления связи server → database.

Отдельно разберите отказ входа, восстановление базы после сбоя, заполнение диска и журналов, недоступность хранилища и ошибки TLS. Не сбрасывайте пароли и не запускайте repair по одному общему сообщению.

Шаг 7. Соберите события до перезапуска

На Windows проверьте системные события службы и ошибки приложения в интервале инцидента:

$IncidentSince1C = (Get-Date).AddMinutes(-30)
Get-WinEvent -FilterHashtable @{
    LogName='System'; StartTime=$IncidentSince1C
    ProviderName='Service Control Manager'
} -MaxEvents 80 | Select-Object TimeCreated, Id, LevelDisplayName, Message

Get-WinEvent -FilterHashtable @{
    LogName='Application'; StartTime=$IncidentSince1C
    Level=1,2,3
} -MaxEvents 100 | Select-Object TimeCreated, ProviderName, Id, Message

Синтаксис фильтрации — в Get-WinEvent. Отсутствие совпадений само по себе не доказывает отсутствие проблемы. На Linux используйте journal нужного unit, сообщения ядра и журнал приложения за тот же интервал.

Технологический журнал 1С помогает разбирать технологические ошибки и аварийные завершения. Настройте узкий сбор по задаче, ограничьте срок и объём, доступ к файлам и дампам. Не включайте бессрочно все события и полные дампы на заполненном диске.

Сопоставьте время ошибки, изменение PID, память, дисковые задержки, свободное место и сетевые события. Короткий успешный снимок после перезапуска не объясняет причину предыдущего падения.

Что означает результат, а чего он не доказывает

НаблюдениеДопустимый выводСледующий шаг
Имя даёт старый IPЕсть расхождение адресаПроверить DNS, VPN и источник записи
TCP false, на сервере нет listenerОжидаемый сервис не слушает этот endpointСлужба, параметры, порт, журнал запуска
Локально listener есть, удалённый TCP falseУдалённый путь не подтверждёнПривязка адреса, ACL, VPN и обратный маршрут
1541 true, порт рабочего процесса falseНачальный и рабочий маршруты отличаются по доступностиУзел процесса, DNS и точечные сетевые правила
Все TCP true, вход не работаетПроверка сети недостаточнаВерсии, протокол, база, СУБД и журнал

В Windows код 10061 обычно указывает на отказ соединения, 10060 — на тайм-аут. По одному коду нельзя назвать единственную причину: отказ может прийти от endpoint или промежуточного устройства, а тайм-аут — от фильтрации, маршрута или недоступности. Смысл кодов приведён в справочнике Winsock.

Четыре ситуации, близкие к реальной эксплуатации

1. Из офиса работает, из дома через VPN — нет

Сравнить DNS, выбранный интерфейс, адрес источника и доступность рабочего узла. Если DNS вернул внутреннее имя корректно, но маршрут к worker-подсети не передан в VPN, менять строку базы бесполезно. Исправление — согласованный маршрут и ACL, затем проверка входа именно с VPN-клиента.

2. После обновления служба есть, но не запускается

Проверить PathName/ExecStart, сохранность нужного bin, портовый конфликт, каталог данных, права и событие запуска. Не создавать пустой кластер вместо прежнего. Сначала установить, какой комплект должен обслуживать существующую систему.

3. 1541 доступен, но клиент упоминает другой сервер

Сверить рабочие серверы и процессы, имя из ошибки, его разрешение на клиенте и реальный порт. После миграции старое имя могло остаться в конфигурации либо в DNS. Исправление проводят штатным способом с учётом активных сеансов.

4. В одной базе вход невозможен, остальные работают

Сверить Ref, регистрацию базы, фактический worker и её СУБД. Общий перезапуск кластера затронет исправные базы и может не устранить причину. Проверять нужно ту зависимость, на которой отличается эта база.

Это учебные сценарии и порядок проверки, а не отчёты о выполненных клиентских ремонтах.

Исправление и контроль: одна причина — одно проверяемое изменение

  1. Запишите исходные настройки, время, симптом и результаты.
  2. Выберите изменение, которое объясняется наблюдениями: DNS, точечный маршрут, правило или параметры правильной службы.
  3. Сохраните необходимые конфигурации и определите возврат до изменения.
  4. Согласуйте влияние на пользователей и окно для перезапуска, если он необходим.
  5. Повторите исходный неуспешный сценарий с того же клиента.
  6. Проверьте реальный вход в нужную базу и контрольное действие владельца процесса.
  7. Уберите временные правила и проверьте наблюдение после исправления.

Не начинайте с удаления srvinfo, реестров кластера, баз или лицензий. Не завершайте все rphost, не выключайте firewall целиком и не перезапускайте СУБД «для верности». Эти действия меняют состояние системы, обрывают сеансы и могут усложнить восстановление.

Проблемы производительности после восстановления доступа — отдельная задача: почему тормозит 1С и как измерять причину.

Что приложить к заявке и как подтвердить результат

  • Полный текст ошибки, время с часовым поясом, нужная база и способ подключения.
  • Масштаб: один ПК, VPN-группа, одна база или все пользователи.
  • DNS-ответ, выбранный IP, исходный интерфейс и результат TCP.
  • Служба, полный путь версии, PID, listener и реальный worker endpoint.
  • События за интервал и последние изменения; секреты и лишние персональные данные убрать.
  • Что изменено, как вернуть настройки и кто принял итог.

Итог подтверждают последовательно: DNS → TCP → рабочий маршрут → сеанс 1С → нужная база → контрольная операция. Статус «порт открыт» не равен статусу «работа пользователя восстановлена».

Паспорт подключения и протокол диагностики

Паспорт подключения

Адреса, порты, версии, службы, рабочие узлы, СУБД и разрешённые сетевые направления.

Скачать паспорт · TXT

Протокол инцидента

Симптом, время, результаты проверок, изменение, возврат и приёмка пользователем.

Скачать протокол · TXT

Диагностика и сопровождение инфраструктуры 1С

ИТ-аутсорсинг

  • Поиск точки отказа без случайных изменений.
  • Сопровождение Windows/Linux, сети и СУБД.
  • Документирование и мониторинг связности.

Границы работ и влияние на пользователей согласуем заранее.

Обсудить проблему 1С

Облачные ресурсы

  • Подбор размещения серверов и баз.
  • Проектирование доступа через VPN.
  • Резервирование и восстановление.

Ресурсы, совместимость и стоимость определяем по вашей нагрузке.

Обсудить размещение 1С

Частые вопросы

Ping проходит. Почему 1С не видит сервер?

ICMP не проверяет порт кластера, рабочий процесс и вход в базу. Проверяйте цепочку по этапам.

1541 доступен. Значит, сеть исправна?

Подтверждён только этот endpoint. Сеансу может понадобиться другой узел и порт рабочего процесса.

Нужно открыть 1540–1591 всем пользователям?

Нет. Нужны фактические роли портов, назначенные диапазоны и ограниченные источники. Агент и административные службы не открывают всем по умолчанию.

Без RAS на 1545 пользователи не войдут?

RAS относится к отдельному пути администрирования. Его недоступность не равна недоступности обычного сеанса 1С.

Можно заменить имя сервера на IP?

Как сравнительная TCP-проверка это полезно. Постоянная замена не исправит недоступные имена рабочих серверов внутри цепочки и должна соответствовать архитектуре.

Можно удалить srvinfo, чтобы кластер создался заново?

Это не штатная начальная диагностика. Есть риск потери настроек и нарушения работы. Сначала сохранить состояние и выяснить конкретную причину.

Служба Running означает, что 1С исправна?

Нет. Нужны процессы, listener, рабочие узлы, СУБД и успешный пользовательский сценарий.

В статье приведены реальные выводы с сервера 1С?

Нет. Команды и схемы подготовлены для выполнения в вашей среде. Обложка концептуальная; реальное исправление и стендовые результаты не заявляются.