Auteur Sujet: Remplacer sa Livebox par un routeur Ubiquiti Edgemax  (Lu 1522690 fois)

0 Membres et 1 Invité sur ce sujet

platipus

  • Abonné Orange Fibre
  • *
  • Messages: 10
  • Gif sur Yvette (91)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3456 le: 15 janvier 2018 à 12:02:58 »
Merci MikeTheFreeman pour ta réponse :)

Mais je ne cherche pas à accéder à l'interface d'admin de ma livebox depuis le réseau NATé interne à la livebox, mais bel et bien à l'interface externe de la livebox (en 192.168.2.30 qui est l'IP "publique" vu de la livebox), que j'ai ouverte dans ce but via l'admin livebox. En gros, j'ai publié l'admin livebox sur "internet", sauf qu'ici, "internet" c'est l'ERL (qui s'interface entre internet et la livebox).

Sauf erreur de ma part, cette IP devrait être bien vue par l'ERL, puisque c'est l'ERL qui a fourni cette IP en DHCP à la livebox. Non ?

MikeTheFreeman

  • Abonné Orange Fibre
  • *
  • Messages: 243
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3457 le: 15 janvier 2018 à 12:41:02 »
C'est exact, mea culpa c'est ça de lire en diagonale.

Peut-être un problème de routage pour la réponse ? C'est quoi le réseau à partir duquel tu envoies la requête ? Le même que le réseau par défaut de la livebox (192.168.1.0) ?

platipus

  • Abonné Orange Fibre
  • *
  • Messages: 10
  • Gif sur Yvette (91)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3458 le: 15 janvier 2018 à 13:36:39 »
Pas de souci, ça arrive  ;)

Je suis dans la config classique de ce fil de discussion : ONT sur eth1, livebox sur eth0, et mon réseau local sur eth2.

En gros, j'ai un raspberry sur mon réseau local, qui veut appeler l'API d'admin livebox :

raspberry (192.168.10.10) --> switch --> ERL eth2 (192.168.10.1) --> routage ERL --> ERL eth0.832 (192.168.2.1) --> livebox (192.168.2.30) --> réseau interne livebox NATé (192.168.20.0/24)

MikeTheFreeman

  • Abonné Orange Fibre
  • *
  • Messages: 243
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3459 le: 15 janvier 2018 à 14:16:17 »
Ok, sinon tu as la fonction trace pour suivre le chemin du paquet et mieux identifier où est-ce que ça ne fonctionne pas (aller ou retour).

T'as essayé en https au cas où ? (je n'utilise plus la livebox donc je me souviens pas si le https était utilisé)

platipus

  • Abonné Orange Fibre
  • *
  • Messages: 10
  • Gif sur Yvette (91)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3460 le: 15 janvier 2018 à 18:20:26 »
Bingo, bien vu ! il fallait utiliser https...
Je me suis laissé abuser par le fait que l'admin en interne est accédée en http.

Merci MikeTheFreeman
« Modifié: 15 janvier 2018 à 23:48:46 par platipus »

platipus

  • Abonné Orange Fibre
  • *
  • Messages: 10
  • Gif sur Yvette (91)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3461 le: 20 janvier 2018 à 17:11:21 »
Bonjour, j'ai un autre problème à vous soumettre.

Je n'ai pas de problème d'accès internet depuis mes PCs sur mon LAN : web, dns... tout fonctionne.

Par contre, quand je me connecte sur le routeur en SSH, j'ai constaté que la date n'était pas correcte. Après investigation, je constate que les résolutions DNS ne marchent pas, ce qui explique que les mises à jour ntp ne se font pas.

Dans le log du routeur, j'ai ça :

Jan 16 07:30:38 erl_router ntpd_intres[1951]: host name not found: 0.ubnt.pool.ntp.org
Jan 16 07:31:18 erl_router ntpd_intres[1951]: host name not found: 1.ubnt.pool.ntp.org
Jan 16 07:31:58 erl_router ntpd_intres[1951]: host name not found: 2.ubnt.pool.ntp.org
Jan 16 07:32:38 erl_router ntpd_intres[1951]: host name not found: 3.ubnt.pool.ntp.org

Je peux pinger l'ip de 0.ubnt.pool.ntp.org mais pas via son nom :

platipus@erl_router:~# ping 178.33.111.49
PING 178.33.111.49 (178.33.111.49) 56(84) bytes of data.
64 bytes from 178.33.111.49: icmp_req=1 ttl=54 time=5.31 ms
64 bytes from 178.33.111.49: icmp_req=2 ttl=54 time=5.12 ms
64 bytes from 178.33.111.49: icmp_req=3 ttl=54 time=5.18 ms
64 bytes from 178.33.111.49: icmp_req=4 ttl=54 time=5.27 ms
64 bytes from 178.33.111.49: icmp_req=5 ttl=54 time=5.19 ms
^C
--- 178.33.111.49 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 5.122/5.216/5.314/0.093 ms

