Discussion:
twee default routes met zelfde metric
(te oud om op te antwoorden)
richard lucassen
2019-09-15 08:48:05 UTC
Permalink
Even een Linux vraag hier: ik heb een linuxdoosje die aangesloten is op
twee routers die allebei een default gateway adverteren met dezelfde
metric en zelfde "medium" pref. Is zoiets met sysctl ergens te regelen?
Ik ben *geen* sysop van beide routers.

Ik kan wel Q&D gaan zitten scripten, maar weet iemand een elegante
oplossing daarvoor? Met sysctl krijg ik het niet voor elkaar. Bovendien
is een VLAN interface en /etc/sysctl.conf heeft geen invloed omdat de IF
nog niet bestaat als ie up gaat.

Ik heb het nu maar even opgelost door een van de twee statisch te maken
en er een lage metric aan te hangen.

Nu ik hier toch bezig ben: een van de twee is overigens een Ziggo
consumentenlijn met dynamisch ipv4 adres, weet iemand of dat ipv6
stuk een vast blok is?

R.
--
richard lucassen
http://contact.xaq.nl/
Maarten Carels
2019-09-16 09:11:20 UTC
Permalink
Post by richard lucassen
Even een Linux vraag hier: ik heb een linuxdoosje die aangesloten is op
twee routers die allebei een default gateway adverteren met dezelfde
metric en zelfde "medium" pref. Is zoiets met sysctl ergens te regelen?
Ik ben *geen* sysop van beide routers.
Ik kan wel Q&D gaan zitten scripten, maar weet iemand een elegante
oplossing daarvoor? Met sysctl krijg ik het niet voor elkaar. Bovendien
is een VLAN interface en /etc/sysctl.conf heeft geen invloed omdat de IF
nog niet bestaat als ie up gaat.
Ik heb het nu maar even opgelost door een van de twee statisch te maken
en er een lage metric aan te hangen.
Situatie lijkt op wat ik hier thuis heb, twee lijnen aan een server, in
mijn geval is dat FreeBSD. Waar je mee te maken hebt is met twee routers
die allebei stateful firewalling doen. Dat betekent dat wat via lijn 1
binnengekomen is, er ook via lijn 1 weer uitmoet qua antwoord. Dat wordt
dus een soort source based routing.
Ik heb dat op FreebSD opgelost via wat ipfw regels (ipfw is de iptables
van BSD).
Dat werkt prima, gewoon uitgaand verkeer (geinitieerd vanaf die server)
gaat op basis van default route altijd over dezelfde lijn naar buiten.

Je zou iets dergelijks kunnen maken met iptables, dar kan je vast ook
verkeer naar een specifieke next-hop sturen.

--maarten
richard lucassen
2019-09-16 12:30:57 UTC
Permalink
On Mon, 16 Sep 2019 11:11:20 +0200
Post by Maarten Carels
Post by richard lucassen
Even een Linux vraag hier: ik heb een linuxdoosje die aangesloten
is op twee routers die allebei een default gateway adverteren met
dezelfde metric en zelfde "medium" pref. Is zoiets met sysctl
ergens te regelen? Ik ben *geen* sysop van beide routers.
Ik kan wel Q&D gaan zitten scripten, maar weet iemand een elegante
oplossing daarvoor? Met sysctl krijg ik het niet voor elkaar.
Bovendien is een VLAN interface en /etc/sysctl.conf heeft geen
invloed omdat de IF nog niet bestaat als ie up gaat.
Ik heb het nu maar even opgelost door een van de twee statisch te
maken en er een lage metric aan te hangen.
Situatie lijkt op wat ik hier thuis heb, twee lijnen aan een server,
in mijn geval is dat FreeBSD. Waar je mee te maken hebt is met twee
routers die allebei stateful firewalling doen. Dat betekent dat wat
via lijn 1 binnengekomen is, er ook via lijn 1 weer uitmoet qua
antwoord. Dat wordt dus een soort source based routing.
Ik heb dat op FreebSD opgelost via wat ipfw regels (ipfw is de
iptables van BSD).
Dat werkt prima, gewoon uitgaand verkeer (geinitieerd vanaf die
server) gaat op basis van default route altijd over dezelfde lijn
naar buiten.
Je zou iets dergelijks kunnen maken met iptables, dan kan je vast ook
verkeer naar een specifieke next-hop sturen.
Ja, dat kan natuurlijk altijd, sterker nog: het zit er zelfs in ;-) Maar
ik vroeg me gewoon af of je nog invloed hebt via sysctl o.i.d. op je
eigen machine. Want je kunt met ip wel de pref veranderen, maar als de
lease verloopt dan gaat-ie weer. Bovendien weet ik niet of het Ziggo
segment een vast segment is bij een dyn ipv4 adres en dat is wel handig
om te weten want verwijzing naar een table is hardcoded.

R.
--
richard lucassen
http://contact.xaq.nl/
Richard Lucassen
2019-09-19 17:36:16 UTC
Permalink
On Sun, 15 Sep 2019 10:48:05 +0200
Post by richard lucassen
Bovendien is een VLAN interface en /etc/sysctl.conf heeft geen
invloed omdat de IF nog niet bestaat als ie up gaat.
Oeps:

s/VLAN/ppp/

Maar ik zat te slapen, je hoeft alleen maar een default gateway naar
het ppp device te zetten, niks slaac of fixed address gedoe.

ip -6 route add default dev ppp0 metric 200

De eth heeft een metric 300, dus als de ppp0 verdwijnt gaat alles via de
eth.

Soms is het leven simpel.

R.
--
Richard Lucassen
http://contact.xaq.nl/
Rob
2019-09-19 17:44:27 UTC
Permalink
Post by Richard Lucassen
On Sun, 15 Sep 2019 10:48:05 +0200
Post by richard lucassen
Bovendien is een VLAN interface en /etc/sysctl.conf heeft geen
invloed omdat de IF nog niet bestaat als ie up gaat.
s/VLAN/ppp/
Maar ik zat te slapen, je hoeft alleen maar een default gateway naar
het ppp device te zetten, niks slaac of fixed address gedoe.
ip -6 route add default dev ppp0 metric 200
De eth heeft een metric 300, dus als de ppp0 verdwijnt gaat alles via de
eth.
Soms is het leven simpel.
Ja in dat geval is het inderdaad simpel.
Het algemene geval van "we hebben 2 internet aansluitingen met ieder
een eigen vaste /48 range en die willen we beiden op het LAN zetten"
dat is nog niet zo eenvoudig. Als je 2 routers hebt (of 1) die 2
netwerken announcen dan is het resultaat tamelijk onvoorspelbaar.

Een nette oplossing hiervoor is om de router (dan moet het er 1 zijn)
NAT te laten doen tussen een private range en de 2 externe ranges,
dan kan de router alles regelen. Maar er zijn mensen die denken dat
NAT nooit een plek heeft binnen IPv6 en tja dan wordt het lastiger.
richard lucassen
2019-09-20 09:22:40 UTC
Permalink
On 19 Sep 2019 17:44:27 GMT
Post by Rob
Post by Richard Lucassen
s/VLAN/ppp/
Maar ik zat te slapen, je hoeft alleen maar een default gateway naar
het ppp device te zetten, niks slaac of fixed address gedoe.
ip -6 route add default dev ppp0 metric 200
De eth heeft een metric 300, dus als de ppp0 verdwijnt gaat alles
via de eth.
Soms is het leven simpel.
Ja in dat geval is het inderdaad simpel.
Het gaat ook alleen om outbound verkeer.
Post by Rob
Het algemene geval van "we hebben 2 internet aansluitingen met ieder
een eigen vaste /48 range en die willen we beiden op het LAN zetten"
dat is nog niet zo eenvoudig. Als je 2 routers hebt (of 1) die 2
netwerken announcen dan is het resultaat tamelijk onvoorspelbaar.
Een nette oplossing hiervoor is om de router (dan moet het er 1 zijn)
NAT te laten doen tussen een private range en de 2 externe ranges,
dan kan de router alles regelen. Maar er zijn mensen die denken dat
NAT nooit een plek heeft binnen IPv6 en tja dan wordt het lastiger.
Of je installeert policy routing op die host die via 2 netwerken
bereikbaar moet zijn. Dan valt in ieder geval één besturingssysteem
af ;-)

