Auteur Sujet: Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?  (Lu 25032 fois)

0 Membres et 1 Invité sur ce sujet

hsd

  • Abonné SFR fibre FttH
  • *
  • Messages: 43
  • PARIS 75
voici pour ceux que ça intéresserait le script qui fait la config de bout en bout
Il est à lancer avec le scheduler au boot.
3 variables à modifier, le nom de l'interface physique du mikrotik utilisé pour connecter l'ONU, l'enregistrement de l'entrée DNS personnalisée sur le portail de Free et l'adresse MAC de votre Freebox. Ca fonctionne pour moi, je suis curieux de vérifier la portabilité.

#Modify the interface name where you connect your ONU & the name on CustomDNSFree
:local interfacePhysical "sfp1"
:local CustomDNSFree "xxxxx.hd.free.fr"
:local MACFree "FF:CC:EE:4B:2B:3A"

:local interfaceInternet "vlan836-free"
:local ipipv6 "ipipv6-free"
:local ipv4Free "ipv4-free"

delay 10s
#add interface list WAN
:if ([/interface list print count-only where name="WAN"]=0) do={
/interface list add name=WAN
}
#Cleanup list member orphans
/interface list member remove [find where interface~"^\\*[0-9a-fA-F]{1,8}\$"]
#add vlan 836
:if ([/interface print count-only where name=$interfaceInternet]=0) do={
  /interface ethernet set $interfacePhysical l2mtu=1796 mtu=1704 mac-address=$MACFree
/interface vlan add name=$interfaceInternet vlan-id=836 mtu=1700 interface=$interfacePhysical
/interface list member add interface=$interfaceInternet list=WAN
}
#add ipv6 address for ipipv6 tunnel
:if ([/ipv6 address print count-only where comment="interfaceInternet2"]=0) do={
/ipv6 address add address="fd99::0ffff/128" interface="$interfaceInternet" advertise=no comment="interfaceInternet2"
}
#add FW rule
:if ([ :len [/ipv6/firewall/filter/find where comment="Allow IPIPv6 tunnel on WAN" ]] = 0) do={
  /ipv6 firewall filter add action=accept chain=input comment="Allow IPIPv6 tunnel on WAN" in-interface-list=WAN \
protocol=ipencap  place-before=*0
}
:if ([ :len [/ipv6/firewall/filter/find where comment="Allow dhcpv6 replies on WAN" ]] = 0) do={
  /ipv6 firewall filter add action=accept chain=input comment="Allow dhcpv6 replies on WAN" dst-port=546 \
in-interface-list=WAN log=yes log-prefix="fw, a: allow6, r: aid, " protocol=udp src-address=fe80::/10 place-before=*0
}
#add ipv6 DHCP Client
:if ([/ipv6 dhcp-client print count-only where comment="fibre-free"]=0) do={
/ipv6 dhcp-client
add add-default-route=yes comment="fibre-free" interface=$interfaceInternet pool-name="pool-freeV6" pool-prefix-length=60 request=address,prefix script="#Modify the \
    CustomDNSFree\r\
    \n:local CustomDNSFree \"$CustomDNSFree\"\r\
    \n\r\
    \n:local interfaceInternet \"$interfaceInternet\"\r\
  \n:local ipipv6 \"$ipipv6\"\r\
    \n\r\
    \n:local prefix [/ipv6 dhcp-client get [find interface=\$interfaceInternet] value-name=prefix]\r\
    \n:set prefix ([:pick \$prefix 0 ([:find \$prefix \",\"]-3)])\r\
    \n:local gw [/ipv6 dhcp-client get [find interface=\$interfaceInternet] value-name=address]\r\
    \n:set gw ([:pick \$gw 0 ([:find \$gw \",\"])])\r\
    \n:local addresse0ffff (([:pick \$prefix 0 ( [ :len \$prefix ] -1 )]) . \"0:ffff:ffff:0\")\r\
    \n:local prefix2 (([:pick \$prefix 0 ( [ :len \$prefix ] -3 )]) . \"2::\")\r\
    \n\r\
    \n#remove the uggly IP\r\
    \n/ipv6 address remove [find address=\"\$gw/128\"]\r\
    \n#set ipv6 for forwarding ipipv6 tunnel\r\
    \n/ipv6 address set [find comment=\"interfaceInternet2\"] address=\"\$addresse0ffff/128\" interface=\"\$interfaceInternet\" adver\
    tise=no\r\
    \n#set ip to the ipipv6 tunnel\r\
    \n/interface ipipv6 set \$ipipv6 local-address=\$addresse0ffff\r\
    \n#set IPV4 Free\r\
    \n:local ipv4free [:resolve \$CustomDNSFree]\r\
    \n/ip address set [find comment=\"ipv4-free\"] address=\$ipv4free network=\$ipv4free interface=\$ipipv6\r\
    \n" use-interface-duid=yes use-peer-dns=no

} else {
/ipv6 dhcp-client set [find comment="fibre-free"] interface=$interfaceInternet
}
#add ipipV6 tunnel
:if ([/interface print count-only where name=$ipipv6]=0) do={
/interface ipipv6 add name=$ipipv6 remote-address=2a01:e00:29:200a::fffd local-address=fe80::1234 mtu=1500
  /interface list member add interface=$ipipv6 list=WAN
}
#add ipv4 on ipipv6 interface
:if ([/ip address print count-only where comment=$ipv4Free]=0) do={
/ip address add address=1.2.3.4 network=1.2.3.4 comment=$ipv4Free interface=$ipipv6
}
#add route ipv4 on ipipv6 interface
:if ([/ip route print count-only where comment=$ipipv6]=0) do={
/ip route add dst-address=0.0.0.0/0 gateway=$ipipv6 comment=$ipipv6
} else {
  /ip route set [find comment=$ipipv6] gateway=$ipipv6
}
#
/ipv6 dhcp-client release [find comment="fibre-free"]
« Modifié: 29 avril 2024 à 14:21:41 par hsd »

