Skip to main content
Sticky

Gebruik een eigen router i.p.v. de Experia Box

Gebruik een eigen router i.p.v. de Experia Box
Toon eerste bericht

8855 reacties

  • Slimmerik
  • 124 reacties
  • 6 december 2018
Update:

Gisterochtend ook de firmware 1.10.8 geladen.

Ik heb geprobeerd om een kernel tbv IPtv te krijgen. Hij vertikt het gewoon. Ook na een stel harde reboots
in een heel eenvoudige opstelling.

Met de Kriegsman regels weer een static route opgebouwd en alles werkt weer stabiel.

  • Deelnemer
  • 7 reacties
  • 6 december 2018
Heren (met in het bijzonder WJB), bedankt! Ik ben ook overgestapt op een ER Lite en het draait hier prima. Keuze om over te stappen is omdat ik meer controle wilde hebben over de instellingen zoals standaard DNS server en firewall settings, tevens had mijn V10a kuren met de DHCP lease.

Enige kanttekening; ook ik krijg IPTV niet in kernel, alleen maar via de static methode. Dit zou ik graag nog aangepast krijgen en hoop dat we hier komende tijd nog de vinger achter gaan krijgen!

Keep up the good work!

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 8 december 2018
Zojuist firmware 1.10.8 geplaatst en gelukkig is de route naar 213.75.112.0/21 nog altijd een kernel route.
Helaas kan ik geen enkele documentatie vinden op basis waarvan de EdgeRouter (of eigenlijk Linux) een kernel route creëert, anders dan wat beschreven is in dit bericht.
Ik blijf zoeken zodat we allemaal dat script niet meer nodig hebben om een static route aan te maken.

Kunnen jullie eens bij de client-options van de dhcp-options van interface eth0 vif 4 controleren of de eerste regel precies zo eindigt als in het onderstaande screenshot.


  • Slimmerik
  • 124 reacties
  • 8 december 2018
Hoi WJB,

Zo te zien geen verschil.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 8 december 2018
Helaas ... maar niet geschoten is altijd mis. ;-)

Blijft de vraag waarom sommigen netjes een kernel route krijgen voor het IPTV platform en anderen een static route moeten opzetten.


Ik hoop dat we kunnen achterhalen wat de instelling is die er voor zorgt dat de route naar 213.75.112.0/21 netjes als kernel route aangemaakt wordt.
De onderstaande configuratieregel zou dat, naar ik begrepen heb, eigenlijk moeten verzorgen...

set interfaces ethernet eth0 vif 4 dhcp-options client-option 'request subnet-mask, routers, rfc3442-classless-static-routes;'

...maar blijkbaar is daar toch nog iets meer voor nodig.

@FredK2017, als jij de static route naar 213.75.112.0/21 uit jouw configuratie verwijdert (Config Tree -> protocols -> static -> route), de EdgeRouter een shutdown geeft, even van stroom afhaalt en opnieuw aan zet, krijg je dan wel een kernel-route?
Zo nee, dan moet je helaas die static route maar weer terugzetten zodat het script (scheduled task) deze automatisch zal bijwerken in het geval de "next-hop" mocht wijzigen.
Zo ja, dan kan je de scheduled task verwijderen. (System -> task-scheduler)

  • Slimmerik
  • 124 reacties
  • 8 december 2018
Ik zal er morgen even induiken. Ben benieuwd....

  • Deelnemer
  • 7 reacties
  • 8 december 2018
Dank wjb, ik zal er in duiken!

ik had overigens ergens gelezen dat het mogelijk de pppoe is die bepaald wat de routing is. Linux/ER noemt dit dan kernel.

Als dit zo is, dan lijkt mij de oplossing nog ingewikkelder. KPN moet dan het signaal zo door gaan geven of wij moeten een trigger zien te vinden waardoor KPN dit gaat doen.

Ik laat sowieso een update weten!

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 8 december 2018
Polletje schreef:
ik had overigens ergens gelezen dat het mogelijk de pppoe is die bepaald wat de routing is. Linux/ER noemt dit dan kernel.

Het klopt dat de default route (0.0.0.0/0) standaard op de pppoe verbinding geplaatst wordt.
Daarnaast hoort de kernel op basis van die rfc3442-classless-static-routes ook de door de DHCP server van het IPTV platform (vlan 4) aangeleverde "static routes" aan te maken.
In de rfc3442 documentatie staat dat dit alleen mag gebeuren als de route nog niet als static route gedefinieerd is. Vandaar mijn opmerking om de static route uit de configuratie te verwijderen en dan de router opnieuw op te starten.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 8 december 2018
In de configuratie van IPv6 bleek nog een foutje te zitten. In rule 30 van de firewall WANv6_LOCAL werd een lege source gedefinieerd waardoor er geen enkele source door de firewall geaccepteerd werd terwijl juist alle sources geaccepteerd moeten worden.

