Hi everybody

 

I have a working installation of OpenSER (Proxy A). In this installation, the ACK messages are delivery without any problem through loose_route() and t_relay(). Then, I installed a second OpenSER proxy (Proxy B) and configure both servers to replicate REGISTER messages with t_replicate(), and it works fine. I made a lot of captures to check the replication process was working fine and also to check the NAT pings; each proxy takes care of the NATed clients it receives sending OPTIONS message periodically. I’m using mediaproxy to support NATed clients; to avoid each proxy starting a media session when it find a NATed client I used the following rule: a proxy receiving messages from another proxy never starts a media session, the proxy that sends the message takes care of that.

 

Having two registered clients (Client A in Proxy A and Client B in Proxy B), I start making calls from Client A to Client B, but I found something in the captures. All the messages flow correctly, except the final ACK message sent by Client A to Client B. Proxy A receives this message and pass it to Proxy B, but Proxy B never deliver it to Client B. Of course, the media session never starts. I was searching info about this situation and I found an email respond from Bogdan about using t_newtran() to process ACK messages, I tried, but it didn’t work.

 

Has anybody ever had the same problem? Is there a special way to deal with ACK messages when we’re working with replicated proxies?

 

I’ll appreciate any help.