- Joined
- Dec 7, 2016
- Messages
- 5
- Reaction score
- 1
Hello,
Yesterday I upgraded from 3CX 15.5 to 16.0.5.619.
After the 3CX service started up, it was repeatedly failing to register with our SIP provider. Note that our SIP provider address is entered as a FQDN and we're using Google (8.8.8.8 and 8.8.4.4) as our DNS servers.
I did a packet capture and found that it was trying to contact the IP address of the A Record of our SIP provider -- not the SRV record. This was the problem.
The workaround was to remove the FQDN and instead manually enter the IP address of one of our provider's SIP servers. After pressing OK, it registered the trunk instantly.
What I think happened was, unfortunately, "by design," as explained in the 3CX documentation here:
It sounds like the first attempt to resolve the SRV record failed (just a routine random glitch in the matrix), so it fell back to requesting the A record, which succeeded.
This is undesirable behavior for obvious reasons -- if the first DNS query for an SRV record fails (for whatever reason -- say a packet gets dropped randomly), I want it to try again, or try the secondary DNS server. I do not want it to query the A record!
Therefore, I am requesting this feature: the user should be able to select the DNS record type that 3CX should query: SRV only, A only, or both SRV and A. It should not try SRV the and then automatically "fail over" to A record.
Note that this problem appears to be related to this one from several months ago:
https://www.3cx.com/community/threa...lving-since-updating-to-16-5-yesterday.72721/
Thank you.
Yesterday I upgraded from 3CX 15.5 to 16.0.5.619.
After the 3CX service started up, it was repeatedly failing to register with our SIP provider. Note that our SIP provider address is entered as a FQDN and we're using Google (8.8.8.8 and 8.8.4.4) as our DNS servers.
I did a packet capture and found that it was trying to contact the IP address of the A Record of our SIP provider -- not the SRV record. This was the problem.
The workaround was to remove the FQDN and instead manually enter the IP address of one of our provider's SIP servers. After pressing OK, it registered the trunk instantly.
What I think happened was, unfortunately, "by design," as explained in the 3CX documentation here:
DNS resolution
Before being able to communicate with a VoIP provider the PBX must resolve the IP of the server it has to speak with. The PBX will send SIP traffic to the specified “Registrar/Proxy” found in the VoIP provider’s configuration. If this is an FQDN (as opposed to an IP) the PBX will need to resolve it. It will first try to resolve the FQDN as an SRV record, and then (on failure) as an “A” record. “A” records are normal DNS records and these will be resolved normally. ...
It sounds like the first attempt to resolve the SRV record failed (just a routine random glitch in the matrix), so it fell back to requesting the A record, which succeeded.
This is undesirable behavior for obvious reasons -- if the first DNS query for an SRV record fails (for whatever reason -- say a packet gets dropped randomly), I want it to try again, or try the secondary DNS server. I do not want it to query the A record!
Therefore, I am requesting this feature: the user should be able to select the DNS record type that 3CX should query: SRV only, A only, or both SRV and A. It should not try SRV the and then automatically "fail over" to A record.
Note that this problem appears to be related to this one from several months ago:
https://www.3cx.com/community/threa...lving-since-updating-to-16-5-yesterday.72721/
Thank you.