Discussion:
Netmask probleem met alias interface (Debian)
(te oud om op te antwoorden)
Paul van der Vlis
2009-07-01 10:09:28 UTC
Permalink
Hallo,

Sinds enige tijd heb ik een eigen IP-range in het datacenter. De default
netmask is daardoor veranderd (omdat het een class-C netwerk is).

In mijn /etc/network/interfaces heb ik de correcte netmask ingesteld,
maar bij het booten trekt de machine zich hier niks van aan en gebruikt
toch de default: 255.0.0.0.

Het gaat om een alias interface op eth0:0 wat problemen geeft, dit is de
configuratie:
----------
auto eth0
iface eth0 inet static
address 91.198.178.50
netmask 255.255.255.0
broadcast 91.198.178.255
gateway 91.198.178.1
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------

Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.

Iemand een idee wat er mis gaat?

Wat me ook verbaasd is dat dit interface gebruikt wordt. Op zich wordt
namelijk het IP wat eindigt op .50" aangesproken, waarom levert een
verkeerde netmask op de alias dan problemen op?

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Philip Paeps
2009-07-01 11:33:07 UTC
Permalink
Post by Paul van der Vlis
Sinds enige tijd heb ik een eigen IP-range in het datacenter. De default
netmask is daardoor veranderd (omdat het een class-C netwerk is).
Heu, classful IPv4 routing is al bijna vijftien jaar afgevoerd. Tegenwoordig
spreken we over een /24.
Post by Paul van der Vlis
In mijn /etc/network/interfaces heb ik de correcte netmask ingesteld, maar
bij het booten trekt de machine zich hier niks van aan en gebruikt toch de
default: 255.0.0.0.
Het gaat om een alias interface op eth0:0 wat problemen geeft, dit is de
Ik zou een alias interface een /32 mask geven. Ik zou het zelfs op de
loopback leggen, maar ik begrijp dat Linux daar mogelijk moeilijk over deed.
Post by Paul van der Vlis
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met de
hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Post by Paul van der Vlis
Iemand een idee wat er mis gaat?
Wat me ook verbaasd is dat dit interface gebruikt wordt. Op zich wordt
namelijk het IP wat eindigt op .50" aangesproken, waarom levert een
verkeerde netmask op de alias dan problemen op?
Omdat het een ander netwerk is, en dan kan je niet echt meer van een "alias"
spreken.

- Philip
--
Philip Paeps Please don't email any replies
***@paeps.cx I follow the newsgroup.

<Kitty> ALL HANDS BRACE FOR IMPACT!
<creature> ALL DENTISTS BRACE FOR MONEY!
Paul van der Vlis
2009-07-01 15:16:47 UTC
Permalink
Post by Philip Paeps
Post by Paul van der Vlis
Sinds enige tijd heb ik een eigen IP-range in het datacenter. De default
netmask is daardoor veranderd (omdat het een class-C netwerk is).
Heu, classful IPv4 routing is al bijna vijftien jaar afgevoerd. Tegenwoordig
spreken we over een /24.
Mijn man-page van ifconfig heeft het nog steeds over een class-C netoerk
en die is van december 2007...
Post by Philip Paeps
Post by Paul van der Vlis
In mijn /etc/network/interfaces heb ik de correcte netmask ingesteld, maar
bij het booten trekt de machine zich hier niks van aan en gebruikt toch de
default: 255.0.0.0.
Het gaat om een alias interface op eth0:0 wat problemen geeft, dit is de
Ik zou een alias interface een /32 mask geven. Ik zou het zelfs op de
loopback leggen, maar ik begrijp dat Linux daar mogelijk moeilijk over deed.
Heb ik niet geprobeerd. Linux gebruikt het default en niet mijn
ingestelde waarde.
Post by Philip Paeps
Post by Paul van der Vlis
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met de
hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Post by Philip Paeps
Post by Paul van der Vlis
Iemand een idee wat er mis gaat?
Wat me ook verbaasd is dat dit interface gebruikt wordt. Op zich wordt
namelijk het IP wat eindigt op .50" aangesproken, waarom levert een
verkeerde netmask op de alias dan problemen op?
Omdat het een ander netwerk is, en dan kan je niet echt meer van een "alias"
spreken.
Ik snap je antwoord niet...

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Philip Paeps
2009-07-01 16:20:16 UTC
Permalink
Post by Philip Paeps
Post by Paul van der Vlis
Sinds enige tijd heb ik een eigen IP-range in het datacenter. De default
netmask is daardoor veranderd (omdat het een class-C netwerk is).
Heu, classful IPv4 routing is al bijna vijftien jaar afgevoerd.
Tegenwoordig spreken we over een /24.
Mijn man-page van ifconfig heeft het nog steeds over een class-C netoerk en
die is van december 2007...
Die loopt dus stevig achter op de realiteit. CIDR is al sinds midden-1990s
the only way. Verder heeft Linux om één of andere reden besloten dat ifconfig
"versleten" is, en hebben ze nu "ip" om een beetje op cisco te lijken. Ik heb
daar een mening over maar die doet hier even niets terzake.
Post by Philip Paeps
Post by Paul van der Vlis
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken? Je
hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de router
lastigvallen, denk je?

