Bug ID 1324093: SIP ALG does not overwrite VIA parameter: 'Received'

Last Modified: Mar 12, 2025

Affected Product(s):
BIG-IP TMOS(all modules)

Known Affected Versions:
14.1.0, 14.1.0.1, 14.1.0.2, 14.1.0.3, 14.1.0.5, 14.1.0.6, 14.1.2, 14.1.2.1, 14.1.2.2, 14.1.2.3, 14.1.2.4, 14.1.2.5, 14.1.2.6, 14.1.2.7, 14.1.2.8, 14.1.3, 14.1.3.1, 14.1.4, 14.1.4.1, 14.1.4.2, 14.1.4.3, 14.1.4.4, 14.1.4.5, 14.1.4.6, 14.1.5, 14.1.5.1, 14.1.5.2, 14.1.5.3, 14.1.5.4, 14.1.5.6, 15.1.0, 15.1.0.1, 15.1.0.2, 15.1.0.3, 15.1.0.4, 15.1.0.5, 15.1.1, 15.1.2, 15.1.2.1, 15.1.3, 15.1.3.1, 15.1.4, 15.1.4.1, 15.1.5, 15.1.5.1, 15.1.6, 15.1.6.1, 15.1.7, 15.1.8, 15.1.8.1, 15.1.8.2, 15.1.9, 15.1.9.1, 15.1.10, 15.1.10.2, 15.1.10.3, 15.1.10.4, 15.1.10.5, 15.1.10.6, 16.1.0, 16.1.1, 16.1.2, 16.1.2.1, 16.1.2.2, 16.1.3, 16.1.3.1, 16.1.3.2, 16.1.3.3, 16.1.3.4, 16.1.3.5, 16.1.4, 16.1.4.1, 16.1.4.2, 16.1.4.3, 16.1.5, 16.1.5.1, 16.1.5.2, 17.1.0, 17.1.0.1, 17.1.0.2, 17.1.0.3, 17.1.1, 17.1.1.1, 17.1.1.2, 17.1.1.3, 17.1.1.4, 17.1.2, 17.1.2.1

Opened: Jul 24, 2023

Severity: 4-Minor

Symptoms

SIP ALG does not overwrite VIA parameter: 'Received'. For the traffic NATted on BIG-IP, the original IP address received in server's response is sent back to the client.

Impact

Client's registration entry show's up with NAT address, instead of original client IP. Some register requests might be failing.

Conditions

-- Traffic NATted on BIG-IP. -- Server includes 'VIA; received' parameter.

Workaround

The following iRule can be used to overwrite the parameter to contain the original client IP address: ltm rule SIP_VIA { when SIP_RESPONSE { set topvia [SIP::via 0] set orgreceive [SIP::via received 0] set replaceval ";received=[IP::client_addr]" if { $orgreceive ne "" } { set newtop [string map ";received=$orgreceive $replaceval" $topvia] SIP::header insert Via $newtop 0 SIP::header remove Via 1 } } }

Fix Information

None

Behavior Change

Guides & references

K10134038: F5 Bug Tracker Filter Names and Tips