>>>>> Eugene Berdnikov <b...@protva.ru> writes: >>>>> On Sat, Jun 06, 2015 at 01:37:38PM +0000, Ivan Shmakov wrote: >>>>> Eugene Berdnikov <b...@protva.ru> writes:
[…] >>> В лучшем случае выходит асимметричная маршрутизация. >> Разве? Предполагая типовой сценарий — WLAN и Ethernet образуют одну >> сеть (IP, MAC; IOW, соеденены в режиме «моста») — узел будет >> использовать, «без предпочтения», любой из интерфейсов для связи в >> пределах этой сети. > Во-первых, когда два интерфейса включаешь в одну сеть, ни бондинг, ни > мост (bridge) автомагически не создаются. Хотя бы потому, что ядру > просто неоткуда узнать, что два интерфейса находятся в одной сети. :) Строго говоря, у ядра /есть/ необходимая информация — префиксы сетей легко обнаруживаются в выводе $ ip addr. > Во-вторых, сомневающиеся могут просто поднять пару одинаковых адресов > на разных интерфейсах и заглянуть в таблицу маршрутизации. Сюрприз: > там не будет ни бондинга, ни моста, ни даже балансировки между > интерфейсами. Один из интерфейсов тупо встанет первым. Проверяется > по «ip route get». > В-третьих, что значит «без предпочтения»? Узел, отправляющий пакеты, > не может «не иметь предпочтений», потому что он должен принимать > решение о машрутизации. О пересылке. > Поэтому ему нужно выбрать какую-то стратегию: или берём лишь первый > интерфейс в таблице, или используем оба, но тогда нужно выбрать и > режим балансировки: либо round robin, либо псевдослучайно, либо по > младшим октетам mac'a и так далее. По меньшей мере в случае IPv6, AIUI, приложение может указать интерфейс для отправки явно. Даже в случае совпадение адресов (сетей) различных интерфейсов. > «Никакая» стратегия может быть ровно одна: дропнуть пакет. […] ACK; благодарю за разъяснения. Так или иначе, исходный вопрос — как я его понял — был в том, как обеспечить failover. Использование одного адреса на нескольких интерфейсах эту задачу как будто бы решает? -- FSF associate member #7257 http://am-1.org/~ivan/ … 3013 B6A0 230E 334A