Такой вопрос: машина с floating IP вызывает функцию connect(3). Какой source IP адрес будет использован в соответсвующем пакете. Floating IP или реальный ?
Клева ты, я так не умею, что такое floating IP не знаю, но все равно отвечу. Floating IP используется во всяких дублированных решениях, где есть минимум две машины, которые извне выглядят как одна отказоустойчивая. У них есть общий IP (можно назвать IP кластера) и свой частный. Например, floating IP -- 10.0.0.5 реальный 1 -- 10.0.0.4 и реальный 2 -- 10.0.0.3 все смотрят в одну сеть. Ну и что приложение выхватит себе на connect (3)? Так понятнее?
Ну во-первых, этому приложению можно сказать, на какой адрес биндиться.
Во-вторых, можно дать командочку: route add -host destination gw gateway dev eth0:1 и тогда будет гарантированно выхватывать адрес интерфейса eth0:1.
В-третьих есть еще iproute2, хотя возможно это из другой оперы.
А по умолчанию выхватит адрес eth0, так как сеть была смаршрутизирована именно через этот девайс, а виртуальные интерфейсы просто смотрят в ту же сеть. Что впрочем тоже не факт, так как что там автор умалчивает никому не известно.