Technische Hintergründe Internet Connection Sharing
Ich experimentiere gerade ein wenig mit Netzwerken, Protokollen und Routing herum. Im Zuge dessen habe ich ein Testnetzwerk aufgebaut und es auf zwei verschiedene Arten zum Laufen gebracht. Ich möchte nun gerne etwas zu den Hintergründen und Unterschieden wissen.
[EDIT] Hallo Netzwerkspezialisten ich vergaß, Asche auf mein Haupt ,[/EDIT]
ich habe folgendes Netzwerk mit virtuellen Maschinen basierend auf VMWare aufgebaut. Bei der Konfiguration der Netzwerkkarten habe ich unter VMWare den Bridged Mode gewählt. Alle Netzwerkkarten haben eine statische IP-Konfiguration.
Alle VMs sind mit Windows XP Prof. SP3 bestückt. Bei ROUTER1, SVR1 und SVR2 ist Routing aktiviert (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter = 1) und der Dienst "Routing und RAS" (RemoteAccess) wird automatisch gestartet. In ROUTER1 sind zwei statische Routen in die Netze von CL1 und CL2 konfiguriert. Somit haben die Clients Internetzugriff und können sich auch gegenseitig pingen.
Da die (externe) Netzwerkkarte von ROUTER1, die in der Grafik zur Internetwolke führt, an einem B-Netz hängt, die zweite Karte und alle anderen VMs jedoch eine 28-Bit-Netzwerkmaske haben (ROUTER1 intern, SVR1 extern und SVR2 extern ein Subnetz, SVR1 intern und CL1 ein Subnetz und SVR2 intern und CL2 ein Subnetz), musste ROUTER1 als NAT-Router konfiguriert werden. Ich habe dazu zwei Lösungsansätze gefunden:
Beides funktioniert. Allerdings sieht das für mich so aus, als ob die technischen Hintergründe komplett verschieden sind. Im Script wird ja als erster Schritt genau der Dienst beendet (und sein Starttyp für nachfolgende Reboots auf DISABLED gestellt), der für Internet Connection Sharing zuständig ist (zumindest meines Wissens nach).
Nebenbei: Durch die Installation des DNS-Proxys kann man auf SVR1, SVR2, CL1 und CL2 die interne Adresse von ROUTER1 als Adresse des DNS-Servers konfigurieren.
Meine Frage ist nun, was genau die Unterschiede zwischen den beiden Verfahren sind. Da wären vor allem die technischen Hintergründe von ICS interessant. Man ließt sehr oft, das NAT und ICS gleichgesetzt werden, das kann meiner Meinung nach aber nicht richtig sein.
Außerdem ist der Tenor der Aussagen zu ICS kritisch bis ablehnend. Welche Nachteile hat ICS?
Wer kann mir zu der Thematik etwas sagen?
Gruß
Friemler
[EDIT] Hallo Netzwerkspezialisten ich vergaß, Asche auf mein Haupt ,[/EDIT]
ich habe folgendes Netzwerk mit virtuellen Maschinen basierend auf VMWare aufgebaut. Bei der Konfiguration der Netzwerkkarten habe ich unter VMWare den Bridged Mode gewählt. Alle Netzwerkkarten haben eine statische IP-Konfiguration.
Alle VMs sind mit Windows XP Prof. SP3 bestückt. Bei ROUTER1, SVR1 und SVR2 ist Routing aktiviert (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter = 1) und der Dienst "Routing und RAS" (RemoteAccess) wird automatisch gestartet. In ROUTER1 sind zwei statische Routen in die Netze von CL1 und CL2 konfiguriert. Somit haben die Clients Internetzugriff und können sich auch gegenseitig pingen.
Da die (externe) Netzwerkkarte von ROUTER1, die in der Grafik zur Internetwolke führt, an einem B-Netz hängt, die zweite Karte und alle anderen VMs jedoch eine 28-Bit-Netzwerkmaske haben (ROUTER1 intern, SVR1 extern und SVR2 extern ein Subnetz, SVR1 intern und CL1 ein Subnetz und SVR2 intern und CL2 ein Subnetz), musste ROUTER1 als NAT-Router konfiguriert werden. Ich habe dazu zwei Lösungsansätze gefunden:
- Internet Connection Sharing (die dann der externen NIC von ROUTER1 automatisch zugewiesene statische IP-Adresse ließ sich ändern)
- Das folgende Script:
net stop SharedAccess
sc config SharedAccess start= disabled
netsh routing ip nat install
netsh routing ip nat add interface "LAN-Verbindung" full
netsh routing ip nat add interface "LAN-Verbindung 2" private
netsh routing ip dnsproxy install
sc config RemoteAccess start= auto
net start RemoteAccess
Beides funktioniert. Allerdings sieht das für mich so aus, als ob die technischen Hintergründe komplett verschieden sind. Im Script wird ja als erster Schritt genau der Dienst beendet (und sein Starttyp für nachfolgende Reboots auf DISABLED gestellt), der für Internet Connection Sharing zuständig ist (zumindest meines Wissens nach).
Nebenbei: Durch die Installation des DNS-Proxys kann man auf SVR1, SVR2, CL1 und CL2 die interne Adresse von ROUTER1 als Adresse des DNS-Servers konfigurieren.
Meine Frage ist nun, was genau die Unterschiede zwischen den beiden Verfahren sind. Da wären vor allem die technischen Hintergründe von ICS interessant. Man ließt sehr oft, das NAT und ICS gleichgesetzt werden, das kann meiner Meinung nach aber nicht richtig sein.
Außerdem ist der Tenor der Aussagen zu ICS kritisch bis ablehnend. Welche Nachteile hat ICS?
Wer kann mir zu der Thematik etwas sagen?
Gruß
Friemler
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 182154
Url: https://administrator.de/contentid/182154
Ausgedruckt am: 23.11.2024 um 10:11 Uhr
5 Kommentare
Neuester Kommentar
Das ist Unsinn was du im letzten Satz sagst das du NAT machen musst auf dem Router !
Wie kommst du dadrauf oder kennst du deine eigene Adressierung nicht ??
Die ist ja zweifelsohne absolut richtig.
Die internen Netze und die externen unterscheiden sich zudem auch noch im 2ten Byte einmal 168 und einmal 178.
Du hast also eine saubere IP Adressierung und NAT ist keineswegs Pflicht sondern man kann auch sauber transparent Routen ?!
Wie kommst du also zu der Aussage das man NAT auf dem Router konfigurieren muss ??
ICS ist in der Tat nichts anderes als PAT (Port AddressTranslation) nit mit Microsoft Syntax...
Es gibt allerdings einen gewaltigen Haken bei der MS Implementation, denn die schreibt dir zwangsweise vor welche IP Netzadressen du jeweils in den lokalen Netzen verwenden musst ! Guckst du hier:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
Eine Gängelung die aber nur MS spezifisch ist. Andere Hersteller haben sowas logischerweise nicht ! Eine freie Adressierung wie du sie also hast ist mit MS ICS nicht mehr möglich. Wie gesagt das ist aber einzig und allein ein Microsoft Problem. Der Rest der IP Welt kennt sowas nicht und lässt dir freie Hand bei der Adressierung !
Lediglich das ist der kleine aber feine Unterschied nur bei Microsoft ICS/PAT/NAT oder wie auch immer man das nennen will.
Wie kommst du dadrauf oder kennst du deine eigene Adressierung nicht ??
Die ist ja zweifelsohne absolut richtig.
Die internen Netze und die externen unterscheiden sich zudem auch noch im 2ten Byte einmal 168 und einmal 178.
Du hast also eine saubere IP Adressierung und NAT ist keineswegs Pflicht sondern man kann auch sauber transparent Routen ?!
Wie kommst du also zu der Aussage das man NAT auf dem Router konfigurieren muss ??
ICS ist in der Tat nichts anderes als PAT (Port AddressTranslation) nit mit Microsoft Syntax...
Es gibt allerdings einen gewaltigen Haken bei der MS Implementation, denn die schreibt dir zwangsweise vor welche IP Netzadressen du jeweils in den lokalen Netzen verwenden musst ! Guckst du hier:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
Eine Gängelung die aber nur MS spezifisch ist. Andere Hersteller haben sowas logischerweise nicht ! Eine freie Adressierung wie du sie also hast ist mit MS ICS nicht mehr möglich. Wie gesagt das ist aber einzig und allein ein Microsoft Problem. Der Rest der IP Welt kennt sowas nicht und lässt dir freie Hand bei der Adressierung !
Lediglich das ist der kleine aber feine Unterschied nur bei Microsoft ICS/PAT/NAT oder wie auch immer man das nennen will.
Transparentes Routing ist eben "normales" Routing ohne NAT. Klar wenn der Internet Router keine statischen Routen zu deinen Netzen hat oder du sie nicht konfigurieren kannst weil du keinen Zugriff hast dann hast du logischerweise keine Chance das entsprechend so einzurichten.
Dein einziger Ausweg ist dann eben einen NAT Umgebung wie es auch hier im Tutorial genau beschrieben ist bei Billigroutern die keine statischen Routen supporten:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
Gleiches gilt ja für dich !!
Dann hast du keinerlei Chance und NAT ist der einzige Ausweg für dich.... In der Beziehung bist du dadrauf dann verhaftet !
Microsoft ICS (oder NAT) hat nur den gravierenden Nachteil das MS immer fest die IP Netzwerk Adresse für das zu NATende IP netzwerk fest vorgibt !!
Du hast keinerlei Chance das zu ändern. Wenn du es änderst funktioniert das gesamte NAT/ICS nicht mehr bei MS.
Damit bist du zwangsweise in diese Adressierung gezwungen wie du ja auch gesehen hast.
Sinnvoll ist es das dann immer mit externen Routern zu machen oder mit einem Router der auch virtualisiert ist wie z.B. die Monowall im generic-vm Image:
http://m0n0.ch/wall/downloads.php
Damit bist du dann völlig frei in deiner NAT IP Adressierung und kannst die IPs verwenden die du willst und eben nicht MS dir aufzwingt
Dein einziger Ausweg ist dann eben einen NAT Umgebung wie es auch hier im Tutorial genau beschrieben ist bei Billigroutern die keine statischen Routen supporten:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
Gleiches gilt ja für dich !!
Dann hast du keinerlei Chance und NAT ist der einzige Ausweg für dich.... In der Beziehung bist du dadrauf dann verhaftet !
Microsoft ICS (oder NAT) hat nur den gravierenden Nachteil das MS immer fest die IP Netzwerk Adresse für das zu NATende IP netzwerk fest vorgibt !!
Du hast keinerlei Chance das zu ändern. Wenn du es änderst funktioniert das gesamte NAT/ICS nicht mehr bei MS.
Damit bist du zwangsweise in diese Adressierung gezwungen wie du ja auch gesehen hast.
Sinnvoll ist es das dann immer mit externen Routern zu machen oder mit einem Router der auch virtualisiert ist wie z.B. die Monowall im generic-vm Image:
http://m0n0.ch/wall/downloads.php
Damit bist du dann völlig frei in deiner NAT IP Adressierung und kannst die IPs verwenden die du willst und eben nicht MS dir aufzwingt