Je hebt een fysieke interface (eth0) en daar liggen twee adressen op binnen
hetzelfde netwerk. Eén van die twee adressen is een alias. Een alias adres
geef je in de meeste IP stacks een all-ones netmask.

Als dat om een of andere reden in Linux toch niet zou werken, kan je eventueel
ook nog het volgende proberen:

auto eth0:0
iface eth0:0 inet static
address 91.198.178.51
netmask 255.255.255.0

Die eth0:0 interface dus een eigen interface blokje geven.

Een /32 alias zou echter ook moeten werken. Heeft als ik me niet vergis op
Linux gewerkt toen ik laatst zoiets nodig had.
Post by Philip Paeps
Post by Paul van der Vlis
Iemand een idee wat er mis gaat?
Wat me ook verbaasd is dat dit interface gebruikt wordt. Op zich wordt
namelijk het IP wat eindigt op .50" aangesproken, waarom levert een
verkeerde netmask op de alias dan problemen op?
Omdat het een ander netwerk is, en dan kan je niet echt meer van een
"alias" spreken.
Ik snap je antwoord niet...
Als je twee interfaces met een ander adres/mask hebt, denkt de routing table
dat het twee verschillende netwerken zijn.

- Philip
--
Philip Paeps Please don't email any replies
***@paeps.cx I follow the newsgroup.
Paul van der Vlis
2009-07-02 07:00:33 UTC
Permalink
Post by Philip Paeps
Post by Philip Paeps
Post by Paul van der Vlis
Sinds enige tijd heb ik een eigen IP-range in het datacenter. De default
netmask is daardoor veranderd (omdat het een class-C netwerk is).
Heu, classful IPv4 routing is al bijna vijftien jaar afgevoerd.
Tegenwoordig spreken we over een /24.
Mijn man-page van ifconfig heeft het nog steeds over een class-C netoerk en
die is van december 2007...
Die loopt dus stevig achter op de realiteit. CIDR is al sinds midden-1990s
the only way. Verder heeft Linux om één of andere reden besloten dat ifconfig
"versleten" is, en hebben ze nu "ip" om een beetje op cisco te lijken. Ik heb
daar een mening over maar die doet hier even niets terzake.
Ik zou "ip" kunnen proberen. Misschien geeft dat minder problemen.
Post by Philip Paeps
Post by Philip Paeps
Post by Paul van der Vlis
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken? Je
hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de router
lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk
meer, lijkt mij.
Post by Philip Paeps
Je hebt een fysieke interface (eth0) en daar liggen twee adressen op binnen
hetzelfde netwerk. Eén van die twee adressen is een alias. Een alias adres
geef je in de meeste IP stacks een all-ones netmask.
Als dat om een of andere reden in Linux toch niet zou werken, kan je eventueel
auto eth0:0
iface eth0:0 inet static
address 91.198.178.51
netmask 255.255.255.0
Die eth0:0 interface dus een eigen interface blokje geven.
Het is inderdaad te proberen, Koos schreef ook al zoiets.