yostico

  • Abonné Free fibre
  • *
  • Messages: 1
Salut hsd;

Je te confirme ton script fonctionne à merveille, testé et approuvé !

Merci pour ta contribution !




timo

  • Abonné Orange Fibre
  • *
  • Messages: 16
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #74 le: 20 novembre 2024 à 16:33:55 »
Salut hsd

Je viens d'utiliser ton script j'arrive à avoir internet. Mais j'ai un debit ridicule quand je fais un telechargement 100kb/s (sur les fichiers de tests de free) alors que speedtest m'affiche dans les 200mbits. Si jeme mets sur un VPN toujours sur la meme connection je monte a 30MB/s en telechargement sur le meme fichier.... Je ne comprends pas d'où vient le probleme. J'ai un CCR2004 le CPU sur winbox en bas affiche 0-5% pas plus ...

kaxapo

  • Abonné Free fibre
  • *
  • Messages: 283
  • FTTH Freebox révolution V6
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #75 le: 17 décembre 2024 à 04:57:15 »
voici pour ceux que ça intéresserait le script qui fait la config de bout en bout
Il est à lancer avec le scheduler au boot.
3 variables à modifier, le nom de l'interface physique du mikrotik utilisé pour connecter l'ONU, l'enregistrement de l'entrée DNS personnalisée sur le portail de Free et l'adresse MAC de votre Freebox. Ca fonctionne pour moi, je suis curieux de vérifier la portabilité.

#Modify the interface name where you connect your ONU & the name on CustomDNSFree
:local interfacePhysical "sfp1"
:local CustomDNSFree "xxxxx.hd.free.fr"
:local MACFree "FF:CC:EE:4B:2B:3A"

:local interfaceInternet "vlan836-free"
:local ipipv6 "ipipv6-free"
:local ipv4Free "ipv4-free"

