Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic TCP Contact falscher Port, alias Option (RFC 5923) (Read 1933 times)
Eik
YaBB Newbies
*
Offline


Phoner is great!

Posts: 4
Joined: 18. Jan 2024
TCP Contact falscher Port, alias Option (RFC 5923)
18. Jan 2024 at 15:07
Print Post  
Hallo,

mir ist aufgefallen, dass bei der Nutzung von TCP der Port im Contact der Ephemeral Port der Verbindung ist. Schaltet man jedoch die alias Option ein, dann wird dort der konfigurierte SIP-Port angegeben.

Beispiel mit 5070 als "lokalem Port".

Ohne alias:
Via: SIP/2.0/TCP 192.168.5.65:59461;branch=z9hG4bK80df9b6077b4ee11be2eb72d11da2360;rport
Contact: <sip:myuser@192.168.5.65:59461;transport=tcp>;+sip.instance="<urn:uuid:8035DA89-E8B2-EE11-9777-875859AAD6AF>"

Mit alias:
Via: SIP/2.0/TCP 192.168.5.65:5070;branch=z9hG4bK80acf28777b4ee11be36b72d11da2360;rport;alias
Contact: <sip:myuser@192.168.5.65:5070;transport=tcp>;+sip.instance="<urn:uuid:8035DA89-E8B2-EE11-9777-875859AAD6AF>"

Das ist eigentlich das genau entgegengesetzte Verhalten von der RFC 5923 Connection Reuse in the Session Initiation Protocol (SIP).

Das alias bedeutet ja, dass die vom Client aufgebaute TCP Verbindung (idR. beim REGISTER) für alle folgenden SIP-Nachrichten auch vom SBC/UAS benutzt werden soll. Es wird somit vom SBC aktiv keine neue TCP Verbindung in Richtung Phoner aufgebaut.

Wenn das alias fehlt darf der SBC allerdings auch für neue Transaktionen innerhalb des laufenden Dialogs und erst recht für neue Dialoge jederzeit selbst eine Verbindung zum Client aufbauen. Es wird dann das Binding aus dem Contact genutzt. Deshalb muss in diesem Fall unbedingt der lokale Port im Contact angegeben werden und nicht der ephemeral port.

Das Verhalten von Phoner ist also wie ich es verstehe zur Zeit genau "verkehrt herum". Am besten sollte im Contact sowieso immer der lokale Port oder im Fall von STUN u.ä. der geforwardete Port stehen. Der ephemeral Port hat meiner Meinung nach da nichts zu suchen. Ein namhafter TK-Anlagenhersteller hat dies auch auf meinen Hinweis hin in der Firmware geändert. Die nutzte vorher auch immer den ephemeral Port im Contact.
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11550
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #1 - 18. Jan 2024 at 15:42
Print Post  
Das kann durchaus sein. Ich schaue mir das gerne noch einmal an.
Welcher namhafte TK-Anlagenhersteller war das denn?
  
Back to top
WWW  
IP Logged
 
Eik
YaBB Newbies
*
Offline


Phoner is great!

Posts: 4
Joined: 18. Jan 2024
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #2 - 19. Jan 2024 at 08:06
Print Post  
Das möchte ich aus betrieblichen Gründen hier nicht öffentlich erwähnen. Die Firmware ist auch noch Beta, wird aber in diesem Quartal noch released. Es ist ein Hersteller mit Sitz in der EU und dem Anfangsbuchstaben A, soviel lässt sich verraten Grin Hier war es auch so, dass es kein `alias` gibt und immer der ephemeral Port angegeben wurde bei TCP und TLS. Das führt im Zusammenspiel mit unseren SBCs genau zu dem oben beschriebenen Problem der Nichterreichbarkeit.

Wenn ich die RFCs richtig deute, dann sollte der ephemeral Port grundsätzlich niemals im Via oder Contact angegeben werden, ganz unabhängig von einem `alias`, siehe RFC 5923 Abschnitt 8.2. Server Behavior, insb. Absatz 5 & 6.
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11550
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #3 - 19. Jan 2024 at 11:11
Print Post  
Kennst du das Telekom-Dokument TR119? Dort steht folgendes:
Quote:

9.5 TCP Connection Re-Use
If a SIP UA with a public IP address establishes a TCP connection on an ephemeral TCP port (e.g. 12345) and sends
an INVITE where the Contact header field is not filled with its IP address and the ephemeral port but e.g. 5060,
Requests will not be sent in the existing TCP session but the P-CSCF will establish a new TCP session.
  
Back to top
WWW  
IP Logged
 
Eik
YaBB Newbies
*
Offline


Phoner is great!

Posts: 4
Joined: 18. Jan 2024
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #4 - 19. Jan 2024 at 15:38
Print Post  
Nein, das Dokument kannte ich in der Tat nicht. Vielen Dank für den Hinweis!

Es widerspricht allerdings auch nicht wirklich dem o.g. Ansatz, da die DTAG anscheinend bei diesem Produkt nicht Connection Re-use nach RFC 5923 macht, also mit dem `alias` Parameter im Via. Der Parameter wird in dem Dokument nicht erwähnt. Der Ansatz der DTAG macht allerdings als alternativer Ansatz auch Sinn.

Anscheinend wird Connection-Reuse von unterschiedlichen SBC Herstellern auch unterschiedlich interpretiert. RFCs werden ja auch oftmals eher als Empfehlungen anstatt als Anweisungen gesehen  Grin Vielleicht macht es Sinn, eine weitere Option einzubauen, um beiden Fällen gerecht zu werden?
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11550
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #5 - 20. Jan 2024 at 11:05
Print Post  
In der aktuellen Beta-Version sind nun 2 Optionen, die unabhängig voneinander sind.
  
Back to top
WWW  
IP Logged
 
Eik
YaBB Newbies
*
Offline


Phoner is great!

Posts: 4
Joined: 18. Jan 2024
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #6 - 22. Jan 2024 at 07:49
Print Post  
Wow, das ging schnell!  Cheesy Vielen Dank!

Sieht für mich nach den erstens Tests sehr gut aus. "Ephemeral port" scheint ja auch die Standard-Einstellung zu sein, so dass erstmal keine Änderung zu vorherigen Versionen da ist. 

Noch einmal herzlichen Dank für die tolle und schnelle Hilfe!
  
Back to top
 
IP Logged
 
Phoner Admin
YaBB Administrator
*****
Offline



Posts: 11550
Location: Germany
Joined: 12. Oct 2003
Gender: Male
Re: TCP Contact falscher Port, alias Option (RFC 5923)
Reply #7 - 22. Jan 2024 at 11:12
Print Post  
Dir vielen Dank für die Rückmeldung!
  
Back to top
WWW  
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint