|
Internet Zugriff für die Windows-Rechner aktivieren (IP-Masquerading) Kurze Erläuterung:Unser Linux-Rechner (Router) hat die lokale IP-Adresse 192.168.1.34. Diese IP-Adresse ist aber nur im lokalen Netzwerk gültig, nicht im Internet. Wenn
ein Windows-Rechner des lokalen Netzes Daten ins Internet schicken will, so muß der Router eine Internet Verbindung herstellen. Nach dem Verbindungsaufbau bekommen wir von der Gegenstelle (also T-Online) dynamische
IP-Adressen zugewiesen. Einmal unsere eigene, im Internet gültige IP-Adresse und die Gateway-Adresse (die Adresse, an die unser Router seine Daten ins Internet schickt). Jetzt hat unser Router eine gültige
IP-Adresse und er kann mit dem Internet kommunizieren. Das Problem ist jetzt, daß der lokale Windows-Rechner, der immer noch die private IP-Adresse aus dem Adressblock 192.168 hat, selbst mit dem Internet kommunizieren
möchte. Dazu muß der Router mittels Masquerading (eine Form der Network Address Translation, NAT) bei jedem Paket, was über den Router ins Internet geht, die lokale IP-Adresse durch die dynamisch zugewiesene
(öffentliche) IP-Adresse ersetzen. Bei Paketen aus dem Internet ist das ebenfalls der Fall. Hier wird dann vom Router die dynamisch zugewiesene IP-Adresse wieder durch die lokale IP-Adresse ersetzt und das Paket wird
dann vom Router zu dem lokalen Windows-Rechner weitergeleitet.
Von außerhalb betrachtet weiß niemand, wieviele Rechner sich hinter dem Router
verbergen, da alle Rechner von außen gesehen eine einzige IP-Adresse haben, bzw. nur der Router von außen sichtbar ist. |
|
|
IP-Masquerading einrichten
Firewall und Masquerading Skripte aus der Serie n (Netzwerk-Support) installieren:YaST starten -> Installation festlegen/starten -> Konfiguration ändern/erstellen ->Serie: n -> Paket: firewall
In der Datei /etc/rc.config folgende Änderungen vornehmen: # # Masquerading settings - See /usr/doc/packages/firewall
# for a detailed description # MSQ_START="yes"
MSQ_NETWORKS="192.168.1.32/27" MSQ_DEV="ippp0" MSQ_MODULES="ip_masq_ftp ip_masq_irc" Wenn MSQ_START aus „yes“
gesetzt ist, wird das Masquerading automatisch nach dem Booten aktiviert. Bei MSQ_NETWORKS wird die Netzwerknummer gefolgt von der Netzwerkmaske des LAN eingetragen. Im Normalfall 192.168.1.0/24. Die 24
ist die Anzahl der auf „1“ gesetzten Bits der Netzwerkmaske (255.255.255.0 ist 11111111.11111111.11111111.00000000, entspricht also 24). Bei MSQ_DEV ist das Device einzutragen, über das der Rechner mit dem
Internet verbunden ist. MSQ_MODULES kann unverändert bleiben. Es ist aber zu empfehlen, daß nur Module geladen werden, die wirklich gebraucht werden. Das IP-Forwarding muß ebenfalls noch in /etc/rc.config aktiviert werden: #
# runtime-configurable parameter: forward IP packets. # Is this host a router? (yes/no) # IP_FORWARD=yes # Bei dynamischer Adressvergabe
durch den Provider (z.B. T-Online) muß noch der „dynamic IP patch“ in /etc/rc.config aktiviert werden:
# # Do you want the "dynamic IP patch" to be enabled at bootup? (yes/no) # IP_DYNIP=yes # Danach SuSEconfig ausführen und dann das System mit reboot neu starten, um das Masquerading zu aktivieren. |
|
|
Nach dem Bootvorgang kann das Masquerading getestet werden:
Stellen Sie dazu den Wählmodus auf automatisch mit auto bzw. ./auto
Öffen Sie nun auf dem Windows-Rechner z.B. den Internet Explorer und geben sie eine URL ein: z.B. http://www.meissen.net Nebenbei beobachten Sie
/var/log/messages mit dem Befehl: tail –f /var/log/messages
Jan 4 12:06:24 snoopy kernel: OPEN: 192.168.0.99 -> 194.25.2.129 UDP, port: 61000 -> 53 Jan 4 12:06:24 snoopy kernel: ippp0: dialing 1 0191011...
Jan 4 12:06:24 snoopy isdnlog: (HiSax driver detected) Jan 4 12:06:25 snoopy isdnlog: Jan 04 12:06:24 * tei 72 calling +49 1910/11, T-Online with +49 3521/452398, Meißen RING (Data) Jan 4
12:06:26 snoopy isdnlog: Jan 04 12:06:26 tei 72 calling +49 1910/11, T-Online with +49 3521/452398, Meißen Time:INVALID - ignored Jan 4 12:06:26 snoopy isdnlog: Jan 04 12:06:26 tei 72 calling +49
1910/11, T-Online with +49 3521/452398, Meißen CONNECT (Data) Jan 4 12:06:26 snoopy isdnlog: Jan 04 12:06:26 tei 72 calling +49 1910/11, T-Online with +49 3521/452398, Meißen Unknown provider 33
Jan 4 12:06:27 snoopy kernel: isdn_net: ippp0 connected Jan 4 12:06:27 snoopy kernel: isdn_net: chargetime of ippp0 now 87401 Jan 4 12:06:27 snoopy ipppd[86]: Local number: 452398, Remote
number: 0191011, Type: outgoing Jan 4 12:06:27 snoopy ipppd[86]: PHASE_WAIT -> PHASE_ESTABLISHED, ifunit: 0, linkunit: 0, fd: 7 Jan 4 12:06:27 snoopy ipppd[86]: Remote message:
Jan 4 12:06:27 snoopy ipppd[86]: MPPP negotiation, He: No We: No Jan 4 12:06:27 snoopy ipppd[86]: CCP enabled! Trying CCP. Jan 4 12:06:27 snoopy ipppd[86]: CCP: got ccp-unit 0 for link 0
(protocol: 0x80fd) Jan 4 12:06:27 snoopy ipppd[86]: ccp_resetci! Jan 4 12:06:27 snoopy ipppd[86]: local IP address 62.156.29.37
Jan 4 12:06:27 snoopy ipppd[86]: remote IP address 193.158.142.201 Jan 4 12:06:32 snoopy kernel: IP_MASQ:ip_fw_masquerade(): change masq.addr from 192.168.0.99 to 62.156.29.37 Jetzt ist das Masquerading aktiv und sie können am Windows-Rechner bzw. an den Windows-Rechnern ganz normal arbeiten, als hätte jeder von Ihnen eine Internetverbindung. Wenn
60 Sekunden keine Pakete versendet werden, wird die Verbindung wieder beendet. Jan 4 12:08:14 snoopy isdnlog: Jan 04 12:08:14 tei 72 calling +49 1910/11,
T-Online with +49 3521/452398, Meißen Normal call clearing (User) Jan 4 12:08:14 snoopy ipppd[86]: Modem hangup Jan 4 12:08:14 snoopy ipppd[86]: Connection terminated. Jan 4 12:08:14
snoopy ipppd[86]: taking down PHASE_DEAD link 0, linkunit: 0 Jan 4 12:08:14 snoopy ipppd[86]: closing fd 7 from unit 0 Jan 4 12:08:14 snoopy ipppd[86]: link 0 closed , linkunit: 0
Jan 4 12:08:14 snoopy ipppd[86]: reinit_unit: 0 Jan 4 12:08:14 snoopy ipppd[86]: Connect[0]: /dev/ippp0, fd: 7 Jan 4 12:08:14 snoopy kernel: isdn_net: local hangup ippp0
Jan 4 12:08:14 snoopy kernel: ippp0: Chargesum is 0 Jan 4 12:08:14 snoopy kernel: ippp, open, slot: 1, minor: 0, state: 0000 Jan 4 12:08:14 snoopy kernel: ippp_ccp: allocating reset data structure
Jan 4 12:08:14 snoopy isdnlog: Jan 04 12:08:14 tei 72 calling +49 1910/11, T-Online with +49 3521/452398, Meißen HANGUP ( 0:01:48 I=134.9Kb O= 11.7Kb) Da wir uns immer noch in der Konfigurationsphase befinden, sollte der Wählmodus mit dem Befehl manualwieder auf manuell gesetzt werden, um keine unnötigen Telefonkosten zu verursachen. Falls die Verbindung nicht wieder von selbst abgebaut wird, können Sie diese natürlich
auch mit stop selbst beenden. |
|
|
Routing Tabelle überprüfen Anfangs sollte man sich nach dem
Verbindungsabbau davon überzeugen, daß die Routing Einträge wieder korrekt zurückgesetzt werden. Das kann mit dem Befehl route –n überprüft werden:Offline Routing Tabelle: Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.1 0.0.0.0 255.255.255.255 UH 0 0 0 ippp0
192.168.1.32 0.0.0.0 255.255.255.224 U 0 0 0 eth0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 ippp0
Der Default-Gateway ist hier 192.168.0.1, also das ISDN-Device.Online Routing Tabelle: Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.32 0.0.0.0 255.255.255.224 U 0 0 0 eth0
193.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 ippp0
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 193.158.131.73 0.0.0.0 UG 0 0 0 ippp0
Unser Default-Gateway ist jetzt die dynamisch zugewiesene Remote-IP-Adresse. Nachdem der Rechner wieder Offline ist, sollten in der Routing-Tabelle
wieder die Offline Einträge stehen. Es kann durchaus vorkommen, daß der erste Eintrag doppelt vorhanden ist, was aber die weitere Arbeit mit dem System nicht beeinträchtigt. |