Forum Linux.général ipv6: ping ip privées ok ping ip publique ko

Posté par  . Licence CC By‑SA.
Étiquettes :
1
23
juin
2023

Bon{jour,soir},

Les mystères de l'IPv6 et de son fonctionnement!
La description complète de mon infra perso risque de prendre un peu de temps; mais pour simplifier j'ai ca:

BOX --- (interface A) OPNsense (interface B) --- VM (hebergée sur un Proxmox)

OPNsense est physique, vu depuis la BOX il est en DMZ.

Tout ce qui est configuration IPv6 est en configuration SLAAC.
Ping depuis les adresses publique des interfaces A et B ver du OPNsense vers une adresse publique hors de mon réseau perso: OK
Ping l'adresse privé de l'interface B depuis la VM: OK

Le problème est qu'il m'est impossible de ping n'importe quelle ip publique depuis la VM.

J'ai éliminé tout problème de filtrage puisque ca fonctionne avec les adresses privées.

Le câble virtuel entre le OPNsense et la VM est un vlan, créé au niveaux de l'OPNsense. Il me semble que ca ne peut pas interférer (couche 2 et 3) mais c'est pour information.

J'ai essayé de fixer l'ip publique de la VM, sur l'interface (eth0) et sur une interface virtuelle (eth0:1): même problème.

Est ce quelqu'un saurait d'où peut venir cette magie noire ?

