Forum Linux.noyau 2 Vlan, 1 reseau local et du routage : bug du kernel?

Posté par (page perso) .
Tags : aucun
0
22
mai
2007
Bonjour,

Voici la problematique sur laquelle je me tire les cheveux depuis quelques jours.

J'ai mon fournisseur d'acces qui me donne une connexion Wimax avec 2 VLAN:

2119 : pour la voix
2311 : pour les donnees

J'ai une debian avec la config suivante :

/etc/network/interface :
allow-hotplug eth0.2219
auto eth0.2219
iface eth0.2219 inet static
address 10.150.21.88
netmask 255.255.255.240
network 10.150.21.80
broadcast 10.150.21.95
gateway 10.150.21.81

allow-hotplug eth0.2311
auto eth0.2311
iface eth0.2311 inet static
address 84.16.28.xx
netmask 255.255.255.xx
network 84.16.28.xx
gateway 84.16.28.xx

allow-hotplug eth1
auto eth1
iface eth1 inet static
address 192.168.1.40
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

Les routes configurees :
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
84.16.28.36 * 255.255.255.252 U 0 0 0 eth0.2311
localnet * 255.255.255.240 U 0 0 0 eth0.2219
192.168.1.0 * 255.255.255.0 U 0 0 0 eth1
10.0.0.0 10.150.21.81 255.0.0.0 UG 0 0 0 eth0.2219
default 84.16.28.37 0.0.0.0 UG 0 0 0 eth0.2311
default 10.150.21.81 0.0.0.0 UG 0 0 0 eth0.2219


J'ai un noyau 2.6.18-3-686 (celui de la etch)

Alors voila le probleme :
Je suis sur mon PC, j'ai la passerelle 192.168.1.40. Je ping 212.217.0.1, pas de problemes ca sort par 2311 et j'ai un bon retour du ping.

Je telephone a partir de l'asterisk sur la machine, mes lignes fournies par le provider fonctionne bien.

Donc la tout est parfait.

Par contre si je fais un ping (eth0.2311) et que j'essaye de telephoner pendant le ping (eth0.2219) et bien le flux UDP ne passe pas

Si je telephone, le flux udp passe (eth0.2219) et si je fais un ping pendant l'appel (eth0.2311) et bien pas de reponse. Je raccroche le telephone est tout est ok !!!

Alors je ne sais pas si j'ai des regles de routage foireuse (ce qui m'étonnes c'est que ca marche quand je ne fais pas du simultane) ou alors si c'est un bug du kernel ???!!!

Si quelqu'un peut m'aider car la je perds la tete....

