[SunHELP] Problems with multipathing, and choosing interface to send packets from...
Joshua Fielden
sunhelp at sunhelp.org
Fri Nov 16 13:51:35 CST 2001
I'm tracing a problem with IpMP, and which interface is chosen as the source interface. We are following the 'blueprints' article on best practices, and it says to (essentially) configure two reals, one named virtual, and one dummy virtual (minimum -- with only two interfaces in a group). The question is, how does one determine that packets are sent out the 'named virtual', and not the dummy?
I was told:
The source IP for outbound packets is determined as follows:
* Select interface-group for destination network based on routing table
* If source IP is explicitly specified via bind() then use that.
* If source IP is unspecified ([$PRODUCT] currently does this, bug filed to get everyone bind()ing the source IP explicitly) then use the first UP, non-DEPRECATED IP addr in the list, sorted by the order in which the IPs were added.
So, if you have three non-DEPRECATED IP addrs on an interface-group, then the IP which was added first (and appears earliest in 'ifconfig -a') will be the source IP addr. Generally this will be the base IP addr for the host, and not one of the virtuals. (ie machine, not machine-dum)
The problem is this doesn't work, in practice. A dummy interface was added post-boot to a machine, then all packets were sent out that interface, even though it was later in ifconfig, added later, mature routing table was running on the machine, etc. We *are* still at MU4, so are running in.rdisc to get around a couple of in.mpathd bugs, but with all 4 interfaces on the same network, the routing table shouldn't change by adding another interface, besides the obvious addition of a network-specific route added through the new interface as it's plumb'ed and brought up.
Anyone have cluons?
--
"We are either doing something, or we are not.
'Talking about' is a subset of 'not'."
Joshua Fielden - jf at fielden.org
More information about the SunHELP
mailing list