web-dev-qa-db-fra.com

Comment configurer RADVD, DHCPD6, Routing et / 64 Subnet basé sur le préfixe délégué par le serveur DHCPV6-PD?

Mon ISP vient de démarrer le service IPv4/IPv6 Dual Stack. Afin de connecter Internet IPv4/IPv6, presque tous les utilisateurs utilisent généralement un CPE loué par l'ISP. Mais je veux utiliser mon routeur Linux au lieu d'un tel CPE, car mon routeur a tant de rôles (beaucoup de règles IPTABLES et de 3 interfaces Ethernet, proxy inversé HTTP, cache HTTP, Memcached, SMTP/POP Server et DNS Proxy). Je veux que ce soit un routeur IPv4/IPv6 Dual Stack.

mon routeur

  • Centos6.0 I686
  • eth0 pour wan
  • eTH1,2 pour LAN
  • ISC DHCP (version 4.1.1) installée par "# Yum Install DHCP" de Centos-Updates Repo
  • rADVD (version 1.6) installée par "# Yum Install Radvd" de Centos-Base Repo
  • [EDIT] La raison pour laquelle j'utilise ISC dhclient est que mon routeur doit envoyer une option DHCPv6 16 (classe fournisseur) dans ses messages Solliciter et demande, afin d'obtenir l'option d'information spécifique au fournisseur qui comprend des informations spécifiques ISP ( Numéro de téléphone SIP, adresse du serveur de micrologiciels). Je sais comment définir l'option 16 dans ISC Dhclient, mais je ne le sais pas en large-DHCPV6. Et je ne trouve pas de tels paramètres comme "ID-assoc" dans ISC Dhclient.

mon objectif

  • / 48 Le préfixe est délégué à la clientèle de DHCPV6-PD (DHCPV6 Prefix Délégation) (DHCLIENT) sur Eth0.
  • Un itinéraire par défaut IPv6 est défini vers ISP. Je dois envisager l'adresse link-locale de DHCPV6 du serveur ISP comme voie par défaut.
  • Une/64 sous-réseau et une adresse globale (qui se trouvent dans le préfixe déléguée) sont attribuées à chaque LAN I/F (ETH1/ETH2).
  • rADVD ON ETH1 et ETH2 annonce PR en fonction du sous-réseau attribué/64.
  • dHCPD6 ON ETH1 et ETH2 annonce des informations de réseau supplémentaires (serveurs de noms, listes de surveillance de domaine et serveurs SIP-SIP) reçues du serveur DHCPV6 de l'ISP.

Ma configuration actuelle

/ etc/sysconfig/réseau

NETWORKING=yes
HOSTNAME=xxx.yyy.zzz

# Enable IPv6 routing and stop accept_ra/autoconf.
IPV6FORWARDING=yes

/ etc/sysconfig/réseaux-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 "# Retamination de réseau de service", le client DHCPV6-PD semble 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 cela,

  • Comment définir une route par défaut IPv6 dans la table de routage du routeur?
  • Comment attribuer une adresse IPv6 globale et/64 sous-réseau à 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 serveur DHCPv6 (de dhcpd6) sur chaque réseau local E/F pour annoncer l'information supplémentaire du réseau (serveurs de noms de, domaine LISTERECHERCHEE et SIP-serveurs-adresses) reçues à partir du serveur DHCPv6 de FAI?

ma devinette

Selon "$ homme dhclient" et "$ homme dhclient-script", script Dhclient-script semble être utilisé pour configurer ces paramètres et propose des crochets. Mais maintenant, cela ne fait rien pour le client DHCPV6-PD.

Oui, je devrais peut-être écrire des scripts adaptés à mon environnement DHCPV6-PD, bien que je ne connais pas les configurations réseau IPv6. Quelqu'un m'a laissé savoir les paramètres ci-dessus dans DhClient-Script? [Modifier] Je veux connaître le script DHClient pratique.

Et je m'inquiète, une attention particulière devrait être prise. Par exemple, comme chaque adresse IPv6 a préféré/une durée de vie valide, lorsque j'affecte une adresse IPv6 globale à une interface LAN basée sur le préfixe délégué, je dois céder non seulement une adresse IPv6, mais également sa durée de vie qui doit être dérivée de la déléguée. Les vies préférées/valides du préfixe?

De plus, RADVD et DHCPV6 Server sur les interfaces LAN peuvent devoir être ré-configurés lorsque la ré-configuration DHCPV6 se produit? Crochet qui devrait être utilisé?

[Modifier] Lorsque la ré-configuration DHCPV6 se produit, comment annoncer des informations nouvelles et obsolètes? RADVD annonce automatiquement le préfixe précédent est obsolète? DHCPV6 Server annonce automatiquement les serveurs de noms précédents sont obsolètes?

10
takaomag

Je ne connais pas la réponse à votre question, mais je veux juste vous avertir d'utiliser l'adresse du serveur DHCP comme routeur par défaut. Si cela fonctionne, c'est par hasard ... dans IPv6, la route par défaut est communiquée par RA et non par DHCP.

Vous devrez permettre de transférer, d'accepter RA et d'envoyer des RS. Un problème ici est que le noyau inclus dans Centos6 ne vous permet pas de le faire. Lorsque le transfert est activé, accepter ensuite RA et que l'envoi de RS est désactivé. Il devrait y avoir un noyau Centosplus avec les patchs pertinents cependant. Voir le thread/message de la liste de diffusion à http://lists.ccentos.org/pipermail/cenos/2011-april/thread.html#109756

Les paramètres SYSCTL.CONF pertinents sont:

net.ipv6.conf.all.forwarding=1
net.ipv6.conf.eth0.accept_ra=2
net.ipv6.conf.eth0.accept_ra_defrtr=1
net.ipv6.conf.eth0.router_solicitations=1
4
Sander Steffann
  • Un itinéraire par défaut IPv6 doit être configuré par tout ce qui a obtenu votre connexion Internet par défaut (en amont), avant d'utiliser dhcpv6 PD pour obtenir les sous-réseaux supplémentaires. Vous n'avez pas mentionné comment vous connectez en réalité en amont , donc je ne peux pas vous aider là-bas.
  • J'utilise un large client DHCPV6, plutôt que ISC, donc je ne sais pas comment le faire spécifiquement, mais je m'attends à ce que l'ISC ait quelque chose d'équivalent à cette large option de configuration:

    id-assoc pd {
        prefix-interface eth0 {
            sla-id 1;
            sla-len 4;
        };
    };
    

    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é à moi (sla-len 4), prenez le premier sous-réseau disponible (sla-id 1) et attribuez-le à eth0 (prefix-interface eth0).

  • SETUP RADVD avec approprié interface Stanzas (il y a de bons exemples dans la radvd.conf la page man à des travailleurs), et ça va juste fonctionner.
  • Je ne peux pas vous aider là-bas; Outre les tests, je n'utilise pas le service DHCPV6 (je reçois toutes mes informations DHCP de mon serveur DHCP).
2
womble

Wombie a donné la même réponse que j'utiliserais pour la mise en place de RADV et de routage. INET6 est conçu pour faire 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 annoncer des serveurs de /etc/resolv.conf. Les nouvelles versions de RADVD ont également mis en œuvre 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 de clients de faire la découverte de services. Je n'ai pas fait beaucoup de test de la découverte de service car j'exécute un réseau Dual Stack à travers le tableau.

0
BillThor