Bagaimana IPMI sideband berbagi port ethernet dengan host?

23

Kami memiliki sejumlah mesin Supermicro dengan fitur IPMI / BMC. Beberapa mesin ini menggunakan onboard BMC, sementara yang lain menggunakan kartu tambahan .

Kami mencari untuk menggunakan sideband karena mengurangi biaya dan persyaratan pemasangan kabel. Namun, beberapa detail sideband tidak cukup masuk akal.

Sideband memerlukan satu kabel ethernet yang dicolokkan ke port ethernet pada motherboard. Port jaringan ini kemudian dibagi antara sistem IPMI dan sistem operasi. Dari apa yang saya baca di manual Supermicro ini , "Gunakan alamat MAC yang sama yang Anda gunakan untuk LAN1 untuk kartu SIMSO IPMI". Namun, IPMI harus memiliki alamat IP yang berbeda dari sistem operasi.

Bagaimana mungkin memiliki dua perangkat (sistem operasi dan IPMI) yang dapat mendengarkan dan mengirimkan pada port jaringan fisik yang sama ini? Ketika sebuah paket tiba di antarmuka, bagaimana sistem menentukan apakah paket ini ditujukan untuk Sistem Operasi atau untuk sistem IPMI?

Apakah paket ini ditangani oleh CPU sama sekali, menggunakan interupsi CPU? Bisakah paket ke antarmuka IPMI dilihat oleh sistem operasi?

Stefan Lasiewski
sumber

Jawaban:

39

Saya mengelola banyak server SuperMicro menggunakan IPMI onboard. Saya memiliki hubungan cinta / benci dengan ethernet yang dibagikan (alias sideband). Secara umum, cara kerjanya adalah bahwa LAN1 tampaknya memiliki 2 (berbeda) alamat MAC - satu untuk antarmuka IPMI, yang lainnya adalah Broadcom NIC standar Anda. Lalu lintas ke antarmuka IPMI (layer 2, berdasarkan alamat MAC) secara ajaib dicegat di bawah tingkat sistem operasi dan tidak pernah dilihat oleh OS apa pun yang sedang berjalan.

Anda telah menemukan satu poin bagus untuk mereka: kabel lebih sedikit. Sekarang saya akan membahas beberapa kelemahannya:

  • Sangat sulit untuk mempartisi antarmuka IPMI ke subnet terpisah dengan cara yang aman. Karena lalu lintas semua melewati kabel yang sama, Anda (hampir) selalu harus memiliki antarmuka IPMI dan antarmuka LAN1 pada subnet IP yang sama. Pada motherboard terbaru, kartu IPMI sekarang mendukung penetapan VLAN ke IPMI NIC, sehingga Anda bisa mendapatkan beberapa kemiripan pemisahan - tetapi OS yang mendasarinya selalu bisa mengendus lalu lintas untuk VLAN itu. Pengontrol BMC yang lebih lama tidak memungkinkan pengubahan VLAN sama sekali, meskipun alat seperti ipmitool atau ipmicfg seolah-olah membiarkan Anda mengubahnya, itu hanya tidak berfungsi.
  • Anda memusatkan titik kegagalan Anda pada sistem. Melakukan konfigurasi pada saklar dan berhasil memotong diri Anda entah bagaimana? Selamat, Anda sekarang telah memutus koneksi jaringan utama ke server Anda DAN cadangan melalui IPMI. Perangkat keras NIC gagal? Selamat, masalah yang sama.
  • SuperMicro IPMI BMC awal terkenal melakukan hal-hal miring dengan antarmuka jaringan. Apakah akan menggunakan port IPMI onboard vs dedicated sering ditentukan pada power-on (tidak restart), dan tidak akan beralih dari sana. Jika Anda mengalami pemadaman listrik dan sakelar Anda tidak menyediakan daya dengan cukup cepat, Anda bisa berakhir dengan IPMI yang gagal berfungsi karena secara otomatis mendeteksi pengaturan yang salah.
  • Saya pribadi punya banyak masalah konektivitas aneh yang tidak dapat dijelaskan untuk membuat sideband IPMI bekerja dengan andal. Terkadang saya tidak bisa melakukan ping antarmuka IP selama beberapa menit. Kadang-kadang saya mendapatkan badai paket pada VLAN yang ditugaskan, tetapi lalu lintas semua tampaknya dibatalkan.

