Auteur Sujet: Remplacer sa Livebox par un routeur pfSense - NET + TV  (Lu 483979 fois)

0 Membres et 1 Invité sur ce sujet

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 289
  • Antibes (06) / Mercury (73)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #780 le: 26 janvier 2017 à 18:16:04 »
Le port WAN a obligatoirement une adresse Link-Local, sinon aucun traffic ne serait possible (le routeur annoncé par Orange dans ses RA a également une adresse Link-Local uniquement: fe80::ba0:bab).

Accessoirement, dibbler n'attribue jamais d'adresses Link-Local, c'est le kernel qui le fait...

nivek1612

  • Abonné Orange Fibre
  • *
  • Messages: 344
  • Nice 06
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #781 le: 26 janvier 2017 à 18:29:24 »
Ok

c'est bon merci 

J'ai fini


eupalynos

  • Abonné Free vdsl
  • *
  • Messages: 47
  • Thônes (74)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #782 le: 28 janvier 2017 à 19:51:43 »
Bonjour,

Pour ceux qui ont le DHCP sur leur ligne Orange, j’ai modifié dhclient pour que ça fonctionne sans changer le PCP de base de l’interface VLAN (il faut que les requêtes DHCP soient à 6).
Ce dhclient peut envoyer des requêtes directement via l’interface parent de l’interface VLAN, en se chargeant de l’encapsulation.
(Car si on envoi des paquets déjà tagués 802.1q via une interface VLAN dans pfSense, ils seront tagués une deuxième fois même si le VID est à 0.)
Le dhclient ci-joint est pour pfSense 2.3 amd64 seulement !

En pratique :
En supposant que l’ONT est connecté sur le port "em1" de pfSense, qui est le "trunk" VLAN (si ce n’est pas le cas, changez dans la config DHCP).
- Remplacez dhclient par celui-ci-joint
- Créez un fichier (genre "dhclient_wan.conf") avec cette config :
Pour la ligne "send rfc3118-auth", remplacez les "xx" par ce qui suit "fti/" dans votre identifiant, converti en hexa.

interface "em1_vlan832" {

send-interface "em1";
vlan-id 832;
vlan-pcp 6;

# DHCP Protocol Timing Values
timeout 60;
retry 15;
reboot 0;
select-timeout 0;
initial-interval 1;

# DHCP Protocol Options
send dhcp-class-identifier "sagem";
send user-class "+FSVDSL_livebox.Internet.softathome.Livebox3";
send rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:66:74:69:2f:xx:xx:xx:xx:xx:xx:xx;
request subnet-mask, broadcast-address, dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time, domain-search, routers, domain-name-servers, rfc3118-auth;

script "/sbin/dhclient-script";
}

- Uploadez le fichier quelque part sur votre box pfSense
- Si vous ne l’avez pas déjà, assignez une interface sur le port "em1" et activez-la avec "None" comme config IPv4.
- Créez le VLAN 832 sur em1, en laissant vide la priorité.
- Assignez le port VLAN 832 à votre interface WAN et choisissez "DHCP" pour IPv4 (au lieu de PPPoE). Sélectionnez "Configuration Override" comme configuration DHCP et entrez le chemin du fichier de config que vous avez uploadé.

Sauvegardez, et normalement vous devriez obtenir une IP sur votre WAN via DHCP !
Si ce n'est pas le cas, jetez un œil sur le log de dhclient dans /tmp ("em1_vlan832_output") et vérifiez la ligne rfc3118-auth et le nom des interfaces.

Je viens de remplacer ma Livebox par un pfSense en utilisant votre binaire dhclient et la config correspondante. Bravo pour le travail et merci :-)

Pour info, je m'intéresse uniquement à l'aspect Internet, pas de TV ni de téléphone.

Ceci dit, j'ai cherché ici (mal peut-être...) mais je n'ai pas trouvé trace du patch à appliquer aux sources de dhclient. En effet, j'aimerais beaucoup recompilé ce binaire de mon côté. Pouvez-vous fournir un diff ?

Merci et au plaisir de vous lire...

nivek1612

  • Abonné Orange Fibre
  • *
  • Messages: 344
  • Nice 06

eupalynos

  • Abonné Free vdsl
  • *
  • Messages: 47
  • Thônes (74)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #784 le: 28 janvier 2017 à 20:50:39 »
Merci pour cette réponse rapide !!! :-)

Je vais pouvoir compiler...

eupalynos

  • Abonné Free vdsl
  • *
  • Messages: 47
  • Thônes (74)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #785 le: 29 janvier 2017 à 19:48:21 »
Bonjour,

Je viens de remplacer ma Livebox par un pfSense en utilisant votre binaire dhclient et la config correspondante. Bravo pour le travail et merci :-)

Pour info, je m'intéresse uniquement à l'aspect Internet, pas de TV ni de téléphone.

