Sysctl में, /proc/sys/net/ipv[46]/conf/
कुंजी निम्नलिखित उपकुँजियाँ है: all
, default
, और प्रत्येक नेटवर्क इंटरफेस के लिए एक महत्वपूर्ण। उदाहरण के लिए, एक मशीन पर एक नेटवर्क इंटरफेस eth0 के साथ, यह इस तरह दिखेगा:
iserv ~ # ll /proc/sys/net/ipv[46]/conf/
/proc/sys/net/ipv4/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/
/proc/sys/net/ipv6/conf/:
insgesamt 0
dr-xr-xr-x 0 root root 0 12. Sep 23:30 all/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 default/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 eth0/
dr-xr-xr-x 0 root root 0 12. Sep 23:30 lo/
सभी संबंधित सेटिंग्स अलग-अलग प्रत्येक कुंजी में मौजूद हैं। उदाहरण के लिए, यदि मैं accept_ra
मूल्य के साथ IPv6 राउटर विज्ञापन अक्षम करना चाहता हूं, तो यह मान चार बार मौजूद है:
iserv ~ # sysctl -a 2>/dev/null | grep "accept_ra "
net.ipv6.conf.all.accept_ra = 1
net.ipv6.conf.default.accept_ra = 1
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.eth0.accept_ra = 1
मेरा सवाल अब यह है: मुझे इनमें से कौन से मूल्यों को बदलने की आवश्यकता है? मुझे लगा all
(सभी मौजूदा इंटरफेस default
को बदलने के लिए ) और (बाद में प्रकट होने वाले सभी नए इंटरफेस को बदलने के लिए), लेकिन इनको बदलने से अभी भी लो और एथ0 के लिए 1 पर मूल्य छोड़ देता है:
iserv ~ # sysctl -w net.ipv6.conf.all.accept_ra=0
net.ipv6.conf.all.accept_ra = 0
iserv ~ # sysctl -w net.ipv6.conf.default.accept_ra=0
net.ipv6.conf.default.accept_ra = 0
iserv ~ # sysctl -a 2>/dev/null | grep "accept_ra "
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.eth0.accept_ra = 1
क्या मशीन अब eth0 पर राउटर विज्ञापन स्वीकार करेगी, या नहीं करेगी?