मेरी ISP ने अभी IPv4 / IPv6 दोहरी स्टैक सेवा शुरू की है। IPv4 / IPv6 इंटरनेट को जोड़ने के लिए, लगभग सभी उपयोगकर्ता आमतौर पर ISP द्वारा पट्टे पर CPE का उपयोग करते हैं। लेकिन मैं ऐसे सीपीई के बजाय अपने लिनक्स राउटर का उपयोग करना चाहता हूं, क्योंकि मेरे राउटर में बहुत सारी भूमिकाएं हैं (बहुत सारे iptables नियम और 3 ईथरनेट इंटरफेस, http रिवर्स प्रॉक्सी, http कैश, मेमकाटेड, smtp / पॉप सर्वर और DNS प्रॉक्सी)। मैं इसे IPv4 / IPv6 डुअल स्टैक राउटर बनने देना चाहता हूं।
मेरा राउटर
- CentOS6.0 i686
- वैन के लिए eth0
- LAN के लिए eth1,2
- ISC dhcp (संस्करण 4.1.1) CentOS- अपडेट रेपो से "# yum install dhcp" द्वारा स्थापित
- radvd (संस्करण 1.6) CentOS- बेस रेपो से "# yum install radvd" द्वारा स्थापित
- [संपादित करें] ISC dhclient का उपयोग करने का कारण यह है कि मेरे राउटर को अपने विशिष्ट और अनुरोध संदेशों में एक DHCPv6 विकल्प १६ (विक्रेता वर्ग) भेजना है, ताकि विक्रेता-विशिष्ट-जानकारी विकल्प प्राप्त हो सके जिसमें कुछ पीपीपी-विशिष्ट informations शामिल हैं ( एसआईपी फोन नंबर, फर्मवेयर सर्वर पता)। मुझे पता है कि ISC dhclient में विकल्प 16 कैसे सेट किया जाता है, लेकिन इसे WIDE-dhcpv6 में नहीं जानते। और मुझे ISC dhclient में "id-assoc" जैसी सेटिंग्स नहीं मिल सकती हैं।
मेरा लक्ष्य
- / 48 उपसर्ग डीएचसीपी 6-पीडी (डीएचसीपी 6 प्रीफिक्स डेलिगेशन) क्लाइंट (dhclient) eth0 पर दिया गया है।
- एक IPv6 डिफ़ॉल्ट मार्ग ISP की ओर निर्धारित है। मुझे आईएसपी के डीएचसीपीवी 6 सर्वर के लिंक-स्थानीय पते को एक डिफ़ॉल्ट मार्ग के रूप में मानना है।
- एक / 64 सबनेट और एक वैश्विक पता (जो प्रत्यायोजित उपसर्ग में हैं) प्रत्येक LAN I / F (eth1 / eth2) को सौंपा गया है।
- eth1 और eth2 पर radvd आरए को सौंपे गए / 64 सबनेट के आधार पर घोषित करता है।
- eth1 और eth2 पर dhcpd6, ISP के DHCPv6 सर्वर से प्राप्त अतिरिक्त नेटवर्क जानकारी (नाम-सर्वर, डोमेन-खोजकर्ता और सिप-सर्वर-पते) की घोषणा करता है।
मेरा वर्तमान विन्यास
/ Etc / sysconfig / network
NETWORKING=yes
HOSTNAME=xxx.yyy.zzz
# Enable IPv6 routing and stop accept_ra/autoconf.
IPV6FORWARDING=yes
/ Etc / sysconfig / network-scripts / ifcfg-eth0
DEVICE="eth0"
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
# Enable DHCPv6-PD client.
DHCPV6C=yes
DHCPV6C_OPTIONS="-P -cf /etc/dhcp/dhclient6.conf"
# Disable make_resolv_conf function in /sbin/dhclient-script.
PEERDNS=no
/etc/dhcp/dhclient6.conf
script "/sbin/dhclient-script";
interface "eth0" {
send dhcp6.reconf-accept;
also request dhcp6.vendor-opts, dhcp6.sip-servers-names, dhcp6.sip-servers-addresses, dhcp6.sntp-servers;
}
परिणाम
"# सेवा नेटवर्क पुनरारंभ" के बाद, DHCPv6-PD क्लाइंट सफलतापूर्वक समाप्त होने लगता है।
lease6 {
interface "eth0";
ia-pd xx:xx:xx:xx {
starts 1312464004;
renew 7200;
rebind 10800;
iaprefix 24xx:xxxx:xxxx::/48 {
starts 1312464004;
preferred-life 12600;
max-life 14400;
}
}
option dhcp6.client-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.server-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.reconf-accept ;
option dhcp6.sip-servers-addresses 24xx:xxxx:xxxx:xxxx::1;
option dhcp6.name-servers 24xx:xxxx:xxxx:xxxx::3,24xx:xxxx:xxxx:b::3;
option dhcp6.domain-search "xxx.jp.", "yyy.jp.";
option dhcp6.sntp-servers 24xx:xxxx:xxxx:xxxx::a,24xx:xxxx:xxxx:b::b;
}
सवाल
DHCPv6-PD क्लाइंट सफलतापूर्वक सौंप दिया गया है / 48 उपसर्ग। लेकिन उसके बाद,
- राउटर की रूटिंग टेबल में IPv6 डिफ़ॉल्ट मार्ग कैसे सेट करें?
- प्रत्यायोजित उपसर्ग के आधार पर प्रत्येक LAN I / F (eth1 और eth2) में एक वैश्विक IPv6 पता और / 64 सबनेट कैसे निर्दिष्ट करें?
- प्रत्येक LAN I / F (eth1 और eth2) पर RA की घोषणा करने के लिए radvd को कैसे ट्रिगर किया जाए?
- ISP के DHCPv6 सर्वर से प्राप्त अतिरिक्त नेटवर्क जानकारी (नाम-सर्वर, डोमेन-खोजकर्ता और सिप-सर्वर-पते) की घोषणा करने के लिए प्रत्येक LAN I / F पर DHCPv6 सर्वर (dhcpd6) को कैसे ट्रिगर किया जाए?
मेरा अनुमान
"$ आदमी dhclient" और "$ man dhclient-script" के अनुसार, dhclient-script का उपयोग ऐसी सेटिंग्स को कॉन्फ़िगर करने के लिए किया जाता है, और यह कुछ हुक प्रदान करता है। लेकिन अब, यह DHCPv6-PD क्लाइंट के लिए कुछ नहीं करता है।
हां, मुझे अपने DHCPv6-PD वातावरण के लिए उपयुक्त कुछ स्क्रिप्ट लिखनी पड़ सकती हैं, हालांकि मैं IPv6 नेटवर्क कॉन्फ़िगरेशन से परिचित नहीं हूं। किसी ने मुझे dhclient-script में उपरोक्त सेटिंग्स बताईं? [EDIT] मैं व्यावहारिक dhclient-script जानना चाहता हूं।
और मुझे चिंता है, कुछ विशेष ध्यान रखना चाहिए। उदाहरण के लिए, क्योंकि प्रत्येक IPv6 पते ने जीवनकाल को प्राथमिकता दी है / मान्य है, जब मैं प्रत्यायोजित उपसर्ग के आधार पर LAN इंटरफ़ेस में एक वैश्विक IPv6 पता निर्दिष्ट करता हूं, तो मुझे न केवल एक IPv6 पता, बल्कि इसके जीवनकाल को भी निर्दिष्ट करना होगा जो प्रतिनिधि से प्राप्त होना चाहिए उपसर्ग के पसंदीदा / वैध जीवनकाल?
इसके अलावा, LAN इंटरफेस पर radvd और DHCPv6 सर्वर को DHCPv6 री-कॉन्फ़िगरेशन होने पर फिर से कॉन्फ़िगर करना पड़ सकता है? किस हुक का उपयोग किया जाना चाहिए?
[संपादित करें] जब डीएचसीपीवी ६ पुनः कॉन्फ़िगरेशन होता है, तो नई और अप्रचलित सूचना दोनों की घोषणा कैसे करें? radvd स्वचालित रूप से पिछले उपसर्ग की घोषणा अप्रचलित है? DHCPv6 सर्वर स्वचालित रूप से घोषणा करता है कि पिछले नाम-सर्वर अप्रचलित हैं?