Ik moet het maar eens gaan proberen op een ander systeem, wat wat minder
belangerijk is.
Post by Philip Paeps
Een /32 alias zou echter ook moeten werken. Heeft als ik me niet vergis op
Linux gewerkt toen ik laatst zoiets nodig had.
Post by Philip Paeps
Post by Paul van der Vlis
Iemand een idee wat er mis gaat?
Wat me ook verbaasd is dat dit interface gebruikt wordt. Op zich wordt
namelijk het IP wat eindigt op .50" aangesproken, waarom levert een
verkeerde netmask op de alias dan problemen op?
Omdat het een ander netwerk is, en dan kan je niet echt meer van een
"alias" spreken.
Ik snap je antwoord niet...
Als je twee interfaces met een ander adres/mask hebt, denkt de routing table
dat het twee verschillende netwerken zijn.
OK, dat klinkt zinvol.

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Philip Paeps
2009-07-02 11:14:35 UTC
Permalink
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken? Je
hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de router
lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk meer,
lijkt mij.
Dat lijkt je dan fout denk ik. :-) Het is een alias. De kernel weet al dat
hij die /24 kan bereiken via eth0. Conceptueel zou je die alias op je
loopback interface kunnen leggen.

- Philip
--
Philip Paeps Please don't email any replies
***@paeps.cx I follow the newsgroup.

They both savoured the strange warm glow of being much more ignorant than
ordinary people, who were only ignorant of ordinary things.
-- Discworld scientists at work
(Terry Pratchett, Equal Rites)
Paul van der Vlis
2009-07-02 13:05:22 UTC
Permalink
Post by Philip Paeps
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken? Je
hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de router
lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk meer,
lijkt mij.
Dat lijkt je dan fout denk ik. :-) Het is een alias. De kernel weet al dat
hij die /24 kan bereiken via eth0.
Je schreef eerder dat hij twee verschillende netwerken kan zien als de
netmask verschillend is.
Post by Philip Paeps
Conceptueel zou je die alias op je
loopback interface kunnen leggen.
Maar welk interface luistert dan naar het IP? Tja, het lo interface,
maar dat heeft geen verbinding met buiten.

Bedenk dat ik het alias van buitenaf wil bereiken (is voor HTTPS op een
bepaald domein).

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Philip Paeps
2009-07-02 14:17:43 UTC
Permalink
Post by Paul van der Vlis
Post by Philip Paeps
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan
zoeken? Je hebt een interface op dat netwerk (91.198.178.50/24), waarom
zou hij de router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk meer,
lijkt mij.
Dat lijkt je dan fout denk ik. :-) Het is een alias. De kernel weet al
dat hij die /24 kan bereiken via eth0.
Je schreef eerder dat hij twee verschillende netwerken kan zien als de
netmask verschillend is.
Een all-ones mask geeft aan dat het een alias is. Je kan duidelijk niet van
een "netwerk" spreken bij een all-ones mask omdat er geen enkele netwerk bit
in zit. 255.0.0.0 en 255.255.0.0 zijn wel (potentieel) twee verschillende
netwerken -- ook afhankelijk van hoe de routing table is opgebouwd.

Vergis je ook niet tussen binnekomend en buitengaand verkeer. De stack zal
naar alle lokale adressen luisteren. Default (als je geen packet filters
instelt die het tegenwerken) kan het de kernel niet echt schelen op welke
interface een adres ligt.

"oh, een arp voor 10.11.10.43? dat ben ik!"

Het wordt wat ingewikkelder als je er multicast bij betrekt, maar unicast is
echt heel erg eenvoudig.

Uitgaand is het interessanter: traffiek voor lokale netwerken wordt meteen
verzonden, ander traffiek gaat naar de routing table. Als jij een adres op
een interface hebt liggen als 10.11.10.42/23, weet de kernel dat alle verkeer
voor dat subnet langs die interface naar buiten kan. Je kunt dat ook forceren
zonder een adres te leggen door een network route te leggen die dat aangeeft.
De kernel gaat dan arps sturen om het link-layer adres te resolven en stuurt
vervolgens de data uit.

