Delphi ve C++ Builder için STUN Sunucu Bileşeni | eSeGeCe

STUN Sunucusu

Delphi ile kendi STUN (RFC 8489) sunucunuzu çalıştırın. Binding isteklerini standart XOR-MAPPED-ADDRESS yanıtıyla karşılayın — özel ağlarda, şirket içi dağıtımlarda ve ICE başlangıç işleminde faydalıdır.

TsgcSTUNServer

Türü belirli bir RFC 8489 STUN sunucusu — Binding / Indication mesajlarını işler, XOR-MAPPED-ADDRESS ile yanıt verir, uzun vadeli kimlik doğrulama için isteğe bağlı olarak MESSAGE-INTEGRITY zorunlu kılar.

Bileşen sınıfı

TsgcSTUNServer

Protokol

STUN (RFC 8489)

Platformlar

Windows, macOS, Linux, iOS, Android

Sürüm

Enterprise

Bırakın, portu ayarlayın, bir STUN uç noktanız olsun

Port (varsayılan 3478) ve Active := True ayarlayın — sunucunuz artık Binding isteklerini standart RFC 8489 XOR-MAPPED-ADDRESS yanıtıyla karşılar.

uses
  sgcP2P;

var
  STUNServer: TsgcSTUNServer;
begin
  STUNServer := TsgcSTUNServer.Create(nil);
  STUNServer.Port := 3478;

  // isteğe bağlı: uzun vadeli kimlik bilgileri
  STUNServer.Authentication.Enabled  := True;
  STUNServer.Authentication.Realm    := 'example.com';
  STUNServer.OnSTUNAuthenticate := procedure(Sender: TObject;
    const aUsername: string; var aPassword: string;
    var Accept: Boolean)
  begin
    aPassword := LookupPassword(aUsername);
    Accept    := aPassword <> '';
  end;

  STUNServer.Active := True;
end;
// uses: sgcP2P
TsgcSTUNServer *STUNServer = new TsgcSTUNServer(this);
STUNServer->Port = 3478;
STUNServer->Active = true;

İçinde neler var

Kendi barındırdığınız bir STUN sunucusu — şirket içi WebRTC dağıtımları ve özel bulut testleri için idealdir.

Binding isteği işleyicisi

Gelen Binding istekleri XOR-MAPPED-ADDRESS, MAPPED-ADDRESS (eski) ve FINGERPRINT ile karşılanır — standart RFC 8489 yanıt biçimine uygundur.

Uzun vadeli / kısa vadeli kimlik doğrulama

MESSAGE-INTEGRITY gerektirmek için Authentication.Enabled seçeneğini açın. OnSTUNAuthenticate istekteki kullanıcı adını sunar; böylece deponuzdan eşleşen parolayı döndürürsünüz.

IP başına hız sınırı

Gelen STUN isteklerini kaynak IP başına kısıtlamak için TsgcWSRateLimiter ile birleştirin — amplifikasyon suistimaline karşı faydalı bir korumadır.

IPv4 / IPv6

IPVersion üzerinden her iki aileye veya dual-stack yapısına bağlanın. XOR-MAPPED-ADDRESS yanıtı, gelen taşımanın ailesini kullanır.

TCP üzerinden TLS (RFC 8489 §5)

STUN-over-TLS varyantı için temel TCP dinleyiciyi SSL seçenekleriyle yapılandırın — UDP ağ çıkışında engellendiğinde faydalıdır.

Tanılama

OnSTUNRequest / OnSTUNResponse, Method, MessageType ve ayrıştırılmış öznitelik listesi dahil her işlemi günlüğe kaydeder — dağıtımlarda hata ayıklamak için harikadır.

Spesifikasyonlar ve referanslar

Bu bileşenin uyguladığı protokol için yetkili kaynaklar.

Belgeler ve Demolar

Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.

Çevrimiçi Yardım — TsgcSTUNServer Bu bileşen için tam özellik, metot ve olay referansı.
Demo Projesi — Demos\35.P2P\02.STUN Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir — denemeyi aşağıdan indirin.
Teknik Belge (PDF) Özellikler, hızlı başlangıç, Delphi ve C++ Builder için kod örnekleri ve birincil kaynak referansları — yalnızca bu bileşen.
Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz.

STUN Sunucusu Sıkça Sorulan Sorular

Delphi ve C++ Builder'da kendi barındırdığınız bir STUN sunucusu çalıştırma hakkında sık sorulan sorular.

Bir TsgcSTUNServer bileşeni ekleyin, Port ayarlayın (varsayılan 3478) ve Active := True yapın. Sunucu ardından gelen Binding isteklerini kanonik XOR-MAPPED-ADDRESS yanıtıyla yanıtlar. İsteğe bağlı olarak Authentication etkinleştirin ve uzun vadeli kimlik bilgileriyle MESSAGE-INTEGRITY gerektirmek için OnSTUNAuthenticate olayını işleyin.
STUN'u RFC 8489'a göre uygular; Binding ve Indication mesajlarını işler ve XOR-MAPPED-ADDRESS, eski MAPPED-ADDRESS ve FINGERPRINT ile yanıt verir. IPv4 ve IPv6'yı, isteğe bağlı STUN-over-TLS'yi destekler ve NAT davranışı keşfi için RFC 5780'e başvurur.
Hayır. TsgcSTUNServer, doğrudan kendi Delphi veya C++ Builder uygulamanıza gömdüğünüz, kendi barındırdığınız bir STUN sunucusudur, bu nedenle ayrı bir coturn örneği dağıtmanıza ve işletmenize gerek yoktur. Özel ağlar, şirket içi WebRTC dağıtımları ve kendi kontrolünüz altında ICE önyüklemesi için idealdir.
STUN sunucusu, sgcWebSockets Enterprise sürümünün bir parçasıdır ve Delphi 7'den en yeni Delphi sürümüne ve eşleşen C++ Builder sürümlerine kadar Windows, macOS, Linux, iOS ve Android üzerinde destek sağlar. Kendi projenizde bir STUN uç noktası kurmak için ücretsiz denemeyi indirin.

Kendi STUN Sunucunuzu Çalıştırmaya Hazır mısınız?

Ücretsiz denemeyi indirin ve Delphi ile bir STUN uç noktası ayağa kaldırın.