Merci par avance.

  • # ipv6 partout, t'es sur ?

    Posté par  . Évalué à 3.

    es-tu sur que ton operateur te fournit une IPv6 sur ta box ?
    fournit-il aussi un range ipv6 sur lequel mettre tes machines ?

    sinon, c'est ton opensense en A qui est en ipv6 publique, et qui doit convertir en ipv6 privé coté B,

    ou si ton operateur ne fournit pas ipv6 sur ta liaison, il faut que opensense fasse du tunnel 6to4 pour prendre ipv6 coté B, le convertir en ipv4 coté A, aller sur internet en ipv4, et attendre la reponse

    • [^] # Re: ipv6 partout, t'es sur ?

      Posté par  . Évalué à 1.

      merci pour la réponse.

      Oui je suis sure d'avoir une IPv6 en /64; mon FAI est Free.
      Au niveau de la boxe, j'ai même configué les sous réseaux et leur "NextHop".

      C'est à dire que à part pour le premier (le 0) tous ont comme NextHop l'IPv6 privée de l'interface A de l'OPNsense.

      Ma première idée était de configurer à la main (en static) toute la configuration IPv6 du vlan de la VM, mais là aussi sa ne "pingait" pas. :(

      • [^] # Re: ipv6 partout, t'es sur ?

        Posté par  . Évalué à 4.

        en fait avec le /64 de free, tu dois avoir les memes IPs chez toi en IPV6 en changeant juste le dernier chiffre

        exemple avec l'ipv6/64 suivante 2001:0DB8:ABCD:0012::/64
        tu disposes des IPs suivantes :
        2001:0DB8:ABCD:0012:0000:0000:0000:0000 à 2001:0DB8:ABCD:0012:FFFF:FFFF:FFFF:FFFF

        toutes tes machines doivent donc etre derriere ce 2001:0DB8:ABCD:0012

        sinon tu fais un ipv6 public coté A (freebox, opensense) l'opensense n'a pas besoin d'etre DMZ car c'est pour l'usage en IPv4, et un ipv6 coté B (tes machines et opensense)

        mais faudra alors gerer du "NAT en IPv6" pour cacher tes machines virtuelles
        pas sur que ce soit la meilleure idée,
        il vaudrait mieux mettre tes VMs en 2001:0DB8:ABCD:0012:x:y et juste faire firewall avec l'opensense, sans NAT

        • [^] # Re: ipv6 partout, t'es sur ?

          Posté par  . Évalué à 1. Dernière modification le 23 juin 2023 à 18:58.

          exemple avec l'ipv6/64 suivante 2001:0DB8:ABCD:::/64
          tu disposes des IPs suivantes :
          2001:0DB8:ABCD:0012:0000:0000:0000:0000 à 2001:0DB8:ABCD:0012:FFFF:FFFF:FFFF:FFFF

          Alors oui mais pas que, si j'ai bien compris Free attribue plutôt un /61.
          Pour que cela soit un peu plus simple je prend comme exemple: 2001:db8:abcd:abc0:0:0:0:0/61
          De ce faite, je dispose bien du 2001:db8:abcd:abc0:0:0:0:0/64.
          Avec par exemple l'ip de la BOX 2001:db8:abcd:abc0:0:0:0:1/64 (fe80::1) et celle de l'OPNsense 2001:db8:abcd:abc0:0:0:0:2/64 (fe80::2)

          Et dans les paramètres avancés de la BOX (Paramètres de la Freebox, mode avancé, configuration IPv6, onglet général); je peux configurer le "next hop" pour les réseaux suivant:

          2001:db8:abcd:abc0:0:0:0:0/64
          2001:db8:abcd:abc1:0:0:0:0/64
          2001:db8:abcd:abc2:0:0:0:0/64
          2001:db8:abcd:abc3:0:0:0:0/64
          2001:db8:abcd:abc4:0:0:0:0/64
          2001:db8:abcd:abc5:0:0:0:0/64
          2001:db8:abcd:abc6:0:0:0:0/64
          2001:db8:abcd:abc7:0:0:0:0/64

          A tous ces sous réseaux(sauf le abc0 *), j'ai attribué next hope = fe80::2.
          Donc théoriquement mon OPNsense devrait être capable de distribuer les 7 sous réseaux.

          *: Pour le abc0, il est précisé dans la Freebox:

          Attention si vous configurez un Next Hop pour le premier subnet, il ne sera plus annoncé par la Freebox sur votre réseau. Cela empêchera les appareils dépendant d’IPv6 de fonctionner sans un routeur tiers qui gère ce subnet.

          Le but initiale était d'attribué le abc1, à un sous réseaux / VLAN "VM publique".

          sinon tu fais un ipv6 public coté A (freebox, opensense) l'opensense n'a pas besoin d'etre DMZ car c'est pour l'usage en IPv4, et un ipv6 coté B (tes machines et opensense)

          Ma faute, je n'aurais pas du mentionner la DMZ, avec les box grand publique on ne peut attribuer qu'une seul IPv4 en DMZ. En l'ocurence c'est l'IPv4 de l'OPNsense. Tout ce qui n'est donc pas explicitement envoyé à la box est donc envoyé à celui-ci et je peux mettre en place des règles de NAT / FW sans problème.

          mais faudra alors gerer du "NAT en IPv6" pour cacher tes machines virtuelles
          pas sur que ce soit la meilleure idée,
          il vaudrait mieux mettre tes VMs en 2001:0DB8:ABCD:0012:x:y et juste faire firewall avec l'opensense, sans NAT

          Le truc, c'est que j'ai simplifié volontairement mon réseau. En réalité, mon serveur proxmox dispose de 2 carte réseaux, j'ai attribué l'une d'elle exclusivement au réseaux administration et je fais passer par l'autre tout les VLAN vlan-defaut, vlan-test, vlan-cluster-k8s, vlan-publique. Les autres PC bureautique sont sur les autres ports physique de l'OPN.
          Pour tout ces vlan (sauf le publique) et les autres port de cet OPN, j'ai désactivé la configuration IPv6, donc pas de problème à ce niveau.
          Par contre pour le vlan-publique, la VM étant une VM auto-hebergement Debian/Yunohost , le but est donc justement quelle soit joinable publiquement.
          Jusqu'à présent elle est joinable en IPv4 grâce à du NAT sur le OPNsense, mais j'aimerais bien quelle le soit aussi en IPv6 … et là je sèche.

          Comme dit plus haut dans un premier temps j'ai voulu que la VM soit en 2001:db8:abcd:abc1:0:0:0:0/64, mais au vu des problèmes rencontrés, je me suis dit mets tout en configuration automatique (donc avec le 2001:db8:abcd:abc0:0:0:0:0/64) et vois si cela fonctionne mieux … mais manque de bol : NON !

          En passant question: l'interface B (opnsense - vm) de l'opn doit elle obligatoirement avoir une IPv6 publique pour que la VM soit joinable publiquement ?

        • [^] # Re: ipv6 partout, t'es sur ?

          Posté par  . Évalué à 1.

          Je continue mon blabla de ci-dessus.
          Je viens de me rendre compte que comme d'habitude je suis en train de compliquer le schmilblick. Théoriquement je devrais pouvoir faire du NAT IPv6 en précisant l'adresse privée de la VM pour que les services http & co soient joiniable depuis l'Internet.

          C'est pas vraiement ce que je veux faire, puique un des but d'IPv6 est que justement toutes les machines puissent avoir un adresse publique qui leur est propre mais bon si ca fonctionne, ca sera déjà pas mal.

          Par contre je veux bien que l'on m'explique le truc du ping qui fonctionne avec les Ipv6 privées mais pas publique, sur le même réseaux, sans parfeux entre, même tuyau !

          Merci :)

          • [^] # Re: ipv6 partout, t'es sur ?

            Posté par  . Évalué à 2.

            Salut,

            Je ne pourrai pas vous aider sur la partie OPNsense mais votre postulat initial était correct. Ici, j'ai fait qq chose d'équivalent avec openwrt.

            Free vous attribut plusieurs réseaux ipv6 /64
            gardez le premier sous réseau pour la box et le wan6 du OPNsense.
            indiquez l'adresse de lien local wan6 du OPNsense comme nexthop pour les autres sous-réseaux.

            Vous devez filtrer ou ne pas relayer les Router Advertisements ( voir icmpv6). Regardez coté firewall et aussi radvd.

            ( Après cela, bascule de la box en bridge ;-) )

            • [^] # Re: ipv6 partout, t'es sur ?

              Posté par  . Évalué à 1.

              A --- OPNsense --- B

              Je me suis trompé SLAAC ne fonctionne pas sur la B, c'est la méthode Track Interface qui fonctionne. Mais dans la documentation, il est précisé "You can use this mode for WAN connections only."

              De plus en remettant une IPv6 à la main sur l'interface B:

              Ping6:

              B publique vers A publique : OK
              B privée vers A privée : KO

              A publique vers B publique : KO
              A publique vers B publique : KO

              Donc les Router Advertisements ne passe visiblement pas.

              En ce qui concerne les ping des adresses privées à travers les interfaces, c'est normale qu'on puisse pas non ? Les privées ne passe pas les routeurs, si ?!

              • [^] # Re: ipv6 partout, t'es sur ?

                Posté par  . Évalué à 2.

                En ce qui concerne les ping des adresses privées à travers les interfaces, c'est normale qu'on puisse pas non ? Les privées ne passe pas les routeurs, si ?!

                En effet

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.