Maar NAT is inderdaad handiger dan :)
--
richard lucassen
http://contact.xaq.nl/
Rob
2019-09-20 09:26:52 UTC
Permalink
Post by richard lucassen
Post by Rob
Het algemene geval van "we hebben 2 internet aansluitingen met ieder
een eigen vaste /48 range en die willen we beiden op het LAN zetten"
dat is nog niet zo eenvoudig. Als je 2 routers hebt (of 1) die 2
netwerken announcen dan is het resultaat tamelijk onvoorspelbaar.
Een nette oplossing hiervoor is om de router (dan moet het er 1 zijn)
NAT te laten doen tussen een private range en de 2 externe ranges,
dan kan de router alles regelen. Maar er zijn mensen die denken dat
NAT nooit een plek heeft binnen IPv6 en tja dan wordt het lastiger.
Of je installeert policy routing op die host die via 2 netwerken
bereikbaar moet zijn. Dan valt in ieder geval één besturingssysteem
af ;-)
Maar NAT is inderdaad handiger dan :)
Het vervelende van oplossingen in de host is dat je het dan op iedere
host moet regelen. Een gasten-wifi wordt dan lastig te doen.
Philip Homburg
2019-09-20 12:06:03 UTC
Permalink
Post by Rob
Het algemene geval van "we hebben 2 internet aansluitingen met ieder
een eigen vaste /48 range en die willen we beiden op het LAN zetten"
dat is nog niet zo eenvoudig. Als je 2 routers hebt (of 1) die 2
netwerken announcen dan is het resultaat tamelijk onvoorspelbaar.
RFC 8028 (First-Hop Router Selection by Hosts in a Multi-Prefix Network)
beschrijft wat een host zou moeten doen als er meerdere routers zijn die
ieder hun eigen prefix announcen.
--
We just programmed the computers to revive us when it was all over... they
were index linked to the [...] stock market prices you see, so that we'd
be revived when everybody else had rebuilt the economy enough to be able to
afford our rather expensive services again. -- Slartibartfast in THHGTTG
Rob
2019-09-20 13:04:25 UTC
Permalink
Post by Philip Homburg
Post by Rob
Het algemene geval van "we hebben 2 internet aansluitingen met ieder
een eigen vaste /48 range en die willen we beiden op het LAN zetten"
dat is nog niet zo eenvoudig. Als je 2 routers hebt (of 1) die 2
netwerken announcen dan is het resultaat tamelijk onvoorspelbaar.
RFC 8028 (First-Hop Router Selection by Hosts in a Multi-Prefix Network)
beschrijft wat een host zou moeten doen als er meerdere routers zijn die
ieder hun eigen prefix announcen.
Wat ik bedoel is meer wat er beschreven wordt in RFC8475.
Philip Homburg
2019-09-23 11:43:14 UTC
Permalink
Post by Rob
Wat ik bedoel is meer wat er beschreven wordt in RFC8475.
Het nadeel van deprecated adressen is dat al het verkeer over 1 link gaat.

Een ander nadeel is dat het niet werkt met statische configuratie.

