Евристика для пошуку основного інтерфейсу


-1

Я намагаюся налаштувати конфігурацію мережі декількох віртуальних комп'ютерів і консул тощо. Це створює інтерфейс eth1 на додаток до з'єднання NAT з хостом на eth0. Консул за замовчуванням використовує перший інтерфейс, eth0. Звичайно, що все зіпсується, тому що обидві ВМ реєструються з тим же IP, що не є тією з приватної мережі, а від хост-з'єднання.

Все йде нормально. Я можу змінити, який IP консул використовує, але це мене змусило:

Чи є краща евристика для пошуку "головного" інтерфейсу, ніж "використання першого"?

Оскільки це спроба автоматизації конфігурації мережі і dns, мені хотілося б якесь загальне рішення, але я не впевнений, як це зробити. В ідеалі це буде той, де живуть інші консульські агенти. Чим більш гетерогенним є такий кластер, тим менша ймовірність того, що інтерфейс однаковий для всіх вузлів кластера.

В основному, я шукаю "робити-що-я-середнього (X)" для роботи в мережі. ;-)


Зазвичай, якщо ви хочете уникнути змішування ОС віртуальними інтерфейсами, ви маєте можливість сказати йому, що вони розпізнають їх за своєю MAC-адресою. в червоній капелюсі linux, / centos існує директива "HWADDR" в /etc/sysconfig/networking-scripts/ifcfg-ethX.cfg
mveroone

Відповіді:


1

Ви можете примусово дотримуватися узгодженого іменування через перезавантаження за допомогою udev . Насправді, це була одна з головних причин (а не єдина) за розвитком Росії udev .

Припустимо, у вас є два інтерфейсу Ethernet, один з MAC aa: bb: cc: dd: ee: ff, який ви хочете зателефонувати wan0, інший з MAC-адресою 00: 11: 22: 33: 44: 55 який ви хочете викликати local1.

Потім ви можете редагувати файл /etc/udev/rules.d/70-persistent-net.rules , розташовуючи рядок так:

 # PCI device 0x8086:0x1502 (e1000e)
 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="aa:bb:cc:dd:ee:ff", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Це правило дає PCI-пристрою код постачальника 8086 і код продукту 1502, а MAC-адресу aa: bb: cc: dd: ee: ff, назва eth0 . Змінити eth0 до wan0 , і у вас є правило, яке буде завжди дайте цій NIC таку ж назву. Так само для іншого інтерфейсу.

Замініть aa: bb: cc: dd: ee: ff над MAC-адресою, що відповідає інтерфейсу, який розмовляє з хостом, та 00: 11: 22: 33: 44: 55 MAC-адресу NIC, що розмовляє з іншими гостями , і ви готові.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.