delay 10s
#add interface list WAN
:if ([/interface list print count-only where name="WAN"]=0) do={
/interface list add name=WAN
}
#Cleanup list member orphans
/interface list member remove [find where interface~"^\\*[0-9a-fA-F]{1,8}\$"]
#add vlan 836
:if ([/interface print count-only where name=$interfaceInternet]=0) do={
  /interface ethernet set $interfacePhysical l2mtu=1796 mtu=1704 mac-address=$MACFree
/interface vlan add name=$interfaceInternet vlan-id=836 mtu=1700 interface=$interfacePhysical
/interface list member add interface=$interfaceInternet list=WAN
}
#add ipv6 address for ipipv6 tunnel
:if ([/ipv6 address print count-only where comment="interfaceInternet2"]=0) do={
/ipv6 address add address="fd99::0ffff/128" interface="$interfaceInternet" advertise=no comment="interfaceInternet2"
}
#add FW rule
:if ([ :len [/ipv6/firewall/filter/find where comment="Allow IPIPv6 tunnel on WAN" ]] = 0) do={
  /ipv6 firewall filter add action=accept chain=input comment="Allow IPIPv6 tunnel on WAN" in-interface-list=WAN \
protocol=ipencap  place-before=*0
}
:if ([ :len [/ipv6/firewall/filter/find where comment="Allow dhcpv6 replies on WAN" ]] = 0) do={
  /ipv6 firewall filter add action=accept chain=input comment="Allow dhcpv6 replies on WAN" dst-port=546 \
in-interface-list=WAN log=yes log-prefix="fw, a: allow6, r: aid, " protocol=udp src-address=fe80::/10 place-before=*0
}
#add ipv6 DHCP Client
:if ([/ipv6 dhcp-client print count-only where comment="fibre-free"]=0) do={
/ipv6 dhcp-client
add add-default-route=yes comment="fibre-free" interface=$interfaceInternet pool-name="pool-freeV6" pool-prefix-length=60 request=address,prefix script="#Modify the \
    CustomDNSFree\r\
    \n:local CustomDNSFree \"$CustomDNSFree\"\r\
    \n\r\
    \n:local interfaceInternet \"$interfaceInternet\"\r\
  \n:local ipipv6 \"$ipipv6\"\r\
    \n\r\
    \n:local prefix [/ipv6 dhcp-client get [find interface=\$interfaceInternet] value-name=prefix]\r\
    \n:set prefix ([:pick \$prefix 0 ([:find \$prefix \",\"]-3)])\r\
    \n:local gw [/ipv6 dhcp-client get [find interface=\$interfaceInternet] value-name=address]\r\
    \n:set gw ([:pick \$gw 0 ([:find \$gw \",\"])])\r\
    \n:local addresse0ffff (([:pick \$prefix 0 ( [ :len \$prefix ] -1 )]) . \"0:ffff:ffff:0\")\r\
    \n:local prefix2 (([:pick \$prefix 0 ( [ :len \$prefix ] -3 )]) . \"2::\")\r\
    \n\r\
    \n#remove the uggly IP\r\
    \n/ipv6 address remove [find address=\"\$gw/128\"]\r\
    \n#set ipv6 for forwarding ipipv6 tunnel\r\
    \n/ipv6 address set [find comment=\"interfaceInternet2\"] address=\"\$addresse0ffff/128\" interface=\"\$interfaceInternet\" adver\
    tise=no\r\
    \n#set ip to the ipipv6 tunnel\r\
    \n/interface ipipv6 set \$ipipv6 local-address=\$addresse0ffff\r\
    \n#set IPV4 Free\r\
    \n:local ipv4free [:resolve \$CustomDNSFree]\r\
    \n/ip address set [find comment=\"ipv4-free\"] address=\$ipv4free network=\$ipv4free interface=\$ipipv6\r\
    \n" use-interface-duid=yes use-peer-dns=no

} else {
/ipv6 dhcp-client set [find comment="fibre-free"] interface=$interfaceInternet
}
#add ipipV6 tunnel
:if ([/interface print count-only where name=$ipipv6]=0) do={
/interface ipipv6 add name=$ipipv6 remote-address=2a01:e00:29:200a::fffd local-address=fe80::1234 mtu=1500
  /interface list member add interface=$ipipv6 list=WAN
}
#add ipv4 on ipipv6 interface
:if ([/ip address print count-only where comment=$ipv4Free]=0) do={
/ip address add address=1.2.3.4 network=1.2.3.4 comment=$ipv4Free interface=$ipipv6
}
#add route ipv4 on ipipv6 interface
:if ([/ip route print count-only where comment=$ipipv6]=0) do={
/ip route add dst-address=0.0.0.0/0 gateway=$ipipv6 comment=$ipipv6
} else {
  /ip route set [find comment=$ipipv6] gateway=$ipipv6
}
#
/ipv6 dhcp-client release [find comment="fibre-free"]