platipus@erl_router:~# ping 0.ubnt.pool.ntp.org
ping: unknown host 0.ubnt.pool.ntp.org

Je me dis alors qu'il y a peut-être un problème de flux. Je tente alors un curl sur l'ip du site web www.lemonde.fr :

platipus@erl_routeur:~# curl http://93.184.220.239
curl: (7) couldn't connect to host

La même chose depuis un PC sur mon LAN donne :

pc:~ platipus$ curl http://93.184.220.239
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>404 - Not Found</title>
</head>
<body>
<h1>404 - Not Found</h1>
</body>
</html>

soit bien la réponse attendue.

J'en déduis que j'ai bien un problème de flux sur le routeur. Mais je ne vois pas quoi configurer pour régler ça.

Avec-vous des suggestions ?

GautierM

  • Abonné FAI autre
  • *
  • Messages: 15
  • Saint Maur des Fossés (94)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3462 le: 20 janvier 2018 à 21:09:12 »
Bonsoir à tous,

Merci pour ce tuto qui est super bien fait et détaillé, je possède depuis peu une offre orange Fibre, le technicien m'a installé la LB4 avec un SFP directement dessus.

Possédant un EdgeRouter X (ER-X) en version 1.9.7 hotfix 3, j'ai acheté un TPLINK 220L pour convertir le signal du SFP vers le RJ45 et pouvoir utiliser mon routeur à la place de la livebox comme l'explique ce tuto. Mais j'ai un problème après avoir fais les configurations l'interface eth1.832 ne récupère jamais d'IP alors que le lien optique est bien UP.
J'ai bien modifié le dhclient3, mais je présume qu'il n'est compatible qu'avec l'ER8 car je ne peux pas le run, j'obtiens l'erreur suivante : /sbin/dhclient: cannot execute binary file avez vous quelque part le bon dhclient3 ou la méthode pour le compiler ?

Deuxièment dans la configuration je suis obligé de remplacer toute cette partie :
    offload {
        hwnat disable
        ipsec enable
        ipv4 {
            forwarding enable
            vlan enable
        }
        ipv6 {
            forwarding disable
        }
    }
par
    offload {
        hwnat disable
        }
    }
car toutes les options mises dans la config ne sont pas compatible quand je commit.

