On Tue, 2010-06-01 at 19:39 +0400, Alexander Zhukov wrote:
> Thank you very much for your answer!
> I added myips option and it works.


> But I still do not undestand some points.
> In my case incomingproxy should send an INVITE to the The
> correct interface to send the packet by is one with an address from the
> same network --

Just to check - do you really have a netmask that makes 10.10.16 and
10.10.18 be on the same network? All my vmnet interfaces have a netmask.

> Why incomingroxy sets source IP address of the outgoing packet? Usually
> this job is done by an IP stack. Application which sits on the
> "application" level should not bother with such low level details.

I agree about the principle. IIRC, YXA opens a separate UDP socket per
interface to be able to distinguish the IP address someone sends packets
to. There might be better ways to do this, and I'm not sure it was the
only reason.

So, what a running YXA server has to use for sending datagrams is a list
of UDP sockets. All sockets are tried (see
src/transportlayer/sipsocket_udp.erl function do_send/5) until the OS
says that a socket worked for sending to that particular destination. 

Perhaps it would be possible to send packets on an unbound UDP socket
instead, as Dmitriy Kargapolov said something about, while still having
the complete list of listening UDP sockets? You are most welcome to give
it a try.


Yxa-devel mailing list

Reply via email to