Wanneer een destination adres niet lokaal is, gaat de kernel de routing table
consulteren, en daar maakt de netmask ook uit bij het bepalen van de juiste
route. Als je maar een router hebt, maakt het uiteraard niet uit: alles wat
niet lokaal is gaat naar die ene router. Als je meerdere routers hebt zijn de
regels wat ingewikkelder. Als je een routing protocol draait (BGP, OSPF, RIP,
whatever) wordt het helemaal interessant maar ik denk niet dat het hier veel
terzake doet.

Ik kan je Stevens vol. 1 warm aanbevelen als deze materie je boeit. ;-)
Post by Paul van der Vlis
Post by Philip Paeps
Conceptueel zou je die alias op je loopback interface kunnen leggen.
Maar welk interface luistert dan naar het IP? Tja, het lo interface, maar
dat heeft geen verbinding met buiten.
Dat maakt toch niet uit? Het is een alias.

Voorbeeldje?

Mijn laptop:

[576] (***@luggage)~% ip addr ls dev eth0 | grep 'inet '
inet 10.11.10.42/23 brd 10.11.11.255 scope global eth0
[577] (***@luggage)~% ip addr ls dev lo | grep 'inet '
inet 127.0.0.1/8 scope host lo
inet 10.11.10.43/32 scope global lo

Andere machine:

[508] (***@cplx227)~% ping -c 1 10.11.10.43
PING 10.11.10.43 (10.11.10.43) 56(84) bytes of data.
64 bytes from 10.11.10.43: icmp_seq=0 ttl=63 time=0.485 ms

--- 10.11.10.43 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.485/0.485/0.485/0.000 ms, pipe 2
Post by Paul van der Vlis
Bedenk dat ik het alias van buitenaf wil bereiken (is voor HTTPS op een
bepaald domein).
Jawel. Dat is allemaal toch geen probleem? :-)

- Philip
--
Philip Paeps Please don't email any replies
***@paeps.cx I follow the newsgroup.
Wietse Muizelaar
2009-07-02 19:58:31 UTC
Permalink
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Na het booten staat de netmask van eth0:0 fout. Als ik na het booten met
de hand nogmaals het commando achter "up" geef, dan staat het wel goed.
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan
zoeken? Je hebt een interface op dat netwerk (91.198.178.50/24), waarom
zou hij de router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk meer,
lijkt mij.
Dat lijkt je dan fout denk ik. :-) Het is een alias. De kernel weet al
dat hij die /24 kan bereiken via eth0.
Je schreef eerder dat hij twee verschillende netwerken kan zien als de
netmask verschillend is.
Een all-ones mask geeft aan dat het een alias is. Je kan duidelijk niet van
een "netwerk" spreken bij een all-ones mask omdat er geen enkele netwerk bit
in zit. 255.0.0.0 en 255.255.0.0 zijn wel (potentieel) twee verschillende
netwerken -- ook afhankelijk van hoe de routing table is opgebouwd.
Vergis je ook niet tussen binnekomend en buitengaand verkeer. De stack zal
naar alle lokale adressen luisteren. Default (als je geen packet filters
instelt die het tegenwerken) kan het de kernel niet echt schelen op welke
interface een adres ligt.
"oh, een arp voor 10.11.10.43? dat ben ik!"
Het wordt wat ingewikkelder als je er multicast bij betrekt, maar unicast is
echt heel erg eenvoudig.
Uitgaand is het interessanter: traffiek voor lokale netwerken wordt meteen
verzonden, ander traffiek gaat naar de routing table. Als jij een adres op
een interface hebt liggen als 10.11.10.42/23, weet de kernel dat alle verkeer
voor dat subnet langs die interface naar buiten kan. Je kunt dat ook forceren
zonder een adres te leggen door een network route te leggen die dat aangeeft.
De kernel gaat dan arps sturen om het link-layer adres te resolven en stuurt
vervolgens de data uit.
Wanneer een destination adres niet lokaal is, gaat de kernel de routing table
consulteren, en daar maakt de netmask ook uit bij het bepalen van de juiste
route. Als je maar een router hebt, maakt het uiteraard niet uit: alles wat
niet lokaal is gaat naar die ene router. Als je meerdere routers hebt zijn de
regels wat ingewikkelder. Als je een routing protocol draait (BGP, OSPF, RIP,
whatever) wordt het helemaal interessant maar ik denk niet dat het hier veel
terzake doet.
Ik kan je Stevens vol. 1 warm aanbevelen als deze materie je boeit. ;-)
Post by Paul van der Vlis
Post by Philip Paeps
Conceptueel zou je die alias op je loopback interface kunnen leggen.
Maar welk interface luistert dan naar het IP? Tja, het lo interface, maar
dat heeft geen verbinding met buiten.
Dat maakt toch niet uit? Het is een alias.
Voorbeeldje?
inet 10.11.10.42/23 brd 10.11.11.255 scope global eth0
inet 127.0.0.1/8 scope host lo
inet 10.11.10.43/32 scope global lo
PING 10.11.10.43 (10.11.10.43) 56(84) bytes of data.
64 bytes from 10.11.10.43: icmp_seq=0 ttl=63 time=0.485 ms
--- 10.11.10.43 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.485/0.485/0.485/0.000 ms, pipe 2
Post by Paul van der Vlis
Bedenk dat ik het alias van buitenaf wil bereiken (is voor HTTPS op een
bepaald domein).
Jawel. Dat is allemaal toch geen probleem? :-)
Je moet alleen wel zorgen dat je in dit geval
/proc/sys/net/ipv4/conf/all/arp_ignore en arp_announce op juiste waardes
hebt staan. Zie kernel-source/Documentation/ip-sysctl.txt
--
Cheers,
Wietse
Maurice Janssen
2009-07-02 13:24:11 UTC
Permalink
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken?
Je hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de
router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk
meer, lijkt mij.
Ben niet zo bekend met de nukken van aliases onder Linux, maar bij OpenBSD
is het in ieder geval gebruikelijk om 255.255.255.255 als netmask te gebruiken
voor een alias. Zij bv http://www.OpenBSD.org/faq/faq6.html#Setup.aliases

