Login
Immer anmelden
SSL Login

 
Newsletter
Werbung
Shopping
International Shopping
 
 


Yatego Shopping bei über 10000 Händlern und über
3 Mio. Artikel.


Linux

:

Linux-Bücher

Handy
Shop

  und Computer.

Viele Services

:

Apple iPad Reader,


Ratgeber,

 

Techniktops,

 

Yatego Clicks

  & über 3000

Gutscheine.

 
Do, 5. Dezember 2002, 00:00

Routing Mini-Handbuch

...Ich habe hier das Pferd von hinten aufgezogen, weil man, wenn man mit Linux anfängt, i.d.R. mit einer NIC und einer IP dafür beginnt. Netzplanungen gehen natürlich von der Anzahl der benötigten Host-IPs aus, das benötigte Netz wird errechnet, daraus ergeben sich dann Netzwerk, Host-IPs und Broadcast.

Die Kurzschreibweise errechnet sich durch Addition der Bits einer Netzmaske. In diesem Fall sind es 3 mal 8 gleich 24. In Kurzform lautet die Netzmaske:

192.168.0.0/24

Im zweiten Fall sind es 3 mal 8 plus 4 gleich 28. Die Kurzform lautet:

192.168.0.0/28

Die Klassen der privaten IPs:

Class A = /8, Class B = /16, and Class C = /24

Unbedingt zu beachten ist, dass die Netzmaske in binärer Schreibweise eine Bitfolge von Einsen links angefangen in ununterbrochener Folge haben muss. D.h. eine Netzmaske von 255.255.247.0 ist falsch: 11111111.11111111.11110111.00000000 binär. Wohl aber möglich ist z.B. 255.255.254.0, 11111111.11111111.11111110.00000000 binär.

Die Sonderfälle:

Die Hostmaske 255.255.255.255 oder kurz /32 maskiert alle Bytes und trifft damit genau eine IP, d.h. einen Host, z.B. 192.168.0.100/32.

Die Worldmaske 0.0.0.0 oder kurz /0 maskiert nichts und trifft alle IPs. Diese Maske wird in Auswahlrechnern bei der default route genutzt, um Hosts im Internet, die sich in verschiedenen öffentlichen Netzen befinden, zu erreichen.

Ein Netz (Network) besteht aus einer Reihe von Hosts und/oder möglichen IPs, die mit einer Netzmaske gematcht werden können.

Es sind die Netzmasken /24 vorgegeben:
192.168.0.1 und 192.168.0.100 sind zwei IPs aus einem Subnetz.
192.168.0.1 und 192.168.1.100 sind zwei IPs aus zwei Subnetzen.
192.168.0.2 und 192.168.1.2 sind zwei IPs aus zwei Subnetzen.

Routing

Siehe auch die man-pages von ifconfig und route

Es lassen sich verschiedene Routen unterscheiden. Durch die Einbindung einer Network Interface Card, NIC, in das Linux-System, werden z.B. Netzwerkrouten automatisch eingerichtet:

# ifconfig eth0 192.168.1.12 broadcast 192.168.1.255 netmask 255.255.255.0
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
| | | | |
Netz | | | |
		Gateway | | |
				Netzmaske | |
						route |
						is up |
								 NIC Nummer

Eine weitere NIC darf jetzt keine IP aus dem gleiche Netz haben. Probieren wir es einfach aus und sehen wir uns an, warum:

# ifconfig eth1 192.168.1.13 broadcast 192.168.1.255 netmask 255.255.255.0
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1

IPs, die durch unseren Host geroutet werden und in das 192.168.1.0 Netz gehen, werden von der ersten routing Zeile gematcht und führen über eth0. Die zweite Zeile kommt niemals an die Reihe und eth1 sendet nie, ausser wir fahren eth0 herunter.

Wie kommt es dann aber dazu, daß ein Host z.B. mit der IP 192.168.1.2 aus dem geswitchten Netz 192.168.1.0/24 bei einem ping auf 192.168.1.13 eine Antwort bekommt?

Nun, das liegt daran, daß der Kernel auf das ping reagiert und nicht die NIC. Dem Kernel ist ja die NIC mit der IP 192.168.1.13 bekannt, daher schickt er das reply zurück, das aufgrund der routing table über eth0 geht.

Deshalb ist in dieser Situation die Konfiguration der zweiten NIC auf ein anderes Subnetz zwingend erforderlich:

# ifconfig eth0 192.168.1.12 broadcast 192.168.1.255 netmask 255.255.255.0
# ifconfig eth1 192.168.2.13 broadcast 192.168.2.255 netmask 255.255.255.0
# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1

Nun haben wir eine eindeutige Situation, und unser Host kann klar zwischen den beiden Netzen unterscheiden.

Beispiele

Wenn wir an eth0 liegend einen Router 192.168.1.1 erreichen können, der in das Netz 192.168.1.0/24 und in das Netz 10.0.1.0/24 routet, brauchen wir nur eine weitere Netzroute setzen, um in das Netz 10.0.1.0/24 zu kommen:

# route add -net 10.0.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev eth0
# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
10.0.1.0 192.168.1.1 255.255.255.0 UG 1 0 0 eth0

Das Setzen dieser Netzroute alleine reicht jedoch nicht aus, der Kernel muss Forwarden erlauben (man iptables).

Wenn unser Host ein Gateway zu einem Auswahlrechner 192.168.1.1 ist, muss eine default route gesetzt werden:

# route add default gw 192.168.1.1 dev eth1
# route -n
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
10.0.1.0 192.168.1.1 255.255.255.0 UG 1 0 0 eth0
0.0.0.0 192.168.1.1 0.0.0.0 UG 1 0 0 eth1

Natürlich muss auch für die default route Forwarding aktiviert sein. Mit der Netzmaske 0.0.0.0 werden alle IPs, die nicht in das Netz 192.168.1.0, 192.168.2.0 oder 10.0.1.0 gehören, nach unseren default gateway geroutet.

Ist unser Host selbt ein Auswahlrechner, wird durch den pppd nach geglückter Einwahl i.d.R. automatisch ein default gateway gesetzt. Ein Beispiel erübrigt sich daher. Bleibt nur anzumerken, daß eine bestehende default route vom pppd _nicht_ überschrieben werden, wodurch eine Einwahl einen trotzdem offline läßt!

Erfolgreiches Routen!

Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Newsletter
Neue Nachrichten