Можно ли иметь два одинаковых IP-адреса и подсети, назначенных из двух разных интерфейсов / сетей?
Как поведет себя такая машина? Как будет выглядеть таблица маршрутов?
Можно ли иметь два одинаковых IP-адреса и подсети, назначенных из двух разных интерфейсов / сетей?
Как поведет себя такая машина? Как будет выглядеть таблица маршрутов?
Ну, это не только возможно, но иногда полезно или даже необходимо.
Это выбор, например, когда у вас есть две ссылки на разные коммутаторы в среде коммутации L3. Конечно, для конфигурации требуется нечто большее, чем просто установка одного и того же IP-адреса в обоих интерфейсах.
Насколько я знаю, вы можете надежно управлять IP, совместно используемым несколькими интерфейсами, двумя способами, в зависимости от сценария.
Если вам нужно развернуть одну и ту же конфигурацию в разных локальных сетях, вы можете использовать пространства имен, назначая разные интерфейсы разным пространствам имен и запуская нужные сервисы на каждом из них реплицированным образом. Смотри этот отличный ответ.
Другой, гораздо более распространенный (я предполагаю) случай использования - это тот случай, когда я упомянул, что ваш хост напрямую подключен к двум или более коммутаторам L3. В этом случае вы, возможно, захотите обеспечить балансировку нагрузки, в этом случае вы можете настроить один и тот же IP-адрес в обоих интерфейсах и использовать две разные таблицы маршрутизации и multihop. Это очень хорошо объяснено здесь.
Я не думаю, что вы можете установить один и тот же IP-адрес на нескольких интерфейсах, это не имеет смысла. Но вы можете создать мост и установить IP-адрес на интерфейсе моста. Со стороны это выглядело бы так, как если бы машина имела одинаковый IP-адрес на нескольких интерфейсах.
Что касается нескольких интерфейсов в одной подсети, я использовал это некоторое время назад для балансировки нагрузки, что было в какой-то системе BSD. Идея состоит в том, что каждый интерфейс использует разные таблицы маршрутизации. Однако имейте в виду, что это довольно продвинутый метод и что Linux на самом деле не предназначен для этого.
Посмотрите на эту статью http://pontus.ullgren.com/view/multiple_interfaces_on_the_same_subnet Также этот вопрос о сбое сервера может быть полезным.