Ben benieuwd of het onder Linux ook zo werkt.
--
Maurice
Paul van der Vlis
2009-07-02 13:55:12 UTC
Permalink
Post by Maurice Janssen
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken?
Je hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de
router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk
meer, lijkt mij.
Ben niet zo bekend met de nukken van aliases onder Linux, maar bij OpenBSD
is het in ieder geval gebruikelijk om 255.255.255.255 als netmask te gebruiken
voor een alias. Zij bv http://www.OpenBSD.org/faq/faq6.html#Setup.aliases
Ben benieuwd of het onder Linux ook zo werkt.
Het lijkt goed te werken, maar 255.255.255.0 werkt ook goed.

---------
auto eth0
iface eth0 inet static
address 91.198.178.26
gateway 91.198.178.1
netmask 255.255.255.0

auto eth0:0
iface eth0:0 inet static
address 91.198.178.27
gateway 91.198.178.1
netmask 255.255.255.255
-----------

---------
auto eth0
iface eth0 inet static
address 91.198.178.26
gateway 91.198.178.1
netmask 255.255.255.0

auto eth0:0
iface eth0:0 inet static
address 91.198.178.27
gateway 91.198.178.1
netmask 255.255.255.0
----------

Ik kan in elk geval bij beide een ssh connectie opbouwen met zowel de
.26 als de .27.

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Paul van der Vlis
2009-07-02 14:02:27 UTC
Permalink
Post by Paul van der Vlis
Het lijkt goed te werken, maar 255.255.255.0 werkt ook goed.
Ik kan in elk geval connecten naar 91.196.104.25, en dat leverde eerst
problemen op.

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Paul van der Vlis
2009-07-15 09:13:31 UTC
Permalink
Post by Paul van der Vlis
Post by Maurice Janssen
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken?
Je hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de
router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk
meer, lijkt mij.
Ben niet zo bekend met de nukken van aliases onder Linux, maar bij OpenBSD
is het in ieder geval gebruikelijk om 255.255.255.255 als netmask te gebruiken
voor een alias. Zij bv http://www.OpenBSD.org/faq/faq6.html#Setup.aliases
Ben benieuwd of het onder Linux ook zo werkt.
Het lijkt goed te werken, maar 255.255.255.0 werkt ook goed.
255.255.255.0 als netmask voor een alias bleek in de prakijk toch niet
altijd goed te functioneren. Bij connecten naar een bepaalde host bleek
het afzender IP opeens dat van de alias te zijn waardoor de firewall van
die machine hem niet toeliet.

