499 caller is forbidden when IP phone cannot dial any other extensions

When we meets with the problem like that, we can refer to the file to find the solution:

IP phones register to 3CX server successfully, but they cannot call each other, after we make a capture in the 3CX server, we can find that when the IP phone sends the invite request with authentication information to 3CX server, 3CX sends back 603 decline error:

When we open the details of 603 message in wireshark, it displays that 499 caller is forbidden.

Then we open the details of first invite request in wireshark, it displays that the host IP of from header is the IP address of IP phone, not the IP of 3CX server. As usual, after the extensions register to the same sip server, when extensions call each other, the host IPs of from header and to header are the IP of sip server.

The solution is that: change the host IP of from header as the IP of 3CX server in the IP phone side, then the extensions can call each other.

 

The problem usually occurs when we try to test the custom IP phones or sip devices and check if they can work with the 3CX server together.