Skip to main content

Module nat

Module nat 

Source
Expand description

received and rport — what makes SIP work through a NAT (RFC 3261 §18.2.1, RFC 3581).

A client behind a NAT puts its private address in the Via sent-by, because that is all it knows. A response sent there goes nowhere. The server therefore records where the request actually came from, and the client’s NAT pinhole is still open on that address and port.

The edits here are surgical: only the topmost hop is touched, and within it only the two parameters in question. The hops below belong to other elements and go back out exactly as they arrived.

Functions§

apply_received_and_rport
Add received and, if asked, rport to the topmost Via of a received request.