Auteur Sujet: Débutant - besoin d'un petit coup de pouce  (Lu 6904 fois)

0 Membres et 1 Invité sur ce sujet

Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« le: 13 avril 2016 à 15:55:41 »
Hello,

voilà, je vous expose un peu mon cas (pas désespéré j'espère!) :

je fouille dans ce forum riche en infos depuis environ 2 semaines, en prévision de mon passage à la fibre (qui s'est fait jeudi dernier).
Mon niveau technique est bon (de par mon boulot), et je me débrouille toujours pour apprendre les trucs que je ne sais pas faire, et je n'ai pas peur de mettre les mains dans le cambouis.
Mais je ne suis pas expert réseau (j'ai les bases niveau adressage routage vlans...) et surtout je ne le suis vraiment pas pour tripatouiller dans les fichiers du routeur (je sais comment utiliser une CLI en ssh, envoyer/récupérer des fichiers .boot .sh etc, mais ensuite je suis vite bloqué par des manips "basiques" évoquées ici, voir plus bas...)

Je me lance là-dedans car j'ai besoin de fonctions réseau un peu plus avancées que la LB, et aussi par curiosité intellectuelle, pour apprendre un nouveau truc, justement.

J'ai réussi à localiser a priori les infos dont j'avais besoin pour mettre mon ERL au cul de l'ONT (en gardant la LB derrière pour TV+tel). Je suis en DHCP, pas PPPoE (et ipv4 me suffit).
Comme dit, pas de souci (a priori) pour monter/loader/sauver une config.
Par contre, pour les étapes supplèmentaires, je suis pas sûr de mon coup :

- concernant la manip à faire dans vyatta-interfaces.pl pour l'option 90, comment doit-on faire pour modifier ce fichier ?
j'ai sauvegardé le fichier d'origine sur mon poste. J'en ai créé une copie modifiée avec la ligne nécessaire, mais je n'arrive pas à le monter (permission denied, peut-être pcq je n'ai pas les droits pour écraser avec un simple pscp)
Dois-je d'abord supprimer l'ancien ? Et dois-je ensuite définir des propriétés ? (si oui, quelle est la commande?)
Est-ce seulement la bonne manière de faire ?
L'autre méthode ici n'est pas claire pour moi non plus, est-ce un script à monter et exécuter ? (comment ?)

- au cas où chez moi il faille fixer la CoS à 6 pour obtenir une IP (voir ici ), j'ai les mêmes interrogations pour "remplacer /sbin/dhclient3..." et "S'assurer qu'il a les droits d'exécution".

Voilà, désolé pour ces questions de noob, mais ça m'intéresse vraiment de m'y mettre !

Donc merci d'avance de vos réponses et de votre patience !  :)

renaud07

  • Abonné Orange adsl
  • *
  • Messages: 3 423
Débutant - besoin d'un petit coup de pouce
« Réponse #1 le: 13 avril 2016 à 17:52:10 »
Salut,

Pour la copie des fichiers, en effet il faut ruser. Par défaut le compte root n'étant pas activé, tu ne peux passer des commandes que via sudo, hors avec pscp tu ne peux pas le spécifier. La solution est donc de copier le fichier dans le home ubnt et ensuite de le déplacer avec sudo mv. Ou sinon il faut définir un mot de passe root pour se connecter directement.

Pour le patch, en effet c'est un script à exécuter, mais si tu as déjà fait la modif du fichier à la main, pas besoin de le faire.

Pour les droits d'exécution pour dhclient3 c'est chmod +x /chemin/vers/dhclient Néanmoins, si c'est nécessaire dans ton je te conseille l'achat d'un switch (comme le GS108Tv2 de netgear 100% compatible pour la CoS) c'est quand même beaucoup plus simple, car il n'y a pas à modifier dhclient, ce qui évite les problèmes lors des mises à jour.

Pour travailler en root, tapes sudo -i
« Modifié: 13 avril 2016 à 19:32:31 par renaud07 »

Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« Réponse #2 le: 13 avril 2016 à 19:55:48 »
Salut, merci pour ta réponse !

ah oui, copier ailleurs et déplacer avec sudo, j'y avais pas pensé.

OK je vais faire comme ça, mais pour ma culture perso, le script modif-os.patch faut le lancer comment ? Faut le mettre à un emplacement particulier ?
Moi je l'avais mis dans /config et lancé par . /config/modif-os.patch (en mode opérationnel, pas configuration, et pas sudo) et ça m'avait renvoyé des erreurs genre "unknown command ---" etc
et d'ailleurs, maintenant que je regarde le code, il a pas l'air complet, ce script sur github...

Oui, pour le routeur j'ai vu, je pense en effet que si c'est nécessaire je l'achèterai, mais je voulais déjà faire marcher le truc.
Je pense que pour remettre l'ancien c'est la même manip, mais avec le fichier d'origine ?

D'ailleurs c'est pareil, pour dhclient3, faut d'abord le coller ailleurs et le déplacer en sudo ?

J'essaierai tout ça demain...
Là, pour la petite anecdote, je reviens de chez orange où j'ai échangé ma livebox... j'en avais une avce les problèmes de crash / reboot qui bloque etc...  ::)  ;D

renaud07

  • Abonné Orange adsl
  • *
  • Messages: 3 423
Débutant - besoin d'un petit coup de pouce
« Réponse #3 le: 13 avril 2016 à 21:14:11 »
En y réfléchissant, je pense pas que ce soit un script classique en fait, mais un truc spécifique à ubiquity. Donc c'est visiblement pas comme ça qu'il faut l'appliquer. Mais sinon y'a juste une ligne à ajouter :
$output .= "option rfc3118-authentication code 90 = string;\n\n";
Pour déplacer dhclient, oui c'est la même chose.

Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« Réponse #4 le: 13 avril 2016 à 21:19:57 »
Yes, merci ! ;)

Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« Réponse #5 le: 14 avril 2016 à 12:13:01 »
Encore quelques incertitudes rapport aux différentes versions de configs (parties présentes ou absentes) postées ici et là par TheGibbs, MikeFreeman, renaud07 et sur github entre autres.
Y a pas mal de points, mais ça me permettra de bien comprendre ce que je fais là où je ne suis pas sûr, plutôt que de copier bêtement... :)

Des "oui/non" iront bien, un "pourquoi" rapide sera un bonus apprécié ! ;)