Salut, je viens de tester ton script il fonctionne mais il c’était une belle galère à le faire fonctionner (j’ai eu plusieurs erreurs en essayant de importer le script j’ai finalement essayé sous windows et un navigateur et cela à fonctionné et ensuite j’avais pas de communication au niveau du sfp donc j’ai du désactiver l’auto négociation et choisir 1000base-X et finalement pour que internet fonctionne j’ai du aller dans l’interface ip6 et accepter le peerdns et la connexion OK.

Je n’ai qu’une connexion ipv4 dans mes appareils LAN pour l’instant faudrait que je regarde pourquoi.

timo

  • Abonné Orange Fibre
  • *
  • Messages: 16
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #76 le: 17 décembre 2024 à 08:21:03 »
Hello Kaxapo.
Est-ce que tu pourrais faire un test en ipv4? Sur la dernière version stable de routerOS il semblerait qu'il y ait un bug sur l'implémentation du tunnel ipipv6, ce qui cause des TCP retry et un débit vraiment pas dingue en TCP only comme tu peux le voir sur leur forum
https://forum.mikrotik.com/viewtopic.php?t=212712

kaxapo

  • Abonné Free fibre
  • *
  • Messages: 283
  • FTTH Freebox révolution V6
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #77 le: 17 décembre 2024 à 13:40:42 »
Hello Kaxapo.
Est-ce que tu pourrais faire un test en ipv4? Sur la dernière version stable de routerOS il semblerait qu'il y ait un bug sur l'implémentation du tunnel ipipv6, ce qui cause des TCP retry et un débit vraiment pas dingue en TCP only comme tu peux le voir sur leur forum
https://forum.mikrotik.com/viewtopic.php?t=212712

Oui pourquoi pas, tu veut que je fasse quoi comme test ? Et sinon au niveau de l’ipv6 sur ton LAN est ce que t’arrive à avoir une connectivité ? Si oui tu as quoi comme setup en ipv6.

timo

  • Abonné Orange Fibre
  • *
  • Messages: 16
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #78 le: 17 décembre 2024 à 15:33:05 »
Je me suis aperçu du problème en faisant un téléchargement sur un site qui n'a que de l'ipv4 et en téléchargeant un gros fichier par exemple sur https://ash-speed.hetzner.com/. En utilisant wget -4 pour forcer l'ipv4 tu devrais te rendre compte du problème, je suis au max a 10Mbits.
Pour l'ipv6 oui je l'ai setup pour chacun de mes VLAN qui en avait besoin. Il suffit de mettre une ipv6 dans ipv6==>Address à partir du préfixe que tu as et /64 et que tu coches la case advertise.

kaxapo

  • Abonné Free fibre
  • *
  • Messages: 283
  • FTTH Freebox révolution V6
Supprimer une Mini-4K avec boitier ONTv2 en ZMD - Problème d'authentification ?
« Réponse #79 le: 18 décembre 2024 à 14:07:42 »
Salut Timo, je rencontre le meme soucis que toi ! En ipv6 c’est ok (j’ai même des meilleurs débits qu’avec la Freebox en mode bridge ou seule) mais en ipv4 j’ai un soucis de telechargement qui plafonne à 200/300kbits et en speedtest ipv4 je suis à 5mb/s download et 100mb/s upload.