Ook viel me op dat er in de routetabel twee routes waren die begonnen
met "0.0.0.0".

Ik gebruik daarom nu 255.255.255.255 als netmask voor een alias.

Dit is de configuratie van een machine:
-----------
auto eth0
iface eth0 inet static
address 91.198.178.50
netmask 255.255.255.0
broadcast 91.198.178.255
gateway 91.198.178.1

auto eth0:0
iface eth0:0 inet static
address 91.198.178.51
netmask 255.255.255.255
-----------


Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Joost de Heer
2009-07-15 10:48:09 UTC
Permalink
Post by Paul van der Vlis
Ik gebruik daarom nu 255.255.255.255 als netmask voor een alias.
Wat gebeurt er eigenlijk als je helemaal geen netmask opgeeft? Volgens
mij moet hij dan gewoon het netmask van de parent overnemen (zojuist
getest met een Fedora-11 machine: eth0:1 aangemaakt met alleen een IP
adres, geen netmask, en het juiste netmask wordt gebruikt).

Joost
Paul van der Vlis
2009-07-15 15:34:30 UTC
Permalink
Post by Joost de Heer
Post by Paul van der Vlis
Ik gebruik daarom nu 255.255.255.255 als netmask voor een alias.
Wat gebeurt er eigenlijk als je helemaal geen netmask opgeeft? Volgens
mij moet hij dan gewoon het netmask van de parent overnemen (zojuist
getest met een Fedora-11 machine: eth0:1 aangemaakt met alleen een IP
adres, geen netmask, en het juiste netmask wordt gebruikt).
Dan neemt hij de default netmask, en die verschilt per klasse netwerk
die je gebruikt. Kijk maar in "man ifconfig" en zoek op "netmask".

De problemen bij mij begonnen toen ik verhuisde naar een class-C netwerk
(eigen IP range). Toen veranderde mijn netmask.

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Fred Mobach
2009-07-15 16:18:08 UTC
Permalink
Post by Paul van der Vlis
De problemen bij mij begonnen toen ik verhuisde naar een class-C
netwerk (eigen IP range). Toen veranderde mijn netmask.
Wil je s.v.p. het eerste antwoord van Philip Paeps in deze draad nog
eens herlezen en heel goed blijven onthouden ? Iets met classful IPv4
routing o.i.d. Eigenlijk alleen historici spreken nog over
class-A/B/C/D/E.

Een beetje tekst en uitleg kun je vinden op
http://en.wikipedia.org/wiki/CIDR

Wat meer details en achtergrond in TCP/IP Illustrated, Volume 1 van W.
Richard Stevens.
--
Fred Mobach - ***@mobach.nl
website : http://fred.mobach.nl
.... In God we trust ....
.. The rest we monitor ..
Philip Paeps
2009-07-02 14:27:31 UTC
Permalink
Post by Maurice Janssen
Post by Paul van der Vlis
Post by Philip Paeps
Post by Paul van der Vlis
Post by Philip Paeps
En als je daar 255.255.255.255 van maakt?
Dan staat de routering verkeerd lijkt me, want hij moet bijvoorbeeld
91.198.178.10 niet gaan zoeken via de gateway.
Ik kan me niet voorstellen waarom hij die langs de router zou gaan zoeken?
Je hebt een interface op dat netwerk (91.198.178.50/24), waarom zou hij de
router lastigvallen, denk je?
Als je een netmask van 255.255.255.255 ziet hij geen lokaal netwerk
meer, lijkt mij.
Ben niet zo bekend met de nukken van aliases onder Linux, maar bij OpenBSD
is het in ieder geval gebruikelijk om 255.255.255.255 als netmask te gebruiken
voor een alias. Zij bv http://www.OpenBSD.org/faq/faq6.html#Setup.aliases
Ben benieuwd of het onder Linux ook zo werkt.
Het werkt ook zo onder Linux. En zowel op OpenBSD als op Linux kan je de
alias op de loopback interface leggen om conceptueel duidelijk de scheiding te
hebben tussen "een host adres" en "een adres op een interface dat er ligt om
een network route te forceren".