dans ma situation (dhcp ipv4, Livebox[Tel+TV] ) :

1. Ai-je besoin de ça, dans firewall {} ?
    options {
        mss-clamp {
            mss 1452
        }
    }

2. Ai-je besoin de ça dans les bridges 0 et 1 (838 & 840) dans interfaces {} ?
        aging 300
        bridged-conntrack disable
        hello-time 2
        max-age 20
        priority 0
        promiscuous disable
        stp false

3. de ça dans interfaces { ethernet eth1 { vif 832 {} } } (ONT) ?
(pas besoin d'ipv6)
            ipv6 {
                address {
                    autoconf
                }
                dup-addr-detect-transmits 1
            }

4. même endroit, pour les vif 838 et 840, dans l'une des configs (github? sais plus), il y a "disable"
Dois-je le laisser ?

5. besoin de ça ? (rappel: je laisse la box TV sur la LB, si ça a un rapport)
protocols {
    igmp-proxy {
        disable-quickleave
        interface br1 {
            alt-subnet 0.0.0.0/0
            role upstream
            threshold 1
        }
        interface eth0 {
            alt-subnet 0.0.0.0/0
            role downstream
            threshold 1
        }
        interface eth2 {
            alt-subnet 0.0.0.0/0
            role downstream
            threshold 1
        }
    }
}

6. de ça ?
port-forward {
    auto-firewall enable
    hairpin-nat disable
    wan-interface eth1.832
}

7. dans les serveurs dhcp LAN et Livebox, des fois je vois authoritative disable, des fois enable.
ça a une importance ici ? Comme il n'y a pas d'autre serveur dhcp par sous-réseau, j'imagine que ça change pas grand chose, sauf si certains clients font chier quand le serveur leur attribue une nouvelle adresse...

8. toujours dans le serveur dhcp, Livebox, il y a subnet-parameters "option rfc3118-auth 00:....;" j'imagine qu'il faut passer la même chaîne que dans l'option client dhcp de eth1 ONT ?

9. il y a aussi une "option SIP ..." : la chaîne passée est-elle aussi une info perso? si oui, je la génère à partir de quoi ?

10. dans dhcp-server { dns {} }, ai-je besoin de :
        forwarding {
            cache-size 1000
            listen-on eth2
            listen-on eth0
        }

11. certains ont (dans dhcp) mdns { reflector }
Est-ce vraiment utile, si on a un seul subnet "utile" (ie avec des vrais clients) ? Est-ce que ça ne ferait pas même plus de mal que de bien, de forwarder ça sur toutes les interfaces ?

12. dans dhcp-server { nat { rule 5010 {} } } (masquerade out 1.832), certains ont "protocol all", pas d'autres. Nécessaire, ou non ?

13. toujours dans dhcp-server, certaines config ont
    upnp2 {
        listen-on eth0
        listen-on eth2
        nat-pmp enable
        secure-mode disable
        wan eth1.832
    }
je pense que c'est utile pour l'upnp, je pense que c'est un choix chez ceux qui l'ont viré ?
De plus, dans certaines autres, sur la patte Livebox c'est limité à listen-on eth0.832, c'est nécessaire ?

Voilà, je crois que j'ai fait le tour, merci d'avance à ceux qui voudront bien m'éclairer !

MikeTheFreeman

  • Abonné Orange Fibre
  • *
  • Messages: 243
Débutant - besoin d'un petit coup de pouce
« Réponse #6 le: 14 avril 2016 à 13:04:01 »
Généralement les configurations que je poste sont dénuées de tout service superflu.

  • tu peux le virer si tu es en config Orange dhcp ou que tu l'as pas de vpn, tunnel etc
  • ces paramètres sont ceux des bridges par défaut, ils apparaissent dans ta conf une fois qu'elle est appliquée (par commodité, pas obligé qu'ils figurent dans les conf postées)
  • je pense que tu peux le virer si tu ne fais pas du tout d'ipv6 sur ton LAN
  • si pas d'ipv6, virer tout ce qui mentionne ipv6
  • tu peux virer l'igmp proxy si le décodeur tv reste sur ta livebox (ou que tu ne regardes pas la tv depuis ton lan)
  • si tu as des ouvertures de port à effectuer, il faut le laisser
  • autoritative ça veut dire que le server dhcp a l’autorité sur le range d'adresse qui lui est affecté il peut donc envoyé un nack si un host lui demande une adresse qu'il a déjà attribué (par exemple s'il y a pour une raison de design un deuxième dhcp server ayant attribué une ip dans son range de compétence
  • à confirmer avec ceux ayant appliqué la conf dhcp (pas encore déployé chez moi
  • à confirmer avec ceux ayant appliqué la conf dhcp (pas encore déployé chez moi
  • c'est nécessaire si c'est ton erl qui fait la résolution DNS pour tes hosts (dans les interfaces en écoute)
  • perso n'ayant pas d'hosts utilisant mDNS, je le vire
  • pas nécessaire (sinon la conf fonctionnerait pas chez ceux qui l'ont posté). Cependant je dirai que c'est plus exact de le mettre.
  • à virer si tu ne fais pas d'UPNP (donc que tu ouvres tes ports toi-même)
« Modifié: 14 avril 2016 à 15:42:43 par MikeTheFreeman »

kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 114
  • Paris (75)
Débutant - besoin d'un petit coup de pouce
« Réponse #7 le: 14 avril 2016 à 13:56:39 »
- 'sudo -i' des qu'on se connecte a l'ERL , ca permet d'etre root pour la suite des opérations.
- l'ERL a 'curl' de base ce qui permet de télécharger des fichiers via ftp ou http.
- l'ERL a 'scp' de base ce qui permet de faire des copies de/vers une autre machine via ssh (je m'en sert pour le backup).
- on peut aussi faire un copier/collier tout simple: cat >/config/config.new, coller la config, ctrl+d pour terminer

- le fichier que j'ai posté la: https://gist.github.com/kgersen/5b8fb20a817aa6e88308#file-modif-os-patch est un 'patch' fait avec la commande 'diff' depuis l'ERL. Pour l'appliquer il faut la commande 'patch' que l'ERL n'a pas par défaut (c'est ballot de leur part mais c'est comme ca).

Dans le cas présent, c'est un peu 'overkill' d'installer 'patch' juste pour ajouter une ligne. Il suffit d'ajouter la ligne avec vi ou sed.
Par exemple avec sed (en étant root, donc faire sudo -i avant)
cp /opt/vyatta/sbin/vyatta-interfaces.pl /opt/vyatta/sbin/vyatta-interfaces.pl.orig
sed -i '/rfc3442-classless-static-routes/a \
    $output .= "option rfc3118-authentication code 90 = string;\\n\\n";\
' /opt/vyatta/sbin/vyatta-interfaces.pl

Une autre solution est d'installer la commande 'patch' dans l'ERL avec 'apt install patch' comme sur n'importe quel Debian. Les explications sont la: https://help.ubnt.com/hc/en-us/articles/205202560-EdgeMAX-Add-other-Debian-packages-to-EdgeOS
Toutefois il faut une connectivité Internet depuis l'ERL pour faire cela (perso, je mets l'ERL derriere la livebox via eth2 pour avoir une connectivité Internet minimal pour le configurer sans avoir de conflit d'IP).

Effectivement, les configs publiées dans ces forums ont souvent le défaut d'être des copies completes de config.boot avec tout les paramètres par défaut et plein de truc en plus par forcement utiles voir superflus.
L'ideal serait de publier le minimum a rajouter a la config de base mais ca prend du temps à  faire.


Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« Réponse #8 le: 14 avril 2016 à 14:01:44 »
Cool, merci @kgersen pour les précisions, et @mike pour toutes les réponses ! ça m'aide beaucoup.

Mike, tu as sauté le 4. donc la question reste en suspens.

Et donc 8. et 9. "à confirmer avec ceux ayant appliqué la conf dhcp" (tu as bien répondu au 7 en fait)

kgersen

  • Modérateur
  • Abonné Bbox fibre
  • *
  • Messages: 9 114
  • Paris (75)
Débutant - besoin d'un petit coup de pouce
« Réponse #9 le: 14 avril 2016 à 14:01:59 »
ps: bien faire attention avec l'option 90.
suivant les configs qu'on trouve, des fois c'est "rfc3118-auth" et d'autre fois "rfc3118-authentication". moi j'utilise "option-90" c'est plus parlant...
L'important c'est que le nom utilisé soit le meme dans la config et dans /opt/vyatta/sbin/vyatta-interfaces.pl.


MikeTheFreeman

  • Abonné Orange Fibre
  • *
  • Messages: 243
Débutant - besoin d'un petit coup de pouce
« Réponse #10 le: 14 avril 2016 à 15:45:30 »
@Stan Pulsar : j'ai maj mon post avec les réponse.

Stan Pulsar

  • Abonné Orange Fibre
  • *
  • Messages: 11
  • Strasbourg (67)
Débutant - besoin d'un petit coup de pouce
« Réponse #11 le: 14 avril 2016 à 15:54:23 »
yes, merci du conseil kgersen ! effectivement c'est "auth" dans le fichier .pl

@mike merci !

Mais mon point 4 ne concernait pas ipv6, désolé si je n'étais pas clair, je parlais de "disable" ici :
interfaces {
...
    ethernet eth1 {
...
vif 838 {
            bridge-group {
                bridge br0
            }
            description "VLAN TV VOD"
            disable
            egress-qos "0:4 1:4 2:4 3:4 4:4 5:4 6:4 7:4"
        }
        vif 840 {
            bridge-group {
                bridge br1
            }
            description "Canal 1 et zapping"
            disable
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
}