Bagaimana cara mengatur Cobbler dengan PXE jika Anda tidak dapat mengubah server dhcp?

16

Di masa lalu saya sudah menyiapkan server PXE beberapa kali dengan membuat server dhcp normal mengembalikan semua yang diperlukan untuk boot jaringan: baik konfigurasi ip biasa DAN bootinfo dalam pengaturan dhcp tunggal. Dengan begitu mudah dilakukan .

Menurut dokumentasi saya sudah membacanya ( wikipedia memiliki ringkasan yang bagus ) harus dimungkinkan untuk memiliki server dhcp yang tidak dimodifikasi (misalnya jika admin di lokasi Anda menolak akses) dan server terpisah yang HANYA mengembalikan informasi boot. Ini biasanya disebut server "PXE server" atau "Proxy DHCP". Di masa lalu saya pernah melihat (tidak digunakan) server pxe ini (rilis terakhir adalah 5 tahun yang lalu).

Kemarin saya menginstal Cobbler untuk melihat apa yang sebenarnya dilakukannya. Sekarang saya ingin menggunakannya (suka kemudahan penggunaan) tetapi memodifikasi server dhcpd 'utama' untuk mendapatkan PXE bukanlah suatu pilihan.

Saya tidak dapat menemukan dokumentasi tentang bagaimana saya bisa membuat tukang sepatu berjalan menggunakan server PXE (== proxy dhcp) nyata.

Bisakah ini dilakukan dengan tukang sepatu?

Dapatkah saya mengonfigurasi server isc dhcp untuk berperilaku sebagai server PXE (mis. TIDAK ada info ip, hanya info booting)?

Atau haruskah saya menggunakan pendekatan yang sama sekali berbeda (jika demikian, apa saran Anda)?

Terima kasih


Penemuan baru yang saya buat: changelog untuk dnsmasq versi 2.4.8 mengatakan:

"Proxy-DHCP, di mana dnsmasq hanya memasok informasi PXE dan server DHCP lain melakukan alokasi alamat, juga diizinkan."

SANGAT MENARIK. Terutama karena tukang sepatu sudah bisa mengendalikan dnsmasq.


Memperbarui:

dnsmasq 2.51 akan mendukung konfigurasi ini yang sepenuhnya melakukan trik yang saya inginkan.

/Etc/cobbler/dnsmasq.template saya sekarang terlihat seperti ini:

# 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

Pembaruan: 2012-04-30

Beberapa bulan yang lalu saya mendapat email dari seseorang yang menyatakan dia tidak bisa mendapatkan yang di atas berfungsi. Ternyata saya telah melakukan beberapa perbaikan dan mengganti tukang sepatu saya sendiri yang saya lupa. Jadi saya memberikan perbaikan penting untuk tukang sepatu utama yang baru saja menjadi bagian dari bagasi. Saya juga membuat beberapa dokumentasi pendukung tambahan .

Niels Basjes
sumber
1
Menilai dari situs web mereka - Saya curiga Cobbler memiliki implementasi DHCP yang disertakan. Saya mungkin akan melakukan instalasi USB jika saya bekerja di jaringan terbatas. :)
Lester Cheung
tidak, tetapi dapat membantu Anda untuk mengelolanya.
monomyth

Jawaban:

3

Apa yang kami lakukan, adalah me-mount file ISO yang kami buat, boot kernel dan initrd darinya dan minta memuat kickstart dari lokasi pusat. File kickstart ini kemudian menunjuk ke repositori dengan file RPM, yang bisa menjadi server tukang sepatu Anda.

Saya belum punya banyak pengalaman dengan Cobbler (sedih), tapi mungkin ini pilihan bagi Anda?

wzzrd
sumber
Saya telah melakukan instalasi menggunakan CDROM (gambar iso yang dihasilkan oleh Cobbler!) Seperti yang Anda sarankan dan itu bekerja dengan sangat baik. Saya sekarang memiliki pengaturan di daerah yang hampir terisolasi di mana saya dapat mencabutnya dari LAN, mengaktifkan DHCP, menyebarkan melalui PXE, menonaktifkan DHCP dan pasang lagi. Mengingat fakta bahwa ini adalah lingkungan uji / percobaan yang harus dilakukan untuk saat ini. Saya juga telah melihat opsi "proxydhcp" lainnya tetapi tidak ada yang memiliki kode setelah 2004 ... yaitu kode mati yang tidak terawat. Terima kasih untuk umpan baliknya.
Niels Basjes
5

ROM PXE membutuhkan arahan "server-berikutnya" dari server DHCP untuk menemukan dan memuat bootloader (baik itu grub, pxelinux atau bootloader lainnya). Jika "next-server" tidak disediakan, terserah PXE ROM untuk memutuskan apa yang harus dilakukan. Anda harus melihat konfigurasi kartu jaringan Anda dan melihat apakah ada opsi untuk menentukan server secara manual.

Seperti dicatat oleh jawaban di atas, menggunakan custom ISO atau USB Stick untuk mem-boot mesin, dengan semua informasi yang sudah disediakan pada baris perintah kernel mungkin adalah cara terbaik untuk pergi. Jika Anda tidak memiliki akses ke konfigurasi server DHCP.

katriel
sumber
1

jika Anda hanya ingin menjalankan beberapa tes, Anda dapat memiliki beberapa server dhcp di jaringan yang sama. Anda dapat meminta tukang pembuat membuat konfigurasi dhcpd yang akan memberi tahu server hanya untuk merespons ketika MAC tertentu sedang membuat permintaan ARP. dan jika Anda hanya mengomentari / menonaktifkan rentang pada server itu (dan saya berbicara tentang isc-dhcpd di sini) itu tidak akan mengganggu. Anda mungkin mendapatkan beberapa kotak jendela mengeluh (dalam siaran) tentang server dhcp ini menjadi non-otoritatif jika Anda menggunakan AD dan semacamnya, tetapi selain itu saya tidak berpikir ada banyak bahaya.

Tetapi cara terbaik adalah memiliki tukang sepatu / dhcp dan server yang Anda coba ketentuan pada VLAN terpisah dari sisa jaringan Anda. Dengan cara ini Anda membatasi domain siaran Anda dan tidak ada kotak lain bahkan akan melihat pengumuman dhcp Anda.

monomyth
sumber