I may be wrong here but I think binding is only meaningful for receiving
(listening on a specific IP/port combo). When sending with TCP, it is the IP
stack that decides which interface to use based on routing tables and possibly
other things in more advanced setups with e.g. load-balancing or redundant
interfaces.
If the destination is available from multiple local interfaces, the stack will
probably just pick the first matching one. Also multiple IPs on the same host
and in the same subnet without load-balancing or high-availability solution is
usually calling for problems as even pings may not work anymore due to
different routes taken in both directions (whether it actually works or not
depends on the rest of your network config).
So I think you need to have your network config set up so that the route to the
destination uses the local interface you want. I don't think SIPp can enforce
this at sending time.
-David
________________________________
From: Bhaskar Dutta [mailto:[email protected]]
Sent: mardi 16 décembre 2008 19:32
To: [email protected]
Subject: [Sipp-users] sipp does not bind to IP address provided in "-i" option
even with "-bind_local", resulting in wrong TCP source IP and failed calls
Hi,
I am facing an issue similar to this (unanswered) thread:
http://www.mail-archive.com/[email protected]/msg02716.html
I want to send a TCP call to (machine1) 10.1.1.99 from logical interface eth1:1
(10.1.1.48) in machine2 running sipp over TCP.
All UDP calls contain eth1:1's IP address (10.1.1.48) as expected, and my calls
are fine, but TCP packets pick the outgoing interface's IP, resulting in failed
calls.
My machine2 running sipp:
eth0 :10.1.1.43
eth1 :10.1.1.55
eth1:1 :10.1.1.48
I am using sipp with "-i 10.1.1.48", which results in Via, Contact, From being
set to this IP. I am also using -bind_local (which does not seem to work as
expected).
Ethereal traces show:
10.1.1.43 -> 10.1.1.99 SIP Request: REGISTER sip:10.1.1.48
Now I add a route to the system:
# ip route add 10.1.1.0/24<http://10.1.1.0/24> via 10.1.1.48
Ethereal traces now show:
10.1.1.55 -> 10.1.1.99 SIP Request: REGISTER sip:10.1.1.48
So, sipp seems to pick the source IP based on the dest route!
Is there a way to pick the logical interface's IP as the TCP source? (Note: ip
route does not work with logical interface).
I can achieve the same using SNAT iptable rules, but isn't this a problem that
needs to be fixed in the sipp code? ( I can try writing a hack if it is indeed
an issue and there is no existing solution).
Thanks,
Bhaskar
---------------------------------------------------------------------
Intel Corporation NV/SA
Rond point Schuman 6, B-1040 Brussels
RPM (Bruxelles) 0415.497.718.
Citibank, Brussels, account 570/1031255/09
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you. Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Sipp-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sipp-users