Merci d'avance
  • # ...

    Posté par . Évalué à 6.

    default 84.16.28.37 0.0.0.0 UG 0 0 0 eth0.2311
    default 10.150.21.81 0.0.0.0 UG 0 0 0 eth0.2219

    Hum, 2 routes par defaut, c'est bon pour avoir des emerdes...
    • [^] # Re: ...

      Posté par (page perso) . Évalué à 1.

      Meme quand je fais une route uniquement pour le 10.0.0.0 vers 10.150.21.81 ca ne donne rien... Toujours le meme probleme.

      Je viens d'activer les log_martian pour voir si je peux diagnostiquer plus finement
      • [^] # Re: ...

        Posté par . Évalué à 1.

        Ce qui est sur c'est qu'il ne te faut pas de route par défault vers la téléphonie. D'ailleur le réseau 10.150.21.80 est un sous-reseau du reseau 10.0.0.0/8 qui fait partie de l'adressage privé.
        Donc je te conseille de faire une route pour tout le reseau 10 sur ce VLAN.
        Ensuite pour le problème du ping essaye telephoner tout en pingeant mes en forçant ton ip source.

        Ping 216.239.59.104 -I 84.16.28.xx

        Tu peut faire une capture avec Wireshark pour controlé au passage.
        Il est possible que Linux n'utilise pas la bonne source adresse.

        Après en fonction du diagnostique on pourra trouver une solution.
        • [^] # Re: ...

          Posté par (page perso) . Évalué à 1.

          Merci de ta reponse donc voici les nouvelles routes :

          212.217.0.1 84.16.28.37 255.255.255.255 UGH 0 0 0 eth0.2311
          10.0.0.0 10.150.21.81 255.0.0.0 UG 0 0 0 eth0.2219

          Je lance un appel, la voix fonctionne, donc j'ai un gros traffic udp sur eth0.2219.

          Par contre quand je fais un ping 212.217.0.1 ca donne :
          09:13:20.368888 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 18, length 64
          09:13:21.368857 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 19, length 64
          09:13:22.368828 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 20, length 64
          09:13:23.368806 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 21, length 64

          Et des que je raccroche
          09:13:23.436643 IP (tos 0x0, ttl 58, id 14575, offset 0, flags [none], proto: ICMP (1), length: 84) 212.217.0.1 > 84.16.28.xx: ICMP echo reply, id 44049, seq 21, length 64
          09:13:24.368765 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 22, length 64
          09:13:24.431081 IP (tos 0x0, ttl 58, id 14576, offset 0, flags [none], proto: ICMP (1), length: 84) 212.217.0.1 > 84.16.28.xx: ICMP echo reply, id 44049, seq 22, length 64
          09:13:25.372744 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 23, length 64
          09:13:25.446564 IP (tos 0x0, ttl 58, id 14577, offset 0, flags [none], proto: ICMP (1), length: 84) 212.217.0.1 > 84.16.28.xx: ICMP echo reply, id 44049, seq 23, length 64
          09:13:26.376721 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: ICMP (1), length: 84) 84.16.28.xx > 212.217.0.1: ICMP echo request, id 44049, seq 24, length 64
          09:13:26.446176 IP (tos 0x0, ttl 58, id 14578, offset 0, flags [none], proto: ICMP (1), length: 84) 212.217.0.1 > 84.16.28.xx: ICMP echo reply, id 44049, seq 24, length 64

          Donc des que je raccroche et bien le ping se met a fonctionner...

          Je pense a un bug du noyau mais bon....
          • [^] # Re: ...

            Posté par (page perso) . Évalué à 2.

            Sachant que j'utilise plusieurs machines connectées chacunes à au minimum 3 vlan (8 pour la machine de supervision) s'il y avait un bug sur le 8021q (à ce niveau là) je le saurait.

            Sinon tu dit que quand tu lance un appel tu à un gros traffic réseau ... on n'utilise peut-être pas les mêmes codecs mais un flux VoIP > 32kbps (4Ko/s) ça me parait douteux.
            La question amha est:
            1/ quel est la bande passante disponible sur ton lien WiMAX
            2/ quel est le RTT ('ping') de ton lien WiMAX
            3/ à tu des règles de trafic shaping (toi ou sur le périphérique WiMAX)

            amha le problème n'est pas de ton coté.

            PS: Je dit à ce niveau là car effectivement du vlan + du bonding + xen en configuration réseau 'basique' la ça bug sauvagement.
            • [^] # Re: ...

              Posté par (page perso) . Évalué à 1.

              Quand je dis un gros traffic c'est en terme de paquets UDP. J'utilise du G729 donc je suis au alentous de 4ko/s

              La bande passante du wimax est 2mbits/s symetrique

              ping 212.217.0.1
              PING 212.217.0.1 (212.217.0.1) 56(84) bytes of data.
              64 bytes from 212.217.0.1: icmp_seq=1 ttl=58 time=76.2 ms
              64 bytes from 212.217.0.1: icmp_seq=2 ttl=58 time=74.0 ms
              64 bytes from 212.217.0.1: icmp_seq=3 ttl=58 time=75.0 ms

              Pas de traffic shapping de mon cote. Du cote Wimax du traffic shapping cote lien voix. Par contre ce que je ne comprends pas c'est que si j'utilise un switch manageable et bien la je n'ai pas de probleme de routage....
              • [^] # Re: ...

                Posté par (page perso) . Évalué à 2.

                Quand tu dit qu'avec un switch manageable tu n'a pas de problème, c'est
                que tu utilise ton switch en routeur ? ou que tu decoupe le flux sur deux
                carte sur ton routeur ?

                Avec ces informations je pencherais pour un défaut matériel et/ou du driver de ta carte réseau.
                • [^] # Re: ...

                  Posté par (page perso) . Évalué à 1.

                  J'installe un switch Zyxel Es-2108.

                  Le port un est configure en trunk. Je branche la connexion Wimax

                  Le port 1 est une connexion sur le VLAN 2219. Je branche mon IPBX

                  Le port 2 est une connexion sur le VLAN 2311. Je branche mon ordinateur portable

                  Et la tout marche en simultane....

                  Je ne comprends vraiment pas ce qui se passe avec linux :(((

                  La configuration de la carte reseau en trunk est differente de ce que j'ai fait?

Suivre le flux des commentaires

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