IPv6 ile Disksiz Önyükleme


16

Çalışmamızda Ubuntu'yu çalıştıran yaklaşık 80 disksiz makine kullanıyoruz. IPv6'ya geçiş yapmak istiyoruz, bu yüzden şimdi disksiz sistemimizin IPV6 ile çalışmasını sağlamaya çalışıyorum. Çekirdek ve initramflerin iletimi hala bir IPv4 bağlantısı üzerinden olabilir, ancak makine tamamen önyüklendikten sonra tüm ağ bağlantılarının IPv6 üzerinden olmasını istiyorum.

Bu, nfsroot'un IPv6 aracılığıyla monte edilmesi gerektiği anlamına gelir. Bunu araştırmam, initramfs-tools'ın (1.18.5-1ubuntu4.1) IPv6'yı desteklemediğini gösterdi. Bu, ne önyükleme zamanında arabirim yapılandırması için kullanılan ipconfig ne de nfs kökü için montaj montaj prosedürünün IPv6 özellikli olmadığı anlamına gelir.

Bunu atlatmak için initramfs ( /etc/initramfs-tools/hooks/ipv6) öğesine iki ikili dosya ekledim :

#!/bin/bash 
. /usr/share/initramfs-tools/hook-functions
copy_exec /sbin/dhclient /sbin
copy_exec /sbin/mount.nfs4 /sbin

Ben (a) ile erken önyükleme zamanında bir DHCPv6 istemek için kullanın

/sbin/dhclient -6 -1 -cf /tmp/dhclient.conf -pf /tmp/dhclient6.eth0.pid -lf /tmp/dhclient6.eth0.leases eth0

ve (b) arayüzü gerçekleştirerek ulaştığım adresle yapılandırmak için:

ipv6=$(cat /tmp/dhclient6.eth0.leases | grep iaaddr | egrep -o "([a-f0-9]{1,4}:){3}([a-f0-9]{0,4}:){0,4}[a-f0-9]{1,4}")
ip -6 addr add $ipv6/112 dev eth0

Genellikle nfs kökü aşağıdaki komutla bağlanır /usr/share/initramfs-tools/scripts/nfs:

nfsmount -o nolock ${roflag} ${NFSOPTS} ${NFSROOT} ${rootmnt}

Ancak bu IPv6 adreslerini kabul etmiyor gibi görünüyor.

Bu yüzden onu şöyle değiştirdim:

mount ${roflag} -t nfs4 ${NFSROOT} ${rootmnt}

$NFSROOTbu durumda [2001:4ca0:2218:1::1:2]:/lb/diskless/rootfs/ubuntu_1204_ipv6.

Arayüz yapılandırması kök montajının yanı sıra çalışıyor gibi görünüyor, ancak /sbin/inityürütüldüğünde (sanırım), IPv6 tekrar düşüyor ve bu nedenle sistem donuyor (çünkü artık ubuntu köküne erişemiyor).

/etc/network/interfacesDosya şuna benzer:

auto lo
iface lo inet loopback

iface eth0 inet manual
iface eth0 inet6 manual

Arabirim yapılandırmasını initramfs'den korumanın bir yolu var mı? Veya arayüzü yapılandırdığımda yanlış bir şey mi yapıyorum ip?


2
Route ve arp komutlarına bir göz atın. Her ikisi de önyükleme sırasında çağrılabilir ve IPV6 desteği alabilir
j0h

1
Bu oldukça şaşırtıcı. IPv6 NFS kökü Red Hat tipi sistemlerde zaten tam olarak desteklenmektedir. Fırlatma rampasından şikayetçi olurdum.
Michael Hampton

Yanıtlar:


1

belki size konu dışı ama hizmet yeniden düşünerek özel sorun önlenebilir düşünüyorum:

NFS ile neden önyükleme yapıyorsunuz?

İscsi (görüntüye birden fazla bağlantıya izin vermek için salt okunur modda) ile önyükleme yapmayı deneyebilir ve sonra gerekirse kullanıcı paylaşımları için iscsi veya nfs (ipv4) kullanabilirsiniz. Bunu ipxe projesi ile başarabilirsiniz.

Başka bir yol ise squashfs + tmpfs kullanmak ve sistemin önyükleme işlemi sırasında paylaşımlarla çok fazla uğraşmamak ve daha sonra kullanıcı yetkilendirmelerine bağlı olarak yeniden miktarlar yapmaktır (ancak bu, istemci tarafında daha yüksek bir bellek tüketimine sahiptir).

Sana yardım eden umutlar.


1
Ubuntu, IPv6 üzerinden iSCSI'den önyüklemeyi bile destekliyor mu?
Michael Hampton

1
Görünüşe göre öyle.
Antoine Rodriguez
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.