আইপিভি 6 সহ ডিস্কলেস বুট


16

আমাদের কাজে আমরা উবুন্টুতে প্রায় 80 টি ডিস্কলেস মেশিন ব্যবহার করছি। আমরা আইপিভি 6-তে রূপান্তর করতে চাই, তাই এখন আমি আমাদের ডিস্কলেস সিস্টেমকে আইপিভি 6 দিয়ে কাজ করার চেষ্টা করছি। কার্নেল এবং initramfs সংক্রমণ এখনও একটি IPv4 সংযোগের ওপরে হতে পারে, তবে একবার মেশিন সম্পূর্ণরূপে বুট হয়ে গেলে আমি চাই সমস্ত নেটওয়ার্ক সংযোগগুলি IPv6 এর ওপরে হয়ে যায়।

এর অর্থ এনভিএসরোটকে আইপিভি 6 এর মাধ্যমে মাউন্ট করতে হবে। আমার এই গবেষণায় প্রমাণিত হয়েছে যে initramfs- সরঞ্জাম (1.18.5-1ubuntu4.1) IPv6 সমর্থন করে না। এর অর্থ এই যে আইপকনফিগ নয়, এটি প্রাথমিক বুট সময় ইন্টারফেস কনফিগারেশনের জন্য ব্যবহৃত হয় না, বা এনএফএস রুটের জন্য মাউন্ট মাউন্টিং পদ্ধতি আইপিভি 6 সক্ষম হয় না।

এটির প্রতিরোধ করার জন্য আমি ইন্ট্রামফ ( /etc/initramfs-tools/hooks/ipv6) এর সাথে দুটি বাইনারি যুক্ত করেছি :

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

আমি এগুলি (ক) সাথে প্রাথমিক বুট করার সময় একটি ডিএইচসিপিভি 6 অনুরোধ করতে ব্যবহার করি

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

এবং (খ) সম্পাদনা করে আমি যে ঠিকানাটি পেয়েছি তার সাথে ইন্টারফেসটি কনফিগার করতে:

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

সাধারণত নিম্নলিখিত কমান্ডের সাহায্যে এনএফএস রুট মাউন্ট করা হয় /usr/share/initramfs-tools/scripts/nfs:

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

তবে এটি IPv6 ঠিকানাগুলি গ্রহণ করবে বলে মনে হচ্ছে না।

সুতরাং আমি এটিকে পরিবর্তন করেছি:

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

$NFSROOTএই ক্ষেত্রে হয় [2001:4ca0:2218:1::1:2]:/lb/diskless/rootfs/ubuntu_1204_ipv6

ইন্টারফেস কনফিগারেশনটি রুট মাউন্টিংয়ের পাশাপাশি কাজ করবে বলে মনে হয়, তবে যখন /sbin/initমৃত্যুদন্ড কার্যকর করা হয় (আমার মনে হয়), আবার আইপিভি 6 বাদ পড়ে যায় এবং সুতরাং সিস্টেমটি হিমশীতল হয় (কারণ এটি উবুন্টু রুটে অ্যাক্সেস করতে পারে না)।

/etc/network/interfacesফাইলটি এই মত দেখায়:

auto lo
iface lo inet loopback

iface eth0 inet manual
iface eth0 inet6 manual

Initramfs থেকে ইন্টারফেস কনফিগারেশন রাখার কোনও উপায় আছে কি? বা আমি যখন ইন্টারফেসটি কনফিগার করব তখন কি আমি কিছু ভুল করছি ip?


2
রুট এবং আর্প আদেশগুলি দেখুন। দু'জনকেই বুটের সময় ডাকা যেতে পারে এবং
আইপিভি 6

1
এটি বেশ অবাক। IPv6 এনএফএস রুট ইতিমধ্যে সম্পূর্ণরূপে রেড হ্যাট টাইপ সিস্টেমে সমর্থিত। আমি লঞ্চপ্যাডে অভিযোগ করব।
মাইকেল হ্যাম্পটন

উত্তর:


1

হতে পারে এটি আপনার বিষয়বস্তু তবে আমি মনে করি যে পরিষেবাটি পুনর্বিবেচনা করে আপনার নির্দিষ্ট সমস্যা এড়ানো যেতে পারে:

কেন এনএফএসের সাথে বুট করতে বিরক্ত করবেন?

আপনি ইস্কি দিয়ে বুট করার চেষ্টা করতে পারেন (চিত্রটিতে একাধিক সংযোগের জন্য কেবল পঠন মোডে) এবং তারপরে আপনার প্রয়োজনে ব্যবহারকারীর ভাগের জন্য ইস্কি বা এনএফএস (আইপিভি 4) ব্যবহার করুন। আপনি আইপেক্স প্রকল্পের মাধ্যমে এটি অর্জন করতে পারেন।

আরেকটি উপায় হ'ল স্কোয়াশফ + টিএমপিএফ ব্যবহার করা এবং সিস্টেমের বুটিং প্রক্রিয়া চলাকালীন শেয়ারের সাথে এত বেশি বিরক্ত না করা এবং তারপরে ব্যবহারকারীর অ্যান্টিফিকেশনগুলির উপর নির্ভর করে পুনঃস্থাপন করা (তবে এটির ক্লায়েন্টের পক্ষে মেমরির উচ্চতর খরচ রয়েছে)।

আশা করি আপনাকে সাহায্য করে।


1
উবুন্টু এমনকি আইপিএস 6 এর মাধ্যমে আইএসসিএসআই থেকে বুট করা সমর্থন করে?
মাইকেল হ্যাম্পটন

1
স্পষ্টতই তা করে।
এন্টোইন রড্রিগেজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.