Ceci dit, j'ai cherché ici (mal peut-être...) mais je n'ai pas trouvé trace du patch à appliquer aux sources de dhclient. En effet, j'aimerais beaucoup recompilé ce binaire de mon côté. Pouvez-vous fournir un diff ?

Merci et au plaisir de vous lire...

ici

https://lafibre.info/remplacer-livebox/remplacer-sa-livebox-par-un-routeur-pfsense/msg408708/#msg408708

Pour info, ma version de pfSense :
2.3.2-RELEASE-p1 (amd64)
built on Tue Sep 27 12:13:07 CDT 2016
FreeBSD 10.3-RELEASE-p9


J'ai installer une FreeBSD sous Virtualbox avec ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/10.3/.

J'ai récupérer la source de dhclient ici : https://github.com/pfsense/FreeBSD-src/tree/RELENG_2_3_2.

J'ai appliqué le patch que vous citez, compilé, installé sur pfSense.

J'obtiens les erreurs suivantes :

Jan 29 19:25:21 pfSense dhclient[85425]: /var/etc/dhclient_opt1.conf line 18: no option named rfc3118-auth
Jan 29 19:25:21 pfSense dhclient[85425]: send rfc3118-auth 00:
Jan 29 19:25:21 pfSense dhclient[85425]:       ^
Jan 29 19:25:21 pfSense dhclient[85425]: /var/etc/dhclient_opt1.conf line 19: rfc3118-auth: unexpected option name.
Jan 29 19:25:21 pfSense dhclient[85425]: request subnet-mask, broadcast-address, dhcp-lease-time, dhcp-renewal-time, dhc
Jan 29 19:25:21 pfSense dhclient[85425]: ^
Jan 29 19:25:24 pfSense dhclient: PREINIT
Jan 29 19:25:24 pfSense dhclient[85425]: Discovering receive interface: em0_vlan832
Jan 29 19:25:24 pfSense dhclient[85425]: Registering receive interface
Jan 29 19:25:24 pfSense dhclient[85425]: Attached interface em0_vlan832 to bpf device /dev/bpf0
Jan 29 19:25:24 pfSense dhclient[85425]: Adding protocol
Jan 29 19:25:24 pfSense dhclient[85425]: Discovering interface for sending: em0
Jan 29 19:25:24 pfSense dhclient[85425]: em0: not found
Jan 29 19:25:24 pfSense dhclient[85425]: exiting.

Ceci dit, il me semblait étrange de ne pas voir de référence à rfc3118-auth dans la patch.

Est-ce bien le bon patch ?


nivek1612

  • Abonné Orange Fibre
  • *
  • Messages: 344
  • Nice 06
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #786 le: 29 janvier 2017 à 20:18:56 »
Je pensais que c'était le patch complet
On dirait que c'est le pcp VLAN seulement

Je suis sûr que @nwks pourra vous indiquer l'autre partie du patch

nwks

  • Abonné Orange Fibre
  • *
  • Messages: 66
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #787 le: 29 janvier 2017 à 21:18:48 »
Ceci dit, il me semblait étrange de ne pas voir de référence à rfc3118-auth dans la patch.

En effet, j'avais fait la modification dans le dhclient que j'avais posté à l'époque, mais on dirait qu'elle s'est perdue à un moment ou à un autre... ???

En pratique il me semble qu'il suffit juste de remplacer "option-90" par "rfc3118-auth" dans tables.c.
Ou tu peux aussi remplacer "rfc3118-auth" par "option-90" dans la config ;)

eupalynos

  • Abonné Free vdsl
  • *
  • Messages: 47
  • Thônes (74)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #788 le: 30 janvier 2017 à 13:50:45 »
En effet, j'avais fait la modification dans le dhclient que j'avais posté à l'époque, mais on dirait qu'elle s'est perdue à un moment ou à un autre... ???

En pratique il me semble qu'il suffit juste de remplacer "option-90" par "rfc3118-auth" dans tables.c.
Ou tu peux aussi remplacer "rfc3118-auth" par "option-90" dans la config ;)