Walaupun ini tidak ada hubungannya dengan sideband-vs-dedicated, saya juga mencatat bahwa alat untuk mengakses sistem host ditulis dengan sangat buruk. Kartu IPMI yang lebih lama tidak mendukung apa pun selain otentikasi lokal, membuat perputaran kata sandi sangat menyakitkan. Jika Anda menggunakan fungsionalitas KVM-over-IP, Anda terjebak menggunakan applet Java yang ditandatangani dengan tidak benar, kedaluwarsa, atau aplikasi Java desktop yang aneh yang hanya bekerja pada Windows dan memerlukan elevasi UAC untuk dijalankan. Saya telah menemukan entri keyboard menjadi jerawatan di terbaik, kadang-kadang mendapatkan "kunci macet" sehingga tidak mungkin untuk mengetik kata sandi untuk login tanpa mencoba 10 kali.

Saya akhirnya berhasil membuat 40+ sistem bekerja dengan pengaturan ini. Saya punya sebagian besar sistem yang lebih baru, saya bisa VLAN antarmuka IPMI ke subnet yang terpisah, dan saya kebanyakan menggunakan konsol serial melalui ipmitool yang bekerja dengan sangat baik. Untuk generasi server berikutnya, saya melihat teknologi AMT Intel dengan dukungan KVM ; karena ini membuatnya menjadi ruang server, saya bisa melihat mengganti IPMI dengan ini.

natacado
sumber
Terima kasih atas penjelasannya yang sangat rinci. Apakah Anda memiliki informasi lebih lanjut mengenai bagaimana lalu lintas 'disadap secara ajaib di bawah tingkat sistem operasi dan tidak pernah dilihat oleh OS apa pun yang sedang berjalan'? Kami mencoba memahami cara kerjanya.
Stefan Lasiewski
Jembatan perangkat keras sederhana akan berhasil.
Antoine Benkemoun
jawaban yang bagus dan ya lalu lintas dijembatani
Jim B
2
Stephan - Antoine dan Jim menjelaskannya di komentar - kemungkinan jembatan perangkat keras. Anggap saja seperti saklar kecil yang diimplementasikan dalam silikon, menghubungkan antarmuka NIC fisik ke 2 NIC virtual - satu untuk IPMI, satu untuk komputer utama.
natacado
Terima kasih untuk penjelasannya. Persis seperti itulah saya pikir itu akan berhasil, tetapi ketika saya mendiskusikan hal ini dengan orang lain (admin jaringan, sysadmin) saya mendapatkan banyak ketidaksepakatan.
Stefan Lasiewski
4

Saya belum pernah menggunakan kartu-kartu tertentu sebelumnya, yang saya gunakan memiliki MAC yang berbeda untuk jalur IPMI atau port yang didedikasikan untuk lalu lintas IPMI saja. Mungkin saja IPMI berbagi NIC termasuk MAC.

IPMI akan memiliki IP yang berbeda dari OS, sehingga paket akan diarahkan dengan benar berdasarkan itu. Lalu lintas IPMI tidak pernah mengenai CPU, itu semua ditangani di IC manajemen sideband.

Chris S
sumber
Saya melihat. Beberapa kartu IPMI pada beberapa sistem akan "membagikan alamat MAC" (Sepertinya Supermicro & Dell melakukan ini), sementara yang lain menggunakan alamat MAC yang berbeda (IBM melakukan ini).
Stefan Lasiewski
3
Pada server Dell saya, antarmuka IPMI memiliki MAC yang berbeda walaupun port jaringan fisiknya sama.
sciurus
2

Ingin menambahkan saran umum bahwa menggunakan sideband berarti Anda tidak dapat berbicara dari server ke BMC. Lalu lintas tampaknya disaring. Saya sudah mencoba ini pada kit IBM / Dell / HP.

Ed Sykes
sumber
untuk menguraikan hal ini, karena hanya memukul saya juga. ESXI dan tidak ada VM yang dapat mengakses BMC (tetapi host ext bisa), MENGAPA? Karena, lalu lintas keluar pada port NSCI (shared IPMI), harus menekan switch, dan kembali ke port yang sama. AFAIK switch L2 khas tidak.
kevinf
1

Saya akan membuat cadangan poin terakhir natacados dalam respons awalnya, sesi IPMI Anda akan habis secara acak (saya menggunakan IPMIView dari supermicro untuk melihat konsol di kotak saya). Hal-hal seperti peningkatan firmware dan sepeda motor tampaknya gagal dan secara acak gagal.

Jawaban bagus natacado, luar biasa teliti.

Ben Lutgens
sumber
1
Pastikan firmware IPMI Anda terbaru! Jika ada pemutusan yang cukup besar antara versi firmware IPMI dan versi perangkat lunak IPMIView Anda akan mendapatkan "kesalahan koneksi" generik, samar ketika mencoba untuk memulai sesi KVM! Memperbarui ke firmware IPMI terbaru (ini dapat dilakukan dari menu utama utilitas IPMIView di bawah File) memperbaikinya. : p
Jeff Atwood