On 03/29/2011 02:42 PM, Asgaroth wrote:
Thank you all for your replies.
Hello again,
I have sent you another email in the thread but no reply. Can you confirm that you have a listening UDP socket on the interface that is selected by the kernel for sending the datagram in a mhomed environment. If you are not listening on that interface Kamailio will complain with the error message you received in mhomed=1 config
Marius
Our requirement, currently is fairly simple, and, I'm thinking that pacemaker/heartbeat/corosync is a little more overhead than required. Ucarp seems to fit the profile fairly well for what we are trying to achieve.
I'd like to have kamailio decide on the outbound interface if at all possible, I suspect I would need to delve into all the routing branches if I were to force the outbound socket manually.
If I listen on all interfaces and enable mhomed then kamailio transmits on the correct outbound interface, but then uses, what I suppose, is called the primary address associated with the interface. If I were to stay with this configuration, then, would I need to enable the advertised address/port parameters? What about devices behind NAT firewalls, if my advertised address was 1.2.3.4 and the actual interface address was 1.2.3.3 then the NAT'ed UA would see traffic arriving to them as originating from 1.2.3.3 which is not what I am trying to achieve (it needs to arrive in as 1.2.3.4, which is the same address that they registered against. In either case, I would need to set the advertised address based on the destination ip address (i assume obtained by $dd or $rd) so that I can set the appropriate advertised address/port or forced outbound socket.
I saw a previous post saying that for mhomed to work correctly kamailio needs to be listening on the interface that is used for the routing of the destination address, this makes sense to me. However, with the carp configuration I have, the "virtual" address is indeed sitting on the interface that has the destination network configured. I guess Kamailio is unable to decide on which ip address to use on the outbound interface, would it not be possible to have the address used to send, be that of the "listen_address" parameter even if it is an associated "virtual" address on the same physical NIC.
Or maybe this may be possible with a couple "ip rule" commands to associate a destination net with a virtual ip address?
With corosync/pacemaker/heartbeat, are you able to have kamailio operate on the floating address without haveing to perform the routing decisions for kamailio?
Any comments/suggestions would be greatly appreciated.
Thanks
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users