J'ai essayé les deux suggestions sans succès :
Jan 30 13:15:09 pfSense dhclient: PREINIT
Jan 30 13:15:09 pfSense dhclient[1088]: Discovering receive interface: em0_vlan832
Jan 30 13:15:09 pfSense dhclient[1088]: Registering receive interface
Jan 30 13:15:09 pfSense dhclient[1088]: Attached interface em0_vlan832 to bpf device /dev/bpf0
Jan 30 13:15:09 pfSense dhclient[1088]: Adding protocol
Jan 30 13:15:09 pfSense dhclient[1088]: Discovering interface for sending: em0
Jan 30 13:15:09 pfSense dhclient[1088]: em0: not found
Jan 30 13:15:09 pfSense dhclient[1088]: exiting.
Jan 30 13:15:10 pfSense dhclient: PREINIT
Jan 30 13:15:10 pfSense dhclient[7301]: Discovering receive interface: em0_vlan832
Jan 30 13:15:10 pfSense dhclient[7301]: Registering receive interface
Jan 30 13:15:10 pfSense dhclient[7301]: Attached interface em0_vlan832 to bpf device /dev/bpf0
Jan 30 13:15:10 pfSense dhclient[7301]: Adding protocol
Jan 30 13:15:10 pfSense dhclient[7301]: Discovering interface for sending: em0
Jan 30 13:15:10 pfSense dhclient[7301]: em0: not found
Jan 30 13:15:10 pfSense dhclient[7301]: exiting.
Jan 30 13:15:12 pfSense dhclient: PREINIT
Jan 30 13:15:12 pfSense dhclient[21579]: Discovering receive interface: em0_vlan832
Jan 30 13:15:12 pfSense dhclient[21579]: Registering receive interface
Jan 30 13:15:12 pfSense dhclient[21579]: Attached interface em0_vlan832 to bpf device /dev/bpf0
Jan 30 13:15:12 pfSense dhclient[21579]: Adding protocol
Jan 30 13:15:12 pfSense dhclient[21579]: Discovering interface for sending: em0
Jan 30 13:15:12 pfSense dhclient[21579]: em0: not found
Jan 30 13:15:12 pfSense dhclient[21579]: exiting.

Alors qu'avec le binaire récupéré ici, tout fonctionne correctement :
Jan 30 13:39:21 pfSense dhclient: PREINIT
Jan 30 13:39:21 pfSense dhclient[72414]: Registering receive interface: em0_vlan832
Jan 30 13:39:21 pfSense dhclient[72414]: Interface em0_vlan832 attached to bpf for receiving
Jan 30 13:39:21 pfSense dhclient[72414]: Registering sending interface: em0
Jan 30 13:39:21 pfSense dhclient[72414]: VLAN ID: 832, VLAN PCP: 6
Jan 30 13:39:21 pfSense dhclient[72414]: Interface em0 attached to bpf for sending
Jan 30 13:39:21 pfSense dhclient[72414]: DHCPREQUEST on em0_vlan832 to 255.255.255.255 port 67
Jan 30 13:39:22 pfSense dhclient[72414]: DHCPDISCOVER on em0_vlan832 to 255.255.255.255 port 67 interval 1
Jan 30 13:39:22 pfSense dhclient[75180]: connection closed
Jan 30 13:39:22 pfSense dhclient[75180]: exiting.
Jan 30 13:39:23 pfSense dhclient: PREINIT
Jan 30 13:39:23 pfSense dhclient[78812]: Registering receive interface: em0_vlan832
Jan 30 13:39:23 pfSense dhclient[78812]: Interface em0_vlan832 attached to bpf for receiving
Jan 30 13:39:23 pfSense dhclient[78812]: Registering sending interface: em0
Jan 30 13:39:23 pfSense dhclient[78812]: VLAN ID: 832, VLAN PCP: 6
Jan 30 13:39:23 pfSense dhclient[78812]: Interface em0 attached to bpf for sending
Jan 30 13:39:23 pfSense dhclient[78812]: DHCPREQUEST on em0_vlan832 to 255.255.255.255 port 67
Jan 30 13:39:24 pfSense dhclient[78812]: DHCPDISCOVER on em0_vlan832 to 255.255.255.255 port 67 interval 1
Jan 30 13:39:24 pfSense dhclient[78812]: DHCPOFFER from ###.###.###.###
Jan 30 13:39:24 pfSense dhclient[78812]: unknown dhcp option value 0x5a
Jan 30 13:39:24 pfSense dhclient[78812]: unknown dhcp option value 0x78
Jan 30 13:39:24 pfSense dhclient: ARPSEND
Jan 30 13:39:25 pfSense dhclient[81829]: connection closed
Jan 30 13:39:25 pfSense dhclient[81829]: exiting.
Jan 30 13:39:26 pfSense dhclient: PREINIT
Jan 30 13:39:26 pfSense dhclient[94424]: Registering receive interface: em0_vlan832
Jan 30 13:39:26 pfSense dhclient[94424]: Interface em0_vlan832 attached to bpf for receiving
Jan 30 13:39:26 pfSense dhclient[94424]: Registering sending interface: em0
Jan 30 13:39:26 pfSense dhclient[94424]: VLAN ID: 832, VLAN PCP: 6
Jan 30 13:39:26 pfSense dhclient[94424]: Interface em0 attached to bpf for sending
Jan 30 13:39:26 pfSense dhclient[94424]: DHCPREQUEST on em0_vlan832 to 255.255.255.255 port 67
Jan 30 13:39:28 pfSense dhclient[94424]: DHCPDISCOVER on em0_vlan832 to 255.255.255.255 port 67 interval 2
Jan 30 13:39:28 pfSense dhclient[94424]: DHCPOFFER from ###.###.###.###
Jan 30 13:39:28 pfSense dhclient[94424]: unknown dhcp option value 0x5a
Jan 30 13:39:28 pfSense dhclient[94424]: unknown dhcp option value 0x78
Jan 30 13:39:28 pfSense dhclient: ARPSEND
Jan 30 13:39:30 pfSense dhclient: ARPCHECK
Jan 30 13:39:30 pfSense dhclient[94424]: DHCPREQUEST on em0_vlan832 to 255.255.255.255 port 67
Jan 30 13:39:30 pfSense dhclient[94424]: DHCPACK from ###.###.###.###
Jan 30 13:39:30 pfSense dhclient[94424]: unknown dhcp option value 0x5a
Jan 30 13:39:30 pfSense dhclient[94424]: unknown dhcp option value 0x78
Jan 30 13:39:30 pfSense dhclient: BOUND
Jan 30 13:39:30 pfSense dhclient: Starting add_new_address()
Jan 30 13:39:30 pfSense dhclient: ifconfig em0_vlan832 inet ###.###.###.### netmask 255.255.254.0 broadcast ###.###.###.###
Jan 30 13:39:30 pfSense dhclient: New IP Address (em0_vlan832): ###.###.###.###
Jan 30 13:39:30 pfSense dhclient: New Subnet Mask (em0_vlan832): 255.255.254.0
Jan 30 13:39:30 pfSense dhclient: New Broadcast Address (em0_vlan832): ###.###.###.###
Jan 30 13:39:30 pfSense dhclient: New Routers (em0_vlan832): ###.###.###.###
Jan 30 13:39:30 pfSense dhclient: Adding new routes to interface: em0_vlan832
Jan 30 13:39:30 pfSense dhclient: /sbin/route add default ###.###.###.###
Jan 30 13:39:30 pfSense dhclient: Creating resolv.conf
Jan 30 13:39:30 pfSense dhclient[94424]: bound to ###.###.###.### -- renewal in 43200 seconds.

