Auteur Sujet: Tuto: Remplacer sa freebox (non Delta) par un routeur Ubiquiti en ZMD (10G-EPON)  (Lu 43868 fois)

0 Membres et 1 Invité sur ce sujet

moamo67

  • Abonné Free fibre
  • *
  • Messages: 62
  • Strasbourg 67
Via le simple protocole dhcpv6 et le paquet 'map' test tu nous diras

Fuli10

  • Abonné Free fibre
  • *
  • Messages: 1 006
  • Conflans Sainte Honorine (78)
Hello,
J'aimerai savoir si quelqu'un a réussi à utiliser sa mini 4k sans avoir le server (juste la connexion 4rd chez Free) ? Et si oui, comment ?

gwenny

  • Abonné Free fibre
  • *
  • Messages: 4
... utiliser la mini 4k comme simple box android :
  • débloquer le mode développeur
  • adb connect ip_mini4k
  • adb shell pm uninstall --user 0 fr.freebox.bootlock
Après ça, même derrière un VPN et sans accès au serveur elle démarrera et fonctionnera normalement... hormis les streams rtsp free.
Pour ça la mini4k crée un tunnel avec le serveur (qu'on peut débloquer juste en forward/masquerade 212.27.38.253 sur les ports udp 999 - 1000 si le routeur est entre le serveur et la mini4k).

> fbx6lcv2:/ $ ip link
fbxtun0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1424 qdisc pfifo_fast state UP mode DEFAULT group default qlen 500

> fbx6lcv2:/ $ ip route show table main
192.168.27.14 dev fbxtun0  proto kernel  scope link  src 192.168.27.17

> fbx6lcv2:/ $ ip route show table 42
10.0.0.0/8 via 192.168.27.14 dev fbxtun0  proto static  src 192.168.27.17
172.16.0.0/12 via 192.168.27.14 dev fbxtun0  proto static  src 192.168.27.17
192.168.27.0/24 via 192.168.27.14 dev fbxtun0  proto static  src 192.168.27.17

> cat /system/bin/oem-iptables-init.sh
#!/system/bin/sh

iptables -t nat -F oem_nat_pre

# map fbxrtsp port to standard one
iptables -t nat -A oem_nat_pre -p tcp --dport 554 -j REDIRECT --to-port 5554
iptables -t nat -I OUTPUT -d 127.0.0.1 -p tcp --dport 554 -j REDIRECT --to-port 5554
iptables -t nat -I OUTPUT -d 192.168.27.17 -p tcp --dport 554 -j REDIRECT --to-port 5554
iptables -t nat -I OUTPUT -d 192.168.27.18 -p tcp --dport 554 -j REDIRECT --to-port 5554

# map cheyenne port to standard one
iptables -t nat -A oem_nat_pre -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -t nat -I OUTPUT -d 127.0.0.1 -p tcp --dport 80 -j REDIRECT --to-port 8080

# cheyenne for fbxnet only
iptables -A OUTPUT -o lo -p tcp --dport 8080 -m owner --gid-owner freebox_net -j ACCEPT
iptables -A OUTPUT -o lo -p tcp --dport 8080 -j REJECT

# java fbxhotrpc for fbxnet only
iptables -A OUTPUT -o lo -p tcp --dport 8081 -m owner --gid-owner freebox_net -j ACCEPT
iptables -A OUTPUT -o lo -p tcp --dport 8081 -j REJECT

# nginx proxy for fbxproxy only
iptables -A OUTPUT -o lo -p tcp --dport 1347 -m owner --gid-owner freebox_proxy -j ACCEPT
iptables -A OUTPUT -o lo -p tcp --dport 1347 -j REJECT

# direct all fbxnet traffic to tunnel by setting fwmark on outgoing traffic
iptables -t mangle -A OUTPUT -m owner --gid-owner freebox_net -j MARK --or-mark 0x100000

# make sure only fbxnet can use the tunnel
iptables -t mangle -A POSTROUTING -o fbxtun0 -m owner ! --gid-owner freebox_net -j DROP

# masquerade outgoing traffic in case source address chosen is incorrect
iptables -t nat -A POSTROUTING -o fbxtun0 -j MASQUERADE

# make sure fbxnet daemons we cannot reach private network if tun is not up
ip rule add fwmark 0x100000/0x100000 to 10.0.0.0/8 pref 9001 unreachable
ip rule add fwmark 0x100000/0x100000 to 172.16.0.0/12 pref 9002 unreachable
ip rule add fwmark 0x100000/0x100000 to 192.168.27.0/24 pref 9003 unreachable

fbx6lcv2:/ $ top | grep fbx
 3880 u0_a11   20   0  12% S     9 198996K   5680K  fg /data/freebox/xbin/fbxmms
 3681 u0_a12   10 -10   0% S    10 940172K  51412K  fg fr.freebox.serviceimpl:fbxsystem
 3714 u0_a41   20   0   0% S    10 925820K  51996K  bg fr.freebox.fbxremoteupdater
 3763 u0_a12   10 -10   0% S    10 963880K  56364K  fg fr.freebox.serviceimpl:fbxservice
 3787 u0_a11   20   0   0% S     1 192496K    468K  fg /data/freebox/xbin/fbxkeyloader
 3832 u0_a11   20   0   0% S     9  68004K    688K  fg fbxsysklogd
 3842 u0_a11   20   0   0% S     1   2572K   1144K  fg /usr/sbin/fbxbusd
 3843 u0_a11   20   0   0% S     1   4124K   1152K  fg /usr/sbin/fbxupstart
 3845 u0_a11   20   0   0% S     1   2608K    864K  fg fbxconf
 3846 u0_a11   20   0   0% S     1   2952K    956K  fg fbxdev
 3847 u0_a11   20   0   0% S     1   2940K    600K  fg fbxrtspd
 3852 u0_a11   20   0   0% S     1   3416K    780K  fg fbxsystemd
 3855 u0_a11   20   0   0% S     1   3796K   2024K  fg fbxconnmand
 3861 u0_a11   20   0   0% S     1   2816K   1084K  fg fbxdvb
 3862 u0_a11   20   0   0% S     1   3240K    768K  fg fbxhwmon
 3863 u0_a11   20   0   0% S     1   2400K    568K  fg fbxchallenge
 3881 u0_a11   20   0   0% S     6 192120K   3120K  fg /data/freebox/xbin/fbxdisplay
 4104 u0_a12   10 -10   0% S    12 962912K  51720K  fg fr.freebox.serviceimpl:fbxmms

130|fbx6lcv2:/ $ top | grep nx                                                                                                                       
 2547 root     12  -8   5% S    30 210504K   7676K  fg /system/bin/nxserver
 2615 root     12  -8   0% S     1  11624K   2584K  fg /system/bin/nxlogger


Fuli10

  • Abonné Free fibre
  • *
  • Messages: 1 006
  • Conflans Sainte Honorine (78)
Merci. Justement ce qui m'intéresse c'est de garder la tv sans le server. Du coup ce qui m'intéresse c'est de fake le tunnel depuis le pc.

gtt38

  • Abonné Free fibre
  • *
  • Messages: 8
  • Pont-Eveque 38
Je voudrais supprimer ma mini 4K car je me sert ni de la TV et ni du telephone.
J'ai essayé le tuto et suivi a la lettre sur un Ubiquiti Edge Router X SFP et malheuresement ca ne fonctionne pas. :(

Sur mon routeur le SFP est eth5.
J'ai meme remis au parametres usines pour ensuite appliquer le tuto et sans succes
Si quelqu'un a le meme routeur que moi un peu d'aide n'est pas de refus  ;)

gtt38

  • Abonné Free fibre
  • *
  • Messages: 8
  • Pont-Eveque 38
Bon j'ai enfin réussi, le tutoriel est a revoir pour le Edge router X SFP, je vais essayer de trouver le temps d en refaire un spécifiquement pour ce routeur.
Malheureusement je bloque a 400/260 alors que ma connexion me permet 980/560 avec la mini4k (le NRO est a 20m) ça peut être problématique pour les téléchargements
je possede un MC220L et je tenterai bien un raspberry, ou j ai un Celeron J1900 qui pourrai faire l'affaire.





OpenWRT ou VYOS ?

moamo67

  • Abonné Free fibre
  • *
  • Messages: 62
  • Strasbourg 67
la freebox fait un choix ip full stack ou ou ip partage apres que le lip6 ai etait cree , je pense que votre manipulation fonctionne mais n'eest pas optimale . regarde plus bas le  ipip6 est deja cree quil solicite le choix d'ip partage ou full
ou je me trompe

si vous ouvrez votre freebox sans devisser la vis sous letiquette vous avez acces a un connecteur uart
a priori 12 000 serial
sinon ya que du 5V sur ' luart'
a activer avec un vlan dev 41 ?


je vous presente la fonction FF TUN READ PARAMS :

il sont pas fouler mais ca suffit que des IF le jour ou un IF ne colle pas la fbx sendort

static void __ff_tun_read_params(void)
+{
+ union ff_tun_params tp;
+
+ if (!ff.tun_dev)
+ return;
+
+ if (!ff.wan_dev) {
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ memset(&tp, 0, sizeof (tp));
+
+ if (ff.tun_dev->type == ARPHRD_SIT) {
+ const struct ip_tunnel *tun = netdev_priv(ff.tun_dev);
+ const struct ip_tunnel_6rd_parm *ip6rd = &tun->ip6rd;
+
+ if (!ip6rd->prefixlen || ip6rd->prefixlen > 32) {
+ printk(KERN_DEBUG "ff: unsupported 6rd plen\n");
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ if (ff.tun_dev->mtu + sizeof (struct iphdr) >
+     ff.wan_dev->mtu) {
+ printk(KERN_DEBUG "ff: WAN mtu too "
+        "small for tunnel (%u => %u)\n",
+        ff.tun_dev->mtu, ff.wan_dev->mtu);
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ tp.sit.src = tun->parms.iph.saddr;
+ tp.sit.s6rd_prefix = ip6rd->prefix.s6_addr32[0];
+ tp.sit.s6rd_pmask = gen_netmask(ip6rd->prefixlen);
+ tp.sit.s6rd_plen = ip6rd->prefixlen;
+ __ff_tun_set_params(true, ff.tun_dev->mtu, &tp);
+ return;
+ }
+
+ if (ff.tun_dev->type == ARPHRD_TUNNEL6) {
+ const struct ip6_tnl *t = netdev_priv(ff.tun_dev);
+ const struct __ip6_tnl_parm *prm = &t->parms;
+ const struct __ip6_tnl_fmr *fmr;
+
+ if (ff.tun_dev->mtu + sizeof (struct ipv6hdr) >
+     ff.wan_dev->mtu) {
+ printk(KERN_DEBUG "ff: WAN mtu too "
+        "small for tunnel (%u => %u)\n",
+        ff.tun_dev->mtu, ff.wan_dev->mtu);
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ tp.map.src = prm->laddr;
+ tp.map.br = prm->raddr;
+
+ fmr = prm->fmrs;
+ if (!fmr) {
+ tp.map.ipv4_prefix = 0;
+ __ff_tun_set_params(true, ff.tun_dev->mtu, &tp);
+ return;
+ }
+
+ if (fmr->ip6_prefix_len < 32 ||
+     (fmr->ip6_prefix_len + 32 - fmr->ip4_prefix_len > 64)) {
+ printk(KERN_DEBUG "ff: unsupp MAP-E: eabits "
+        "span 32 bits\n");
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ if (fmr->offset) {
+ printk(KERN_DEBUG "ff: unsupp MAP-E: non zero "
+        "PSID offset\n");
+ __ff_tun_set_params(false, 0, NULL);
+ return;
+ }
+
+ tp.map.ipv4_prefix = fmr->ip4_prefix.s_addr;
+ tp.map.ipv4_pmask = gen_netmask(fmr->ip4_prefix_len);
+ tp.map.ipv4_plen = fmr->ip4_prefix_len;
+ tp.map.ipv6_plen = fmr->ip6_prefix_len;
+ memcpy(&tp.map.ipv6_prefix, &fmr->ip6_prefix, 8);
+
+ tp.map.ea_addr_mask = ~gen_netmask(fmr->ip4_prefix_len);
+ if (fmr->ea_len <= 32 - fmr->ip4_prefix_len) {
+ /* v4 prefix or full IP */
+ u32 addr_bits;
+
+ addr_bits = fmr->ip4_prefix_len + fmr->ea_len;
+ if (addr_bits != 32)
+ tp.map.ea_addr_mask &= gen_netmask(addr_bits);
+ tp.map.psid_len = 0;
+ } else {
+ u8 psid_len;
+
+ psid_len = fmr->ea_len - (32 - fmr->ip4_prefix_len);
+ tp.map.psid_len = psid_len;
+ tp.map.ea_port_mask = gen_netmask(psid_len);
+ }
+
+ tp.map.ea_lshift = 32 - (fmr->ip6_prefix_len - 32) -
+ fmr->ea_len;
+
+ __ff_tun_set_params(true, ff.tun_dev->mtu, &tp);
+ return;
+ }
+}
« Modifié: 30 juillet 2020 à 17:29:26 par moamo67 »

cyayon

  • Abonné Orange Fibre
  • *
  • Messages: 648
  • Cordon 74 - Orange Fibre Pro
bonjour à tous,

je suis un malheureux migrateur vers la POP en VDSL et j'enchaine les problèmes avec cette box.

je voudrais m'en passer et je souhaiterais simplement savoir si avec un modem en mode bridge (qui synchronise d'ailleurs parfaitement et mieux que la POP ma ligne VDSL) et un linux (mon firewall est un archlinux) je peux utiliser cette méthode ? en transposant la config vers Linux bien sûr...

Qqun l'a t-il déjà fait ?

j'avais essayé cette méthode https://www.digital-dynamics.fr/FR/code-et-download/vdsl-free-sans-freebox.html, mais cela ne fonctionne pas. Le simple VLAN836 en spoofant la mac de ma freebox ne suffit pas..

merci d'avance.

lRyi9Nuis6Ex6G89FKxE

  • Abonné Free fibre
  • *
  • Messages: 25
Tuto: Remplacer sa freebox (non Delta) par un routeur Ubiquiti en ZMD (10G-EPON)
« Réponse #44 le: 14 septembre 2020 à 14:11:40 »
@gtt38
Pourrais-tu m'en dire plus sur les étapes qui diffèrent sur le Edge router X SFP ?
Je pourrais au besoin adapter les étapes du tutos en fonction du modèle.

@cyayon cette méthode ne fonctionnera qu'avec des clients fibre ZMD, et n'est absolument pas applicable en VDSL. Désolé !

Hakor

  • Abonné Free fibre
  • *
  • Messages: 3
  • Toulouse 31
Je voudrais supprimer ma mini 4K car je me sert ni de la TV et ni du telephone.
J'ai essayé le tuto et suivi a la lettre sur un Ubiquiti Edge Router X SFP et malheuresement ca ne fonctionne pas. :(

Sur mon routeur le SFP est eth5.
J'ai meme remis au parametres usines pour ensuite appliquer le tuto et sans succes
Si quelqu'un a le meme routeur que moi un peu d'aide n'est pas de refus  ;)

Idem... ça marche pas :(

moamo67

  • Abonné Free fibre
  • *
  • Messages: 62
  • Strasbourg 67
Sur le sfp appliquer la mac de la Freebox et placez vous sur le vlan eth5.836

Hakor

  • Abonné Free fibre
  • *
  • Messages: 3
  • Toulouse 31
Comment
Sur le sfp appliquer la mac de la Freebox et placez vous sur le vlan eth5.836

Comment fait-on ?