Skip to content
EN

Порт 20000 — DNP3

Коротко:

TCP/20000 (и UDP) — DNP3 (Distributed Network Protocol), промышленный протокол для SCADA в энергетике, газоснабжении, водоканалах. Стандарт IEEE 1815. Более сложный чем Modbus — event-driven, unsolicited responses, time-sync. Secure Authentication v5 (IEC 62351) добавляет HMAC, но без encryption — нужен TLS tunnel.

Ниже: подробности, пример, связанные, FAQ.

Проверить доступность и порты →

Детали

  • IEEE 1815 стандарт (2012 updated)
  • Unsolicited responses: RTU сам уведомляет master о событии
  • Secure Authentication v5: HMAC-SHA256, challenge-response
  • IEC 62351-3 — TLS wrapper для DNP3
  • Используется: PG&E, DTEK, Enel, ФСК ЕЭС

Пример

# Scan DNP3
$ nmap -p 20000 --script dnp3-info 192.168.1.10

# Python (using dnp3 library)
from pydnp3 import opendnp3
master = opendnp3.DNP3Manager(1)
channel = master.AddTCPClient("main", [opendnp3.IPEndpoint("10.0.1.1", 20000)])

Связанные

Применение DNP3 в различных отраслях

DNP3 (Distributed Network Protocol) применяется в различных отраслях, включая энергетику, газоснабжение и водоканалы. Этот протокол обеспечивает связь между устройствами и системами управления, позволяя им обмениваться данными в реальном времени.

В энергетике DNP3 используется для мониторинга и управления электростанциями, подстанциями и линиями электропередач. Это позволяет операторам быстро реагировать на изменения в сети и предотвращать аварийные ситуации.

В газоснабжении DNP3 применяется для контроля за газопроводами, компрессорными станциями и другими объектами. Это обеспечивает надёжную и безопасную работу системы газоснабжения.

В водоканалах DNP3 используется для управления насосными станциями, резервуарами и другими элементами системы водоснабжения. Это помогает оптимизировать работу системы и обеспечить бесперебойное водоснабжение.

Кроме того, DNP3 может использоваться в других отраслях, где требуется надёжная и безопасная связь между устройствами. Например, в транспортной инфраструктуре, где протокол может применяться для управления железнодорожными и автомобильными системами.

Настройка DNP3 на сервере

Для настройки DNP3 на сервере необходимо выполнить следующие шаги:

Шаг 1: установить программное обеспечение, поддерживающее DNP3.

Шаг 2: настроить параметры сети, включая IP-адрес и порт (например, TCP/20000).

Шаг 3: настроить параметры безопасности, включая аутентификацию и шифрование.

Пример конфигурации:

server {

listen 20000;

server_name example.com;

location / {

proxy_pass http://dnp3-server;

}

}

Этот пример показывает, как настроить сервер для прослушивания порта 20000 и перенаправления запросов на сервер DNP3.

Сравнение DNP3 с другими протоколами

DNP3 отличается от других промышленных протоколов, таких как Modbus, своей сложностью и функциональностью.

Modbus является более простым протоколом, который используется для обмена данными между устройствами в промышленных сетях. Он не поддерживает такие функции, как event-driven обработка и unsolicited responses.

DNP3, с другой стороны, обеспечивает более сложные возможности, такие как синхронизация времени и поддержка event-driven обработки. Это делает его более подходящим для использования в сложных системах управления.

Кроме того, DNP3 поддерживает Secure Authentication v5 (IEC 62351), которая добавляет HMAC для аутентификации, но не обеспечивает шифрование. Для обеспечения безопасности данных при использовании DNP3 рекомендуется использовать TLS-туннель.

Другие протоколы, такие как IEC 60870-5, также могут использоваться в промышленных сетях, но они имеют свои особенности и ограничения. Например, IEC 60870-5 не поддерживает event-driven обработку и может быть менее подходящим для некоторых приложений.

Больше по теме

Источники

Часто задаваемые вопросы

DNP3 vs Modbus?

DNP3 — event-driven, с приоритизацией и time-sync. Для utility-grade. Modbus — простой poll-only.

Secure Authentication обязательна?

В US NERC CIP — yes. В РФ — зависит от регулятора. Always-on TLS — лучшая практика 2026.

Есть open-source stack?

opendnp3 (c++), pydnp3 (python bindings), dnp3-rs (Rust, Stepfunc).

Запустить инструмент, который описан в этой статье

Бесплатный тариф — 10 мониторов, проверки каждые 5 мин, без карты. Платные тарифы — интервал от 1 минуты и проверки из нескольких регионов.