- industrial ethernet port mirroring SPAN, Modbus TCP MBAP header exception code, OPC UA BadCertificateInvalid diagnosis, OPC UA packet analysis Wireshark, Schneider Modicon M580 OPC UA session, TCP retransmission DCS network fault, Wireshark Modbus TCP DCS troubleshooting, Yokogawa CENTUM VP Modbus TCP timeout
Endüstriyel Ethernet Arıza Teşhisi: DCS Ağlarında Modbus TCP ve OPC UA için Wireshark Derinlemesine İnceleme

S: Paket Seviyesinde Analiz DCS Ağlarında Neden Önemlidir?
Endüstriyel ethernet, proses kontrolünün can damarıdır. Modbus TCP ve OPC UA en yaygın protokollerdendir — iletişim kesildiğinde üretim durur. Yokogawa CENTUM VP DCS sistemleri dahili mesajlaşma için Vnet/IP kullanır, ancak birçok saha cihazı hâlâ port 502 üzerinden Modbus TCP konuşur. Yokogawa VI701 Vnet/IP Arayüz Kartı, CENTUM VP FCS düğümleri için yüksek hızlı Vnet/IP omurga bağlantısı sağlar; Schneider TCSESM083F23F0 Endüstriyel Yönetilen Switch ise DCS ağlarında Wireshark paket yakalama için gereken SPAN port yansıtma özelliğini sunar. Prosoft PLX32-EIP-MBTCP EtherNet/IP’den Modbus TCP’ye Gateway, EtherNet/IP DCS sistemleri ile Modbus TCP saha cihazları arasında yaygın bir protokol köprüsüdür — bu rehberin ele aldığı zaman aşımı hatalarının sık kaynağıdır.
S: Bilmem Gereken Modbus TCP Çerçeve Yapısı Nedir?
Modbus TCP, veriyi 7 baytlık MBAP başlığı ve PDU ile sarar. Başlık, işlem kimliği, protokol kimliği (her zaman 0x0000), uzunluk alanı ve birim tanımlayıcı içerir. Normal bir FC 03 okuma isteği onaltılık olarak: 00 01 00 00 00 06 01 03 00 00 00 0A. Yaygın fonksiyon kodları: 0x03 tutma kayıtlarını okur, 0x06 tek kayıt yazar, 0x10 birden fazla kayıt yazar.
Slave istisna yanıtı döndürdüğünde, fonksiyon kodunun 7. biti set edilir (örneğin, 0x83 = FC 03’te hata). İstisna kodları: 01 = yasak fonksiyon, 02 = yasak veri adresi, 03 = yasak veri değeri. Bu kodlar Wireshark’ta ilk teşhis ipucunuzdur.
S: OPC UA Binary Protokolü Wireshark Analizi İçin Nasıl Çalışır?
OPC UA varsayılan olarak port 4840’ı kullanır. Bir istemci Hello mesajı gönderir, sunucu Acknowledge ile yanıt verir, ardından istemci güvenli kanal açar, oturum oluşturur ve etkinleştirir. Yokogawa ortamlarında OPC UA sunucuları genellikle güvenlik duvarlarının arkasında çalışır — port 4840’ın açık ve erişilebilir olduğundan emin olun. Şifreli oturumlar için, Edit → Preferences → Protocols → OPC UA altında sunucu özel anahtarını PEM formatında yükleyerek kimlik doğrulama hataları ve oturum zaman aşımı durumlarının gerçek zamanlı şifresini çözebilirsiniz.
S: Port Yansıtma ve Wireshark Yakalama Nasıl Kurulur?
- Adım 1: Endüstriyel switch’inizin CLI veya web arayüzüne (Hirschmann, Moxa veya Cisco IE serisi) giriş yapın. PLC veya DCS kontrol cihazına bağlı kaynak portu belirleyin.
- Adım 2: SPAN yansıtmasını yapılandırın: kaynak portu PLC Ethernet portu, hedef portu ise teşhis dizüstü bilgisayarınız olarak ayarlayın. İki yönlü trafik yansıtmayı etkinleştirin.
-
Adım 3: Wireshark’ı açın, yansıtılan arayüzü seçin ve yakalama filtresi olarak
tcp port 502 or tcp port 4840girin. Yakalamayı başlatın. - Adım 4: Hata durumunu yeniden oluşturun. Trafiğin en az 30 saniye akmasına izin verin.
-
Adım 5: Yakalamayı durdurun ve .pcapng olarak kaydedin. Görüntü filtreleri uygulayın: başlangıç için
modbusveyaopcuakullanın, ardından anormallikleri izole etmek içintcp.analysis.retransmissionfiltresini uygulayın.
S: Vaka Çalışması — Yokogawa CENTUM VP Modbus TCP Zaman Aşımı?
Bir petrokimya tesisi Modbus TCP bağlantılarında aralıklı veri kaybı bildirdi. CENTUM VP DCS, 24 saha vericisini her 500 ms’de bir sorguluyordu, ancak tarama listesinden bazen üç veya dört verici düşüyordu. Hirschmann switch’te port yansıtma kurulduktan ve iki saatlik trafik yakalandıktan sonra, tcp.analysis.retransmission ve Modbus istisna yanıtları filtrelendiğinde belirli slave adreslerine çok sayıda TCP yeniden iletimi tespit edildi.
Kök neden: Bir RS-485’den Ethernet’e gateway, yüksek yük altında 16’dan fazla slave aynı anda yanıt verdiğinde paketleri düşüren bir firmware hatasına sahipti. Çözüm: gateway firmware güncellendi ve sorgu grubu boyutu gateway başına 12 cihaza düşürüldü.
S: Vaka Çalışması — Schneider Modicon M580 OPC UA Kimlik Doğrulama Hatası?
Bir su arıtma tesisinin SCADA istemcisi, sertifika yenilemesinden sonra OPC UA oturumları kuramıyordu. Wireshark, BadCertificateInvalid durum kodlu OpenSecureChannel yanıtları gösterdi. Ara CA sertifikası istemci güven deposunda eksikti. Ara CA eklendikten ve OPC UA istemcisi yeniden başlatıldıktan sonra oturumlar başarıyla etkinleşti.
İkinci bir sorun ortaya çıktı: OPC UA Publish isteklerine 10 saniyeye kadar yanıt gelmiyordu. opcua.service == Publish filtresi uygulandığında TCP sıfır pencere bildirimleri görüldü — Modicon kontrolör CPU kullanımı %95’e ulaşmıştı. Mantık ikincil kontrolöre devredilince abonelik gecikmesi 200 ms’nin altına düştü.
Ana İpuçları Nelerdir?
- Üretim trafiği taşıyan porta asla trafik yansıtmayın — bu yayın döngüsü oluşturur.
- Yakalamaya başlamadan önce mutlaka bir filtre ayarlayın. Yoğun DCS ağında filtresiz yakalama 1 GB tamponu 60 saniyeden kısa sürede doldurur.
- Tam istemci-sunucu konuşmasını yeniden oluşturmak için Follow TCP Stream özelliğini kullanın.
- Anormal çerçeveleri hex dökümü olarak dışa aktarın ve tedarikçi teknik desteği için zaman damgaları ve arayüz bilgilerini ekleyin.
- Trend analizi için .pcapng dosyalarını açıklayıcı isimlerle (tarih, kontrolör modeli, hata açıklaması) arşivleyin.
Yazar: Zhang Minghui, PLC, DCS ve kontrol sistemlerinde 10 yılı aşkın deneyime sahip bir endüstriyel otomasyon mühendisidir.