Voordeel is dat het in principe werkt met alle IPv6 stacks.
--
We just programmed the computers to revive us when it was all over... they
were index linked to the [...] stock market prices you see, so that we'd
be revived when everybody else had rebuilt the economy enough to be able to
afford our rather expensive services again. -- Slartibartfast in THHGTTG
Erik Slagter
2020-02-08 08:44:31 UTC
Permalink
Post by richard lucassen
Even een Linux vraag hier: ik heb een linuxdoosje die aangesloten is op
twee routers die allebei een default gateway adverteren met dezelfde
metric en zelfde "medium" pref. Is zoiets met sysctl ergens te regelen?
Ik ben *geen* sysop van beide routers.
Ik kan wel Q&D gaan zitten scripten, maar weet iemand een elegante
oplossing daarvoor? Met sysctl krijg ik het niet voor elkaar. Bovendien
is een VLAN interface en /etc/sysctl.conf heeft geen invloed omdat de IF
nog niet bestaat als ie up gaat.
Als je geen ECMP (equal-path-multipath-routing) aan hebt staan, dan zal
de kernel toch een voorkeur hebben voor een van beide routes. Aangezien
je zeer waarschijnlijk aan beide kanten een geNAT extern adres hebt, wat
zeer waarschijnlijk niet hetzelfde is, is dat maar goed ook. Met "ip
route get" en "traceroute" kun je nagaan welke route in feite gebruikt
wordt.

Wat bedoel je met "adverteren", refereer je naar RA? Ik weet niet of je
daar bij ontvangst nog iets mee kunt doen, ik denk het niet eigenlijk.
Ligt er ook aan of je systemd gebruikt of niet. Normaal gesproken verwerkt
de kernel de RA's zelf, maar systemd blokkeert dat en handelt ze zelf af,
dan is er misschien iets mogelijk.
Post by richard lucassen
Nu ik hier toch bezig ben: een van de twee is overigens een Ziggo
consumentenlijn met dynamisch ipv4 adres, weet iemand of dat ipv6 stuk
een vast blok is?
Ziggo en IPv6? De laatste keer (en dat is niet zo heel lang geleden) dat
ik ze daarover vroeg, werd er gezegd: "we hebben net nog weer een hele
range IPv4 adressen weten te verkrijgen, dus IPv6 is weer even op de
lange baan geschoven". Wat een redenatie... IPv6 bij Ziggo zal een HE
tunnel worden ben ik bang (niks op tegen hoor, prima service!)

Erik.
Erik Slagter
2020-02-08 08:46:55 UTC
Permalink
Post by Erik Slagter
Post by richard lucassen
Even een Linux vraag hier: ik heb een linuxdoosje die aangesloten is op
twee routers die allebei een default gateway adverteren met dezelfde
metric en zelfde "medium" pref. Is zoiets met sysctl ergens te regelen?
Ik ben *geen* sysop van beide routers.
Ik kan wel Q&D gaan zitten scripten, maar weet iemand een elegante
oplossing daarvoor? Met sysctl krijg ik het niet voor elkaar. Bovendien
is een VLAN interface en /etc/sysctl.conf heeft geen invloed omdat de
IF nog niet bestaat als ie up gaat.
Als je geen ECMP (equal-path-multipath-routing) aan hebt staan, dan zal
de kernel toch een voorkeur hebben voor een van beide routes. Aangezien
je zeer waarschijnlijk aan beide kanten een geNAT extern adres hebt, wat
zeer waarschijnlijk niet hetzelfde is, is dat maar goed ook. Met "ip
route get" en "traceroute" kun je nagaan welke route in feite gebruikt
wordt.
Wat bedoel je met "adverteren", refereer je naar RA? Ik weet niet of je
daar bij ontvangst nog iets mee kunt doen, ik denk het niet eigenlijk.
Ligt er ook aan of je systemd gebruikt of niet. Normaal gesproken
verwerkt de kernel de RA's zelf, maar systemd blokkeert dat en handelt
ze zelf af, dan is er misschien iets mogelijk.
Post by richard lucassen
Nu ik hier toch bezig ben: een van de twee is overigens een Ziggo
consumentenlijn met dynamisch ipv4 adres, weet iemand of dat ipv6 stuk
een vast blok is?
Ziggo en IPv6? De laatste keer (en dat is niet zo heel lang geleden) dat
ik ze daarover vroeg, werd er gezegd: "we hebben net nog weer een hele
range IPv4 adressen weten te verkrijgen, dus IPv6 is weer even op de
lange baan geschoven". Wat een redenatie... IPv6 bij Ziggo zal een HE
tunnel worden ben ik bang (niks op tegen hoor, prima service!)
Erik.
Oeps, mosterd na de maaltijd. Excuus!

Loading...