edit: typo

nwks

  • Abonné Orange Fibre
  • *
  • Messages: 66
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #789 le: 30 janvier 2017 à 20:39:52 »
J'ai essayé les deux suggestions sans succès :

Hmm, en fait le patch que j'ai posté précédemment est une vielle version incomplète, mais bizarrement c'est celle que j'avais archivé...
J'ai fait un nouveau diff de mon environnement et j'ai trouvé quelque chose de plus acceptable, avec le rfc3118-auth ;D

eupalynos

  • Abonné Free vdsl
  • *
  • Messages: 47
  • Thônes (74)
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #790 le: 31 janvier 2017 à 11:44:59 »
Hmm, en fait le patch que j'ai posté précédemment est une vielle version incomplète, mais bizarrement c'est celle que j'avais archivé...
J'ai fait un nouveau diff de mon environnement et j'ai trouvé quelque chose de plus acceptable, avec le rfc3118-auth ;D

Merci pour la réponse  :)

Il doit y avoir encore un tout petit problème car après application de ce patch :
- dhcpd.h annonce discover_interface() (au singulier) qui n'est implèmentée nulle part
- dispatch.c défini deux fois discover_interfaces() (au pluriel)

Du coup, ça ne compile pas...

# grep -n discover_interface *
dhclient.c:469: discover_interfaces(ifi);
dhcpd.h:316:void discover_interface(struct interface_info *);
dhcpd.h:317:void discover_interfaces(struct interface_info *);
dhcpd.h.orig:313:void discover_interfaces(struct interface_info *);
dispatch.c:70:discover_interfaces(struct interface_info *iface)
dispatch.c:129:discover_interfaces(struct interface_info *iface)
dispatch.c:138: discover_interface(iface);
dispatch.c.orig:70:discover_interfaces(struct interface_info *iface)[code]

nwks

  • Abonné Orange Fibre
  • *
  • Messages: 66
Remplacer sa Livebox par un routeur pfSense - NET + TV
« Réponse #791 le: 31 janvier 2017 à 19:33:26 »
Arf désolé, j'ai édité manuellement le fichier pour virer des trucs sans rapport et plein d'écarts liés à des caractères blancs, et j'ai coupé un bout qu'il ne fallait pas ::)

Il y a bien discover_interface et discover_interface, manque de bol j'ai coupé le diff qui renommait le "discover_interfaces" existant dans dispatch.c en "discover_interface" ("discover_interfaces" étant ajouté plus bas).
Tu peux renommer manuellement la fonction ligne 70 pour enlever le "s" et ça devrait fonctionner, mais j'ai aussi joint le diff non édité.