Je kunt ook gewoon *al* je adressen op je loopback leggen en een prefix route
maken, overigens. Niet echt een gebruikelijke configuratie, maar niets houdt
je tegen om het te doen.

[581] (***@luggage)~% ip addr ls dev lo | grep 'inet '
inet 127.0.0.1/8 scope host lo
inet 10.11.10.43/32 scope global lo
inet 10.11.10.42/32 scope global lo

[582] (***@luggage)~% ip addr ls dev eth0 | grep 'inet '

[583] (***@luggage)~% ip route ls dev eth0
10.11.10.0/23 scope link
default via 10.11.10.156

Perfect geldige configuratie en werkt ook gewoon. Het ziet er alleen zeer
vreemd uit omdat de conventie in de Unix-achtige wereld is om adressen om
interfaces te leggen.

Het helpt misschien om te herinneren dat de manier waarop "interfaces" op
Unix-achtige operating systems werken een grote layering violation zijn. Er
wordt geen verschil gemaakt tussen link-layer interfaces (in casu Ethernet) en
upper-layer interfaces (in casu IP).

Wanneer je een IP adres op een Ethernet interface legt, gebeuren er onder de
mat twee dingen (die in deze discussie relevant zijn - er gebeuren nog wel een
aantal dingen): de kernel begint het adres te herkennen als een adres waarop
hij bereikbaar is (arps moet replyen) en de kernel voegt een interface route
toe aan de routing table voor het netwerk dat je bij dat adres voegt (in het
geval van Paul een /24, in mijn geval een /23).

- Philip
--
Philip Paeps Please don't email any replies
Post by Maurice Janssen
Students? What are they then?
Like conference guests, but not as profitable, nor as prestigious.
-- srp3 and ph2 on ukc.misc
Martijn Lievaart
2009-07-26 18:05:09 UTC
Permalink
Post by Philip Paeps
inet 127.0.0.1/8 scope host lo
inet 10.11.10.43/32 scope global lo
inet 10.11.10.42/32 scope global lo
link
default via 10.11.10.156
(snip)
Post by Philip Paeps
Wanneer je een IP adres op een Ethernet interface legt, gebeuren er
onder de mat twee dingen (die in deze discussie relevant zijn - er
gebeuren nog wel een aantal dingen): de kernel begint het adres te
herkennen als een adres waarop hij bereikbaar is (arps moet replyen) en
de kernel voegt een interface route toe aan de routing table voor het
netwerk dat je bij dat adres voegt (in het geval van Paul een /24, in
mijn geval een /23).
En vergeet niet dat die route ook een src adres voor uitgaande pakketten
moet definieren. Bovenstaande gaat dus (denk ik) niet werken voor
pakketten die vanuit deze machine over die interface naar buiten moeten.

M4
Philip Paeps
2009-07-26 19:21:06 UTC
Permalink
Post by Martijn Lievaart
Post by Philip Paeps
inet 127.0.0.1/8 scope host lo
inet 10.11.10.43/32 scope global lo
inet 10.11.10.42/32 scope global lo
link
default via 10.11.10.156
(snip)
Post by Philip Paeps
Wanneer je een IP adres op een Ethernet interface legt, gebeuren er
onder de mat twee dingen (die in deze discussie relevant zijn - er
gebeuren nog wel een aantal dingen): de kernel begint het adres te
herkennen als een adres waarop hij bereikbaar is (arps moet replyen) en
de kernel voegt een interface route toe aan de routing table voor het
netwerk dat je bij dat adres voegt (in het geval van Paul een /24, in
mijn geval een /23).
En vergeet niet dat die route ook een src adres voor uitgaande pakketten
moet definieren. Bovenstaande gaat dus (denk ik) niet werken voor
pakketten die vanuit deze machine over die interface naar buiten moeten.
Het is een tijdje geleden, maar het werkte wel degelijk (toch de triviale
tests die ik toen even gedaan heb). Als er meerdere source adressen mogelijk
zijn, valt als ik me niet vergis de kernel terug tot het eerste in de lijst,
maar ik zou het moeten nakijken. Ik kan me voorstellen dat bij ambiguiteit de
kernel het datagram gewoon op de grond gooit ook.

