[OpenSIPS-Users] Why does OpenSIPS replies "408" when getting "ICMP udp port XXXX unreachable" ?

Bogdan-Andrei Iancu bogdan at voice-system.ro
Thu Feb 12 08:14:45 CET 2009


Hi Inaki,

OpenSIPS transport stack has no support for dealing with ICMP error. 
Mainly because of two reasons:
    - catching ICMP error differs from OS to OS, hard to get a common 
ground
    - you need to keep state at transport level; mapping between 
transactions/messages and destination.

Regards,
Bogdan

Iñaki Baz Castillo wrote:
> Hi, if OpenSIPS routes a request via UDP to SERVER_IP:SERVER_PORT and receives 
> a ICMP error:
>
>   ICMP SERVER_IP udp port SERVER_PORT unreachable
>
> then OpenSIPS remains retransmiting the request (until transaction timer 
> expires and so). After that it generates a 408 response.
>
> I wonder why. Some firewalls are configured to drop UDP requests, so in case 
> there is no application listening in UDP 5060, then the request is dropped 
> and OpenSIPS retransmissions are justified.
>
> But if the server replies an ICMP error, OpenSIPS should understand that the 
> destination is unreachable (it's nothing listening in that port), so IMHO 
> OpenSIPS whould generate an internal "network error" that would become 
> a "503" according to RFC 3261, o a "477" according to the OpenSIPS behaviour 
> when failing sending a request via TCP.
>
> Am I wrong?
>
>
>   




More information about the Users mailing list