Mój dostawca usług internetowych właśnie uruchomił usługę podwójnego stosu IPv4 / IPv6. Aby połączyć się z Internetem IPv4 / IPv6, prawie wszyscy użytkownicy zwykle korzystają z CPE dzierżawionego przez dostawcę usług internetowych. Ale chcę używać mojego routera Linux zamiast takiego CPE, ponieważ mój router ma tak wiele ról (wiele reguł iptables i 3 interfejsy Ethernet, odwrotne proxy http, http cache, memcached, serwer smtp / pop i proxy DNS). Chcę, aby był to router z dwoma stosami IPv4 / IPv6.
Mój router
- CentOS6.0 i686
- eth0 dla WAN
- eth1,2 dla LAN
- ISC dhcp (wersja 4.1.1) zainstalowany przez „# yum install dhcp” z repozytorium aktualizacji CentOS
- radvd (wersja 1.6) zainstalowany przez „# yum install radvd” z repozytorium CentOS-base
- [EDYCJA] Powodem, dla którego używam ISC dhclient jest to, że mój router musi wysyłać opcję DHCPv6 16 (klasa dostawcy) w swoich żądaniach i żądaniach, aby uzyskać opcję informacji specyficznych dla dostawcy, która zawiera pewne informacje specyficzne dla dostawcy usług internetowych ( Numer telefonu SIP, adres serwera oprogramowania układowego). Wiem, jak ustawić opcję 16 w ISC dhclient, ale nie znam tego w WIDE-dhcpv6. I nie mogę znaleźć takich ustawień jak „id-assoc” w ISC dhclient.
Mój cel
- Prefiks / 48 jest delegowany do klienta DHCPv6-PD (Delegowanie prefiksu DHCPv6) (dhclient) na eth0.
- Domyślna trasa IPv6 jest ustawiona na ISP. Muszę rozważyć adres lokalny łącza DHCPv6 serwera ISP jako domyślną trasę.
- Jedna podsieć / 64 i jeden adres globalny (które są w delegowanym prefiksie) są przypisane do każdego LAN I / F (eth1 / eth2).
- radvd na eth1 i eth2 ogłasza RA na podstawie przypisanej podsieci / 64.
- dhcpd6 na eth1 i eth2 ogłasza dodatkowe informacje o sieci (serwery nazw, lista wyszukiwania domen i adresy serwerów sip) otrzymane z serwera DHCPv6 ISP.
Moja obecna konfiguracja
/ 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;
}
Wynik
Po „# zrestartowaniu sieci serwisowej” klient DHCPv6-PD wydaje się kończyć pomyślnie.
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;
}
Pytanie
Klient DHCPv6-PD został pomyślnie delegowany / 48 prefiksów. Ale potem
- Jak ustawić domyślną trasę IPv6 w tabeli routingu routera?
- Jak przypisać globalny adres IPv6 i podsieć / 64 do każdego LAN I / F (eth1 i eth2) na podstawie delegowanego prefiksu?
- Jak uruchomić radvd, aby ogłosić RA na każdym LAN I / F (eth1 i eth2)?
- Jak uruchomić serwer DHCPv6 (dhcpd6) na każdym LAN I / F, aby ogłosić dodatkowe informacje o sieci (serwery nazw, lista wyszukiwania domen i adresy serwerów sip) otrzymane z serwera DHCPv6 ISP?
Zgaduję że
Według „$ man dhclient” i „$ man dhclient-script”, skrypt dhclient wydaje się być używany do konfigurowania takich ustawień i oferuje pewne haki. Ale teraz nic nie robi dla klienta DHCPv6-PD.
Tak, być może będę musiał napisać kilka skryptów odpowiednich dla mojego środowiska DHCPv6-PD, chociaż nie znam konfiguracji sieci IPv6. Czy ktoś dał mi znać powyższe ustawienia w skrypcie dhclient? [EDYCJA] Chcę poznać praktyczny skrypt dhclient.
I martwię się, należy zwrócić szczególną uwagę. Na przykład, ponieważ każdy adres IPv6 ma preferowany / prawidłowy czas życia, kiedy przypisuję globalny adres IPv6 do interfejsu LAN na podstawie delegowanego prefiksu, muszę przypisać nie tylko adres IPv6, ale także jego czasy życia, które muszą pochodzić z przekazanego preferowane / ważne czasy życia prefiksu?
Czy może zajść potrzeba ponownej konfiguracji serwera radvd i DHCPv6 w interfejsach LAN, gdy nastąpi ponowna konfiguracja DHCPv6? Którego haka należy użyć?
[EDYCJA] Kiedy nastąpi ponowna konfiguracja DHCPv6, jak ogłosić zarówno nowe, jak i nieaktualne informacje? radvd automatycznie ogłasza, że poprzedni prefiks jest nieaktualny? Serwer DHCPv6 automatycznie ogłasza, że poprzednie serwery nazw są przestarzałe?