2010-08-10 8 views
46

Ich habe gesucht und nicht gefunden, welche Ports XMPP verwendet. Ich muss XMPP Server und Client implementieren und XML-Übertragung, Dateiübertragung und Streaming verwenden. Verwenden sie verschiedene Ports? Gibt es eine Möglichkeit, dass ich sie trotzdem benutzen kann, also muss ich den Netzwerkadministrator nicht belästigen? DankWelche Ports verwendet XMPP?

Antwort

83

Nach Wikipedia:

 
5222 TCP  XMPP client connection (RFC 6120)  Official 
5223 TCP  XMPP client connection over SSL   Unofficial 
5269 TCP  XMPP server connection (RFC 6120)  Official 
5298 TCP UDP XMPP JEP-0174: Link-Local Messaging/ Official 
      XEP-0174: Serverless Messaging 
8010 TCP  XMPP File transfers      Unofficial  

Die Portnummern sind in RFC 6120 § 14.7 definiert.

Sie sagen, Sie haben nach diesen Informationen gesucht, konnten sie aber nicht finden. Ich habe das gefunden, indem ich nach XMPP port gesucht habe. Die Wikipedia-Seite, die ich oben zitiert habe, ist derzeit das erste Ergebnis dieser Suche, und der RFC ist auf der ersten Seite der Suchergebnisse.

+0

Es gibt eine Reihe weiterer Kommentare zu empfohlenen Port # s im RFC in den Abschnitten 2.3, 2.4 und 2.5 (http://www.ietf.org/rfc/rfc3920.txt) –

4

Nach Extensible Messaging and Presence Protocol (Wikipedia), der Standard-TCP-Port für den Server 5222.

Der Kunde vermutlich die gleichen Ports wie das Messaging-Protokoll verwenden würde, kann aber auch verwenden http (Port 80) und HTTPS (Port 443) für die Nachrichtenzustellung. Diese haben den Vorteil, dass sie für Benutzer hinter Firewalls funktionieren, sodass sich Ihr Netzwerkadministrator nicht einmischen muss.

+2

Aber für die Dateiübertragung I Brauchst du noch einen Port, oder? – fredcrs

3

Die erforderlichen Anschlüsse unterscheiden sich für Ihren XMPP-Server und alle XMPP-Clients. Die meisten "modernen" XMPP Server folgen den definierten IANA Ports für Server-to-Server 5269 und für Client-to-Server 5222. Alle zusätzlichen Ports hängen davon ab, welche Funktionen Sie auf dem Server aktivieren, dh wenn Sie BOSH anbieten, müssen Sie dies möglicherweise tun Öffnen Sie Port 80.

Dateiübertragung hängt stark sowohl von den Clients, die Sie verwenden, als auch vom Server ab, welcher Port verwendet wird, aber die meisten verhandeln auch die Verbindung über Ihre vorhandene XMPP-Client-zu-Server-Verbindung erforderlich Portöffnung wird Client-Seite (oder Proxy über den Port 80)

0

Die official ports (TCP: 5222 und TCP: 5269) aufgelistet sind in RFC 6120. im Gegensatz zu den Behauptungen eines previous answer, XEP-0174 does not specify a port. Daher könnte TCP: 5298 für Link-Local XMPP üblich sein, ist aber nicht offiziell.

Sie können jedoch andere als die reservierten Ports verwenden: Sie können Ihren DNS-SRV-Aufzeichnungspunkt für jeden beliebigen Computer und Port einrichten.

File transfers (XEP-0234) werden in diesen Tagen mit Jingle (XEP-0166) behandelt. Das gleiche gilt für RTP sessions (XEP-0167). Sie geben jedoch keine Ports an, da Jingle die Erstellung des Datenstroms zwischen den XMPP-Clients aushandelt, aber die eigentlichen Daten dann durch andere Mittel (z. B. RTP) über diesen Stream übertragen werden (dh normalerweise nicht über den XMPP-Server) In-Band-Transfers sind möglich). Achten Sie darauf, dass Jingle aus mehreren XEPs besteht, schauen Sie sich also die gesamte Liste der XMPP extensions an.