In ieder geval is de gewoonte om een IP adres op een Ethernet interface te
leggen een kwestie van "conventie" en niet absoluut dwingend. Aangezien de
gewoonte echter zo verankerd is, is het misschien best er niet te veel van af
te wijken.

De "gebruikelijke" manier om IP aliases te leggen is met een /32 mask op de
interface waar een ander adres met de echte mask op ligt.

- Philip
--
Philip Paeps Please don't email any replies
***@paeps.cx I follow the newsgroup.

<pseudoGeek> I hate the word individual
<Dan_McM> pseudoGeek: only to be expected from a Gap customer :o)
Fred Mobach
2009-07-26 19:47:24 UTC
Permalink
Post by Philip Paeps
In ieder geval is de gewoonte om een IP adres op een Ethernet
interface te
leggen een kwestie van "conventie" en niet absoluut dwingend.
Aangezien de gewoonte echter zo verankerd is, is het misschien best er
niet te veel van af te wijken.
De "gebruikelijke" manier om IP aliases te leggen is met een /32 mask
op de interface waar een ander adres met de echte mask op ligt.
Soms heb ik een gerede aanleiding daarvan af te wijken, vooropgezet dat
beide IP adressen niet in hetzelfde subnet zitten. Op die manier kun je
bijvoorbeeld routeren op basis van een enkel netwerkinterface.
--
Fred Mobach - ***@mobach.nl
website : http://fred.mobach.nl
.... In God we trust ....
.. The rest we monitor ..
Koos van den Hout
2009-07-01 17:45:34 UTC
Permalink
Post by Paul van der Vlis
Het gaat om een alias interface op eth0:0 wat problemen geeft, dit is de
Uh, dat is de configuratie van eth0. Waar is de configuratie van eth0:0 ?
Post by Paul van der Vlis
----------
auto eth0
iface eth0 inet static
address 91.198.178.50
netmask 255.255.255.0
broadcast 91.198.178.255
gateway 91.198.178.1
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
Uit een oude config toen ik nog iets deed met alias interfaces:

auto eth0
iface eth0 inet static
address 10.42.2.1
netmask 255.255.255.0
broadcast 10.42.2.255

auto eth0:0
iface eth0:0 inet static
address 10.42.2.32
broadcast 10.42.2.255
netmask 255.255.255.0

Per alias interface apart address, broadcast en netmask zetten.

Koos
--
Koos van den Hout Homepage: http://idefix.net/~koos/
PGP keyid DSS/1024 0xF0D7C263 or RSA/1024 0xCA845CB5
Webprojects: Camp Wireless http://www.camp-wireless.org/
The Virtual Bookcase http://www.virtualbookcase.com/
Paul van der Vlis
2009-07-02 06:54:23 UTC
Permalink
Post by Koos van den Hout
Post by Paul van der Vlis
Het gaat om een alias interface op eth0:0 wat problemen geeft, dit is de
Uh, dat is de configuratie van eth0. Waar is de configuratie van eth0:0 ?
Achter het woordje "up".
Post by Koos van den Hout
Post by Paul van der Vlis
----------
auto eth0
iface eth0 inet static
address 91.198.178.50
netmask 255.255.255.0
broadcast 91.198.178.255
gateway 91.198.178.1
up /sbin/ifconfig eth0:0 netmask 255.255.255.0 91.198.178.51
--------
auto eth0
iface eth0 inet static
address 10.42.2.1
netmask 255.255.255.0
broadcast 10.42.2.255
auto eth0:0
iface eth0:0 inet static
address 10.42.2.32
broadcast 10.42.2.255
netmask 255.255.255.0
Per alias interface apart address, broadcast en netmask zetten.
Hmm, interessant...

Met vriendelijke groet,
Paul van der Vlis.
--
http://www.vandervlis.nl/
Loading...