Я заметил, что интерфейс bond0, который я создаю во время установки, может случайным образом использовать MAC-адрес первого или второго интерфейса.
Это вызывает проблемы, потому что это означает, что информация ARP сервера не будет согласованной.
Я хочу заставить связи всегда использовать первый интерфейс (eth0), желательно без необходимости вручную указывать MAC-адрес (одни и те же настройки используются на нескольких машинах).
Мои текущие варианты соединения: (гитхаб):
kernel_options: >
nomodeset
i915.modeset=0
nouveau.modeset=0
logo.nologo
inst.cmdline
inst.proxy={{ http_proxy }}
proxy={{ http_proxy }}
modprobe.blacklist=floppy
console=tty0
console={{ serial_console }}
inst.ks.sendmac
bond=bond0:{{ bond_slaves }}:{{ bond_options}}
{%- if syslog_server is defined -%}inst.syslog={{ syslog_server }}{%- endif -%}
Чтобы ответить на ваш вопрос, попробуйте primary=eth0
на ваш bond_options
переменная, ожидается, что она сделает то, что вы хотите.
Я не понимаю, почему вы говорите, что ip сервера не будет стабильным:
как только связь установлена, он всегда будет сохранять один и тот же MAC-адрес (либо eth0 one, либо eth1 one, нам просто все равно), учитывая, что мы работаем без primary=eth0
параметр
когда вы вызываете связь с его IP-адресом, таблица кэша arp сетевого коммутатора будет обновлена с использованием MAC-адреса связи и связанного IP-адреса, и это будет работать, независимо от сбоев nic, которые могут возникнуть в течение этого времени. Просто попробуйте отключить eth0 или eth1, и все будет хорошо, с тем же MAC-адресом и IP.