Avez-vous des idées ?
Voici ma config :
firewall {
    all-ping enable
    broadcast-ping disable
    ipv6-receive-redirects disable
    ipv6-src-route disable
    ip-src-route disable
    log-martians enable
    name WAN_IN {
        default-action drop
        description "WAN to internal"
        enable-default-log
        rule 10 {
            action accept
            description "Allow established/related"
            log disable
            protocol all
            state {
                established enable
                invalid disable
                new disable
                related enable
            }
        }
        rule 20 {
            action drop
            description "Drop invalid state"
            log disable
            protocol all
            state {
                established disable
                invalid enable
                new disable
                related disable
            }
        }
    }
    name WAN_LOCAL {
        default-action drop
        description "WAN to router"
        rule 1 {
            action accept
            description "Allow established/related"
            state {
                established enable
                related enable
            }
        }
        rule 2 {
            action accept
            description "Allow Ping"
            destination {
                group {
                    address-group ADDRv4_eth4
                }
            }
            log enable
            protocol icmp
        }
        rule 3 {
            action drop
            description "Drop invalid state"
            log disable
            state {
                invalid enable
            }
        }
    }
    options {
    }
    receive-redirects disable
    send-redirects enable
    source-validation disable
    syn-cookies enable
}
interfaces {
    bridge br0 {
        aging 300
        bridged-conntrack disable
        description "bro -> eth0.838 LIVEBOX (VoD)"
        hello-time 2
        max-age 20
        priority 0
        promiscuous disable
        stp false
    }
    bridge br1 {
        aging 300
        bridged-conntrack disable
        description "br1 -> eth0.840 LIVEBOX (ZAPPING + CANAL 1)"
        hello-time 2
        max-age 20
        priority 0
        promiscuous disable
        stp false
    }
    ethernet eth0 {
        description "eth0 VERS LIVEBOX"
        duplex auto
        speed auto
        vif 832 {
            address 192.168.2.1/24
            description "eth0.832 LIVEBOX (INTERNET + VOIP + CANAL 2)"
        }
        vif 838 {
            bridge-group {
                bridge br0
            }
            description "eth0.838 LIVEBOX (VoD)"
            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 "eth0.840 LIVEBOX (ZAPPING + CANAL 1)"
            egress-qos "0:5 1:5 2:5 3:5 4:5 5:5 6:5 7:5"
        }
    }
    ethernet eth1 {
        description "eth1 ONT (FIBRE RJ45)"
        duplex auto
        speed auto
        vif 832 {
            address dhcp
            description "eth1.832 (INTERNET + VOIP + CANAL 2)"
            dhcp-options {
                client-option "send vendor-class-identifier &quot;sagem&quot;;"
                client-option "send user-class &quot;\053FSVDSL_livebox.Internet.softathome.Livebox3&quot;;"
                client-option "send 00:00:00:00:00:00:00:00:00:00:00:66:74:69:2f:64:71:XX:XX:XX:XX:XX;"
                client-option "request dhcp-lease-time, dhcp-renewal-time, dhcp-rebinding-time, domain-search, rfc3118-auth;"
                default-route update
                default-route-distance 210
                name-server update
            }
            egress-qos "0:0 1:1 2:2 3:3 4:4 5:5 6:6 7:7"
            firewall {
                in {
                    name WAN_IN
                }
                local {
                    name WAN_LOCAL
                }
            }
            ipv6 {
                address {
                    autoconf
                }
                dup-addr-detect-transmits 1
            }
        }
        vif 838 {
            bridge-group {
                bridge br0
            }
            description "eth1.838 (VoD)"
            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 "eth1.840 (ZAPPING + CANAL 1)"
            egress-qos "0:5 1:5 2:5 3:5 5:5 6:5 7:5"
        }
    }
    ethernet eth2 {
        disable
        duplex auto
        ip {
        }
        speed auto
    }
    ethernet eth3 {
        disable
        duplex auto
        speed auto
    }
    ethernet eth4 {
        address 192.168.10.1/24
        description "eth4 LOCAL LAN SWITCH"
        duplex auto
        speed auto
    }
    switch switch0 {
        description LAN1
    }
    loopback lo {
    }
}
protocols {
}
service {
    dhcp-server {
        disabled false
        global-parameters "option rfc3118-auth code 90 = string;"
        global-parameters "option SIP code 120 = string;"
        global-parameters "option Vendor-specific code 125 = string;"
        hostfile-update disable
        shared-network-name LAN {
            authoritative disable
            subnet 192.168.10.0/24 {
                default-router 192.168.10.1
                dns-server 8.8.8.8
                dns-server 8.8.4.4
                domain-name FD-HOME
                lease 86400
                start 192.168.10.3 {
                    stop 192.168.10.254
                }
            }
        }
        shared-network-name LIVEBOX {
            authoritative enable
            subnet 192.168.2.0/24 {
                default-router 192.168.2.1
                dns-server 81.253.149.9
                dns-server 80.10.246.1
                domain-name orange.fr
                lease 86400
                start 192.168.2.30 {
                    stop 192.168.2.50
                }
                subnet-parameters "option rfc3118-auth 00:00:00:00:00:00:00:00:00:00:00:64:68:63:70:6c:69:76:65:62:6f:78:66:72:32:35:30;"
                subnet-parameters "option SIP 00:06:73:62:63:74:33:67:03:41:55:42:06:61:63:63:65:73:73:11:6f:72:61:6e:67:65:2d:6d:75:6c:74:69:6d:65:64:69:61:03:6e:65:74:00;"
                subnet-parameters "option Vendor-specific 00:00:05:58:0c:01:0a:00:00:00:00:00:ff:ff:ff:ff:ff;"
            }
        }
    }
    dns {
    }
    gui {
        http-port 80
        https-port 443
        older-ciphers enable
    }
    nat {
        rule 5010 {
            log disable
            outbound-interface eth1.832
            protocol all
            type masquerade
        }
    }
    ssh {
        allow-root
        port 22
        protocol-version v2
    }
    upnp2 {
        listen-on eth0.832
        listen-on eth4
        nat-pmp enable
        secure-mode disable
        wan eth1.832
    }
}
system {
    config-management {
        commit-revisions 50
    }
    domain-name FD-HOME
    host-name MRTSMTRTR001
    login {
        user gma {
            authentication {
                encrypted-password
            }
            level admin
        }
        user root {
            authentication {
                encrypted-password
                plaintext-password ""
            }
            level admin
        }
    }
    name-server 8.8.8.8
    name-server 8.8.4.4
    name-server 208.67.222.222
    name-server 208.67.220.220
    ntp {
        server 0.ubnt.pool.ntp.org {
        }
        server 1.ubnt.pool.ntp.org {
        }
        server 2.ubnt.pool.ntp.org {
        }
        server 3.ubnt.pool.ntp.org {
        }
    }
    offload {
        hwnat disable
    }
    package {
        repository wheezy {
            components "main contrib non-free"
            distribution wheezy
            password ""
            url http://http.us.debian.org/debian
            username ""
        }
        repository wheezy-security {
            components main
            distribution wheezy/updates
            password ""
            url http://security.debian.org
            username ""
        }
    }
    syslog {
        global {
            facility all {
                level notice
            }
            facility protocols {
                level debug
            }
        }
    }
    time-zone Europe/Paris
}

/* Warning: Do not remove the following line. */
/* === vyatta-config-version: "config-management@1:conntrack@1:cron@1:dhcp-relay@1:dhcp-server@4:firewall@5:ipsec@5:nat@3:qos@1:quagga@2:system@4:ubnt-pptp@1:ubnt-util@1:vrrp@1:webgui@1:webproxy@1:zone-policy@1" === */
/* Release version: v1.8.5.4884695.160608.1104 */

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 283
  • Antibes (06) / Mercury (73)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3463 le: 21 janvier 2018 à 06:42:16 »
  • Normal que l'exécutable dhclient ne fonctionne pas sur un ER-X: Pas la même architecture CPU que l'ERL/ERPoE/ER8...
  • Normal pour l'offload, même raison que ci-dessus. Par contre avec hwnat à disabled le débit va être ridicule

J'ai posté à plusieurs reprises le patch pour ISC-DHCP (https://lafibre.info/remplacer-livebox/en-cours-remplacer-sa-livebox-par-un-routeur-ubiquiti-edgemax/?action=dlattach;attach=33988). A appliquer sur le paquet "vyatta-dhcp" (de mémoire, nom approximatif) disponible dans l'archive GPL du firmware (à télécharger sur le site d'Ubiquiti).

Pour le compiler, au choix une machine virtuelle QEMU sous debian wheezy avec la bonne architecture CPU, ou alors de la cross-compilation (et là je conseille d'utiliser sbuild, qui permet de compiler pour debian wheezy dans n'importe quelle architecture supportée par debian, depuis Jessie ou même un Linux Ubuntu).

GautierM

  • Abonné FAI autre
  • *
  • Messages: 15
  • Saint Maur des Fossés (94)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3464 le: 21 janvier 2018 à 07:42:16 »
Bonjour et Merci pour ces informations !

Quelle architecture CPU faut-il utiliser dans QEMU pour compiler pour l'ER-X et avec quel utilitaire (commande) ?

Merci d'avance et bon dimanche,

GautierM

  • Abonné FAI autre
  • *
  • Messages: 15
  • Saint Maur des Fossés (94)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3465 le: 21 janvier 2018 à 07:45:44 »
Et voici le vyatta-dhcp que j'ai pu récupérer dans l'archive GPL du firmware 1.91 du ER-X.

Merci d'avance,

platipus

  • Abonné Orange Fibre
  • *
  • Messages: 10
  • Gif sur Yvette (91)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3466 le: 21 janvier 2018 à 10:17:15 »
Je me réponds à moi-même, ça pourrait en intéresser d'autres !

Alors j'ai dû ajouter des règles de firewall sur le ruleset WAN_LOCAL : dns, http, https et ntp en autorisant les ports source (respectivement udp/53, tcp/80, tcp/443, udp/123).

Maintenant, la date se met correctement à jour, je peux utiliser apt pour télécharger des paquets, et la résolution dns fonctionne sur le routeur.

Effet de bord intéressant, avant, quand je me connectais en ssh sur le routeur, ça mettais plusieurs dizaines de secondes pour avoir la mire de login ; maintenant, c'est instantané.

Si quelqu'un pouvait expliquer pourquoi j'ai dû positionner pour tout ça des règles sur WAN_LOCAL et surtout pourquoi sur les ports source ?

Le routeur en lui-même est considéré comme étant dans la zone local ?

zoc

  • Abonné Orange Fibre
  • *
  • Messages: 4 283
  • Antibes (06) / Mercury (73)
Remplacer sa Livebox par un routeur Ubiquiti Edgemax
« Réponse #3467 le: 21 janvier 2018 à 12:31:42 »
Quelle architecture CPU faut-il utiliser dans QEMU pour compiler pour l'ER-X et avec quel utilitaire (commande) ?
Je ne connais pas le CPU de l'ER-X, donc je ne peux pas répondre à la question.

Ensuite, en pratique ce n'est pas aussi simple que tu sembles l'imaginer... Dans QEMU, il faut installer une Debian Wheezy (dans l'architecture correspondant au CPU du routeur), puis utiliser les outils classiques Debian pour compiler à partir du package source, après avoir appliqué mon patch. Il va donc falloir apprendre un minimum le fonctionnement des packages debian (ça prendrait des heures à expliquer ici)...