Як налаштувати Cobbler з PXE, якщо ви не можете змінити сервер dhcp?


16

У минулому я декілька разів встановлював PXE-сервер, роблячи звичайний сервер dhcp повертати все необхідне для завантаження мережі: як звичайний конфігуратор ip, так і bootinfo в одній установці dhcp. Це легко зробити .

Відповідно до документації, яку я прочитав (у wikipedia є хороший підсумок ), має бути можливість мати немодифікований сервер dhcp (наприклад, якщо адміністратор у вашому місці відмовить у доступі) та окремий сервер, який ТІЛЬКИ повертає завантажувальну інформацію. Зазвичай це називається сервером "PXE" або "Proxy DHCP". Раніше я бачив (не використовував) цей сервер pxe (останній реліз був 5 років тому).

Вчора я встановив Cobbler, щоб побачити, що він насправді робить. Тепер я хотів би використовувати його (люблю простоту використання), але змінювати "головний" сервер dhcpd для отримання PXE - це не варіант.

Мені не вдалося знайти жодної документації про те, як я можу змусити запускати запуску за допомогою реального сервера PXE (== proxy dhcp).

Це можна зробити за допомогою шпиляка?

Чи можу я налаштувати isc dhcp-сервер таким чином, щоб він поводився як PXE-сервер (тобто НЕ ip інформація, лише інформація про завантаження)?

Або я повинен піти на зовсім інший підхід (якщо так, то яка ваша пропозиція)?

Спасибі


Щойно я зробив нове відкриття: Блог змін для dnsmasq версії 2.4.8 говорить:

"Проксі-DHCP, де dnsmasq просто надає інформацію про PXE, а інший сервер DHCP виконує розподіл адреси, також дозволений."

ДУЖЕ ЦІКАВО. Тим більше, що шавець може вже керувати dnsmasq.


Оновлення:

dnsmasq 2,51 буде підтримувати цю конфігурацію, яка повністю виконує потрібний мені трюк.

Мій /etc/cobbler/dnsmasq.template зараз виглядає так:

# Cobbler generated configuration file for dnsmasq
# $date
#

# resolve.conf .. ?
#no-poll
#enable-dbus
read-ethers
addn-hosts = /var/lib/cobbler/cobbler_hosts

# Be a proxyDHCP server
dhcp-range=10.10.0.0,proxy

# Only respond to clients that are known (i.e present in /etc/ethers)
dhcp-ignore=#known

# Set this (and domain: see below) if you want to have a domain
# automatically added to simple names in a hosts-file.
expand-hosts
domain=test.basjes.nl,10.10.15.0

# Loads <tftp-root>/pxelinux.0 from dnsmasq TFTP server.
pxe-service=x86PC, "Boot PXELinux (=Cobbler controlled)", pxelinux ,$next_server

$insert_cobbler_system_definitions

Оновлення: 2012-04-30

Кілька місяців тому я отримав електронний лист від когось із заявою, що він не може змусити вищезазначене працювати. Виявляється, я здійснив виправлення та зміну власного шпилька, про який я забув. Тож я надав вирішальне виправлення шпильку основної лінії, яка щойно стала частиною магістралі. Я також створив додаткову допоміжну документацію .


1
Судячи з їх веб-сайту, я підозрюю, що Cobbler включає в себе реалізацію DHCP. Ймовірно, я б встановив USB, якщо я працюю в мережі з обмеженим доступом. :)
Лестер Чеун

ні, але це може допомогти вам керувати ним.
мономіт

Відповіді:


3

Ми робимо це встановлення ISO-файлу, який ми створили, завантажимо з нього ядро ​​та initrd і завантажимо його з центрального місця. Цей файл kickstart потім вказує на сховище з файлами RPM, яке може бути вашим серверним службовцем.

Я не маю великого досвіду роботи з Cobbler (на жаль), але, можливо, це варіант для вас?


Я зробив установку за допомогою CDROM (ізо-зображення, згенерованого Cobbler!), Як ви запропонували, і це працювало досить непогано. Тепер у мене налаштування знаходиться в майже ізольованій області, де я можу відключити її від локальної мережі, включити DHCP, розгорнути через PXE, відключити DHCP і підключити знову. Зважаючи на той факт, що це середовище для тесту / експерименту, це доведеться робити зараз. Я також розглядав інші "proxydhcp" варіанти, але жоден з них, здавалося, не мав код поза 2004 р., Тобто мертвий незбережений код. Дякуємо за відгук.
Niels Basjes

5

PXE ROM потребує директиви "наступного сервера" від сервера DHCP, щоб знайти і завантажити завантажувач (будь то grub, pxelinux або будь-який інший завантажувач). Якщо "наступний сервер" не постачається, вирішувати, що робити, доводиться приймати PXE ROM. Вам доведеться переглянути біографічну конфігурацію вашої мережевої картки і побачити, чи є можливість, можливо, вказати сервер вручну.

Як зазначається у відповіді вище, використовуючи спеціальний ISO або USB Stick для завантаження машини, вся інформація, яка вже надана в командному рядку ядра, мабуть, найкращий спосіб. Якщо у вас немає доступу до конфігурації сервера DHCP.


1

якщо ви просто хочете запустити деякі тести, у вас може бути кілька dhcp-серверів в одній мережі. Ви можете створити кобблер, який створить конфігурацію dhcpd, яка скаже серверу відповідати лише тоді, коли певний MAC робить запит ARP. і якщо ви просто прокоментуєте / відключите будь-які діапазони на цьому сервері (а я тут говорю про isc-dhcpd), це не буде нав'язливим. Можливо, у вас з’явиться декілька вікон, які скаржаться (в ефірах) про те, що цей dhcp-сервер не є авторитетним, якщо ви використовуєте AD і подібні, але крім цього, я не думаю, що існує велика небезпека.

Але найкращий спосіб - це cobbler / dhcp та сервери, які ви намагаєтеся забезпечити окремою VLAN від іншої мережі. Таким чином ви обмежуєте свій домен мовлення, і жодне інше поле навіть не побачить ваші dhcp-повідомлення.

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