Forums Read-only archive

Brekeke does not treat CGNAT address as external IP

3 posts · Brekeke SIP Server Forum

voip204 Original post
1. Brekeke Product Name and Version: Brekeke SIP Server Advanced Edition v3.16.4.9/576.2

2. Java version: 11.0.0.1

3. OS type and the version: Ubuntu 24.04 LTS

4. UA (phone), gateway or other hardware/software involved: Yealink T42G

5. Your problem:
I am connecting to a remote BSS server from a Yealink T42G. My router is assigned with a CGNAT IP address (100.64.x.x) from the ISP.

The problem is BSS is treating this CGNAT IP as an internal IP address and as a result it switches to using the private IP address of the phone. The inbound call fails as BSS can not communicate directly to the phone's LAN IP.

The only workaround I have found so far is by using the 'External IP address pattern' value in the Configuration->System page. Here I add regex to match CGNAT address space. I am worried this may not work in all scenarios and there could be an official way of resolving this. Perhaps it could be a bug. Has anyone else come across this? I know more and more ISPs are using CGNAT due to the limited IPv4 address space available.

I saw an old post on here from 2014 by Laurie where they use the IP address pattern function to resolve it, but I am not sure if this is still required for the newer version:
https://www.brekeke-sip.com/bbs/viewtop ... hlight=nat

Thanks.
Harold
Setting "External IP address pattern" as the following will solve the issue.
[External IP address pattern] = ^100.6[4-9]|^100.[7-9][0-9]|^100.1[0-1][0-9]|^100.12[0-7]


Another solution is setting the LAN side interface IP address at [Interface address 1], and regex patterns of phone's LAN IP addresses at [Remote Address Pattern 1].
voip204
Thanks Harold for the help.

Setting the External IP address pattern to the regex you provided solved it.