set firewall ipv6-name WANv6_LOCAL rule 30 source

Deze regel moet verwijderd worden om IPv6 goed te laten functioneren.
In de GUI kan je dit doen door op het minnetje aan het einde van de source regel te klikken en de wijziging door te voeren. Daarna behoort het er als onderstaand uit te zien.


Ik heb de scripts in het openingsbericht van dit topic uiteraard aangepast.

  • Slimmerik
  • 124 reacties
  • 9 december 2018
wjb schreef:
@FredK2017, als jij de static route naar 213.75.112.0/21 uit jouw configuratie verwijdert (Config Tree -> protocols -> static -> route), de EdgeRouter een shutdown geeft, even van stroom afhaalt en opnieuw aan zet, krijg je dan wel een kernel-route?
Zo nee, dan moet je helaas die static route maar weer terugzetten zodat het script (scheduled task) deze automatisch zal bijwerken in het geval de "next-hop" mocht wijzigen.
Zo ja, dan kan je de scheduled task verwijderen. (System -> task-scheduler)

Helaas geen kernel of andere static route.
Bedankt voor het idee. We zoeken verder.😀

Misschien dat @Polletje een ander resultaat heeft?

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
FredK2017 schreef:
Helaas geen kernel of andere static route.

Toch ben ik er ondertussen van overtuigd dat die DHCP optie request rfc3442-classless-static-routes zou moeten leiden tot het aanmaken van die route.
Hoewel ik de kans klein acht, maar je weet maar nooit, zou het nog kunnen dat de de DHCP server waar jouw aansluiting mee verbonden wordt die route niet aanlevert.
Dat zou betekenen dat het issue door KPN verholpen moet gaan worden.
Ik acht de kans klein omdat ik verwacht dat Experia Boxen dan ook problemen zouden hebben aangezien die vast ook gebruik maken van die rfc3442-classless-static-routes.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
@FredK2017, heb jij in de directory /etc/dhcp3/dhclient-exit-hooks.d het bestand rfc3442-classless-routes staan?

  • Slimmerik
  • 124 reacties
  • 9 december 2018
Staat er niet in:


wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
Voilà, dan hebben we zeer waarschijnlijk de oorzaak boven water. :-)
Ik zal kijken of ik de inhoud van dat bestand hier kan posten zodat je die naar die directory kunt kopiëren.

Ik denk dat we nu op het juiste spoor zijn. 😉

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
Onderstaand de inhoud van het bestand rfc3442-classless-routes uit de directory /etc/dhcp3/dhclient-exit-hooks.d
Dit bestand moet dezelfde rechten hebben als de vyatta-dhclient-hook.
Toon inhoud
code:
# set classless routes based on the format specified in RFC3442
# e.g.:
# new_rfc3442_classless_static_routes='24 192 168 10 192 168 1 1 8 10 10 17 66 41'
# specifies the routes:
# 192.168.10.0/24 via 192.168.1.1
# 10.0.0.0/8 via 10.10.17.66.41
RUN="yes"

if [ "$RUN" = "yes" ]; then
if [ -n "$new_rfc3442_classless_static_routes" ]; then
if [ "$reason" = "BOUND" ] || [ "$reason" = "REBOOT" ]; then
set -- $new_rfc3442_classless_static_routes
while [ $# -gt 0 ]; do
net_length=$1
via_arg=''
case $net_length in
32|31|30|29|28|27|26|25)
net_address="${2}.${3}.${4}.${5}"
gateway="${6}.${7}.${8}.${9}"
shift 9
;;
24|23|22|21|20|19|18|17)
net_address="${2}.${3}.${4}.0"
gateway="${5}.${6}.${7}.${8}"
shift 8
;;
16|15|14|13|12|11|10|9)
net_address="${2}.${3}.0.0"
gateway="${4}.${5}.${6}.${7}"
shift 7
;;
8|7|6|5|4|3|2|1)
net_address="${2}.0.0.0"
gateway="${3}.${4}.${5}.${6}"
shift 6
;;
0) # default route
net_address="0.0.0.0"
gateway="${2}.${3}.${4}.${5}"
shift 5
;;
*) # error
return 1
;;
esac
# take care of link-local routes
if [ "${gateway}" != '0.0.0.0' ]; then
via_arg="via ${gateway}"
fi
# set route (ip detects host routes automatically)
ip -4 route add "${net_address}/${net_length}" \
${via_arg} dev "${interface}" >/dev/null 2>&1
done
fi
fi
fi

  • Slimmerik
  • 124 reacties
  • 9 december 2018
Bedankt WJB.
Ik "mag" hier morgen pas weer verder aan werken.😉

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
Ik heb een zip-bestand gemaakt met de configuratie bestanden voor de EdgeRouter Lite 3 en deze is nu hier te downloaden.
Ook het bestand rfc3442-classless-routes is opgenomen, zodat het mogelijk zou moeten zijn de benodigde routes voor IPTV automatisch door de kernel aan te laten maken.
Volg de instructies uit de readme om het benodigde script te installeren.

  • Deelnemer
  • 7 reacties
  • 9 december 2018
@wjb Held! Met jouw laatste instructies (m.b.t. het rfc3442 bestand) draait IPTV nu ook bij mij in Kernel. Ben hier enorm blij mee! Ik had de andere configuratie bestanden niet nodig.

Het was nog even puzzelen hoe ik het bestand in de juiste directory kreeg i.v.m. de root-rechten en omdat ik beperkte kennis heb van Command-lines maar het is de tijdsbesteding meer dan waard geweest.

@FredK2017 Nog even doorzetten dus, je bent dichtbij! Vergeet de ER niet te herstarten nadat je het bestand hebt toegevoegd.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
Ik neem aan dat je het script rfc3442-classless-routes in de directory /config/user-data hebt geplaatst en het script copy-rfc3442-classless-routes in de directory /config/scripts/post-config.d.

Hiermee voorkom je dat bij een firmware upgrade de functionaliteit eventueel verloren gaat.

  • Deelnemer
  • 7 reacties
  • 9 december 2018
Nee, dat heb ik niet gedaan en hier zal ik dus nog achteraan moeten. Gelukkig net de router geüpgrade naar 1.10.8 dus hopelijk heb ik even de tijd.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 9 december 2018
Polletje schreef:
Nee, dat heb ik niet gedaan en hier zal ik dus nog achteraan moeten. Gelukkig net de router geüpgrade naar 1.10.8 dus hopelijk heb ik even de tijd.

Het staat allemaal beschreven in de readme in de laatste versie van het zip-bestand met alle benodigde configuratiescripts.

  • Slimmerik
  • 124 reacties
  • 10 december 2018
Yes,


Gelukt.
Ik zat heel even in de knoop met de rechten van de scripts. In WinSCP is dat toch heel makkelijk in te stellen.
Heel veel dank WJB.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 10 december 2018
Goed te lezen dat het jou ook gelukt is.
Ik neem aan dat jij wel het script rfc3442-classless-routes in de directory /config/user-data hebt geplaatst en het script copy-rfc3442-classless-routes in de directory /config/scripts/post-config.d zodat bij firmware updates deze functionaliteit niet verloren gaat.

Ik heb bij Ubiquiti een ticket geopend om het script rfc3442-classless-routes in de standaard deployment opgenomen te krijgen zodat we deze "work-around" weer weg kan.

De toepassing winSCP is inderdaad een zeer handige tool. 🙂

  • Slimmerik
  • 124 reacties
  • 10 december 2018
De scripts heb ik meteen in de desbetreffende directories geplaatst.

Toch merkwaardig dat jij en Ed die work-around niet nodig hebben en anderen wel.
Eens afwachten wat Ubiquiti daarover te vertellen heeft.

wjb
Superuser
  • Auteur
  • 74610 reacties
  • 10 december 2018
FredK2017 schreef:
De scripts heb ik meteen in de desbetreffende directories geplaatst.

Toch merkwaardig dat jij en Ed die work-around niet nodig hebben en anderen wel.
Eens afwachten wat Ubiquiti daarover te vertellen heeft.

Ik denk dat ik die work-around er lang geleden al een keer op gezet had en vergeten was dat ik dat gedaan had. 😞 Laten we het maar houden op het aftakelende geheugen van een 55plusser. ;-)

Ik heb die EdgeRouter op 27 december 2016 al aangeschaft en toen ook al gedeeltelijk ingericht voor vervanging van de Experia Box. Zie dit bericht.
Een paar maanden terug ben ik van scratch opnieuw begonnen met de inrichting, maar de work-around was op de achtergrond (waarschijnlijk) dus al aanwezig.

Reageer