Michael Bradley Jr wrote: > Hi, > > when STUN is enable, i can't make a successful call to an UA in the same Network > segment. > > Here is call flow > > UA1: pjsua 0.7.0 > localIP: 192.168.0.23 publicIP: 88.xx.xx.xx > > UA2: Grandstream IP-Phone > localIP: 192.168.0.32 publicIP: 88.xx.xx.xx > > > UA1 ---> UA2 (192.168.0.23 >> 192.168.0.32) > INVITE sip:xvc at 192.168.0.32 SIP/2.0 > sdp: c:88.xx.xx.xx > > UA2 --> UA1 (192.168.0.32 --> 88.xx.xx.xx) > 200/2.0/UDP 88.xx.xx.xx:5060 > sdp: c: 192.168.0.32 > > > UA1 never get the 200 since it's send to the public Address... > > So my question: > how can i set the IP of the destination of the RTP stream in my initial > INVITE using pjsua-lib since i can figure out that both UA are behind the same NAT? Currently you can't. When STUN is used, the public IP will always be used in the SDP, regardless of where the destination UA is located. But if only the other UA (UA2) is also pjsua, then there shouldn't be any problem with media communication since pjsua will switch the destination RTP/RTCP address to the source address of the packet. And when you use pjsua to pjsua, you can enable ICE as well. With ICE enabled, it will automatically select which media address to use based on ICE negotiation. cheers, -benny > Thanks, > Michael