Mon FAI vient de démarrer le service double pile IPv4 / IPv6. Afin de se connecter à Internet IPv4 / IPv6, presque tous les utilisateurs utilisent généralement un CPE loué par le FAI. Mais je veux utiliser mon routeur Linux au lieu d'un tel CPE, car mon routeur a tellement de rôles (beaucoup de règles iptables et 3 interfaces Ethernet, proxy inverse http, cache http, memcached, serveur smtp / pop et proxy DNS). Je veux que ce soit un routeur double pile IPv4 / IPv6.
Mon routeur
- CentOS6.0 i686
- eth0 pour WAN
- eth1,2 pour LAN
- DHCP ISC (version 4.1.1) installé par "# yum install dhcp" à partir du dépôt CentOS-updates
- radvd (version 1.6) installé par "# yum install radvd" de CentOS-base repo
- [MODIFIER] La raison pour laquelle j'utilise dhclient ISC est que mon routeur doit envoyer une option DHCPv6 16 (classe de fournisseur) dans ses messages de sollicitation et de demande, afin d'obtenir une option d'informations spécifiques au fournisseur qui inclut des informations spécifiques au FAI ( Numéro de téléphone SIP, adresse du serveur du firmware). Je sais comment définir l'option 16 dans dhclient ISC, mais je ne le sais pas dans WIDE-dhcpv6. Et je ne trouve pas de paramètres tels que "id-assoc" dans dhclient ISC.
Mon but
- Le préfixe / 48 est délégué au client DHCPv6-PD (délégation de préfixe DHCPv6) (dhclient) sur eth0.
- Une route IPv6 par défaut est définie vers ISP. Je dois considérer l'adresse de liaison locale du serveur DHCPv6 du FAI comme une route par défaut.
- Un sous-réseau / 64 et une adresse globale (qui se trouvent dans le préfixe délégué) sont attribués à chaque LAN I / F (eth1 / eth2).
- radvd sur eth1 et eth2 annonce RA sur la base du sous-réseau / 64 attribué.
- dhcpd6 sur eth1 et eth2 annonce des informations réseau supplémentaires (serveurs de noms, liste de recherche de domaine et adresses de serveurs sip) reçues du serveur DHCPv6 du FAI.
Ma configuration actuelle
/ 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;
}
Résultat
Après "# redémarrage du réseau de service", le client DHCPv6-PD semble se terminer avec succès.
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;
}
Question
Le client DHCPv6-PD est délégué / 48 préfixe avec succès. Mais après ça,
- Comment définir une route par défaut IPv6 dans la table de routage du routeur?
- Comment attribuer une adresse IPv6 globale et un sous-réseau / 64 à chaque LAN I / F (eth1 et eth2) en fonction du préfixe délégué?
- Comment déclencher radvd pour annoncer RA sur chaque LAN I / F (eth1 et eth2)?
- Comment déclencher le serveur DHCPv6 (dhcpd6) sur chaque LAN I / F pour annoncer des informations réseau supplémentaires (serveurs de noms, liste de recherche de domaine et adresses de serveurs SIP) reçues du serveur DHCPv6 du FAI?
Ma conjecture
Selon "$ man dhclient" et "$ man dhclient-script", dhclient-script semble être utilisé pour configurer de tels paramètres, et il offre quelques crochets. Mais maintenant, cela ne fait rien pour le client DHCPv6-PD.
Oui, je devrai peut-être écrire des scripts adaptés à mon environnement DHCPv6-PD, bien que je ne sois pas familier avec les configurations réseau IPv6. Quelqu'un m'a fait connaître les paramètres ci-dessus dans dhclient-script? [EDIT] Je veux connaître le script dhclient pratique.
Et je m'inquiète, une attention particulière doit être prise. Par exemple, parce que chaque adresse IPv6 a une durée de vie préférée / valide, lorsque j'attribue une adresse IPv6 globale à une interface LAN basée sur le préfixe délégué, je dois attribuer non seulement une adresse IPv6 mais aussi ses durées de vie qui doivent être dérivées du délégué durée de vie préférée / valide du préfixe?
En outre, le radvd et le serveur DHCPv6 sur les interfaces LAN peuvent devoir être reconfigurés lors de la reconfiguration DHCPv6? Quel crochet utiliser?
[EDIT] Lorsque la reconfiguration DHCPv6 se produit, comment annoncer des informations nouvelles et obsolètes? radvd annonce automatiquement que le préfixe précédent est obsolète? Le serveur DHCPv6 annonce automatiquement que les serveurs de noms précédents sont obsolètes?
J'utilise le client DHCPv6 WIDE, plutôt que ISC, donc je ne sais pas comment le faire spécifiquement, mais je m'attends à ce qu'ISC ait quelque chose d'équivalent à cette option de configuration WIDE:
Fondamentalement, vous dites au client DHCP comment attribuer des sous-réseaux aux interfaces internes; la configuration ci-dessus indique "Je reçois 4 bits de préfixe délégués à moi (
sla-len 4
), prenez le premier sous-réseau disponible (sla-id 1
) et affectez-le àeth0
(prefix-interface eth0
).interface
strophes appropriées (il y a de bons exemples dans laradvd.conf
page de manuel pour travailler), et ça marchera.la source
Wombie a donné la même réponse que j'utiliserais pour configurer radv et le routage. Inet6 est conçu pour effectuer une auto-configuration sans avoir besoin d'un serveur DHCP.
Je n'utilise pas DHCPv6 car il peut être géré par radvd et zeroconf. radvd peut être configuré pour fournir des serveurs de noms et peut publier des serveurs à partir de /etc/resolv.conf. De nouvelles versions de radvd ont également implémenté la distribution de listes de recherche.
J'ai configuré avahi-daemon pour distribuer des services de noms et des serveurs aux clients. Vous aurez besoin que les clients puissent faire la découverte des services. Je n'ai pas fait beaucoup de tests de découverte de service car j'exécute un réseau double pile sur toute la ligne.
la source