Best Practices bei Verwendung mehrerer Netzwerkkarten (NICs - Network Interface Card) mit Produkten von NI

Überblick

PCs oder Embedded-Controller enthalten immer häufiger mehrere Ethernet-Adapter, insbesondere bei Systemen, in denen sich sowohl verdrahtete als auch drahtlose Adapter befinden. Das Vorhandensein von mehreren Netzwerkkarten (NICs) kann jedoch zu Verbindungsproblemen führen, wenn die einzelnen Netzwerkkarten nicht korrekt für das gesamte Netzwerk-Layout konfiguriert sind. Dieses Tutorium stellt grundlegende Konzepte zu Ethernet-Netzwerken vor, erklärt, wie durch Einbindung mehrerer Netzwerkkarten Probleme entstehen können und zeigt Best Practices für das Arbeiten mit Systemen mit mehreren Netzwerkkarten. Zusätzlich werden häufig auftretende Szenarien behandelt, wie beispielsweise ein NI-Real-Time-Hypervisor-System mit einer komplexen Netzwerkkonfiguration.

Inhalt

Hintergrund: Konzepte zu Ethernet-Netzwerken

Bevor wir auf die Best Practices für das Konfigurieren von Controllern mit mehreren Netzwerkkarten eingehen, besprechen wir einige Grundkonzepte zur Arbeit mit Ethernet-Netzwerken. In diesem Abschnitt geht es darum, wie einzelne Netzwerkkarten adressiert werden, Pakete in Ethernet-Netzwerken übertragen werden und wie eine typische Ethernet-Paketübertragung abläuft. 

Wenn Sie mit diesen Konzepten bereits vertraut sind oder die Grundlagen überspringen möchten, können Sie mit dem Abschnitt Richtlinien für das Konfigurieren von Systemen mit mehreren Netzwerkkarten fortfahren.

Data-Link-Ebene: MAC-Adressen

So wie eine Wohn- oder Geschäftsadresse notwendig ist, damit ein Brief sein Ziel erreicht, muss jedem Port an jedem Ethernet-Adapter eine eindeutige Adresse vom Hersteller zugewiesen werden. Diese Adresse wird MAC-Adresse (MAC - Medium Access Control) genannt. MAC-Adressen bestehen aus 48 Bits und werden in Gruppen aus 2 Hexadezimalzahlen angegeben (z. B. 01:23:45:67:89:ab). Die MAC-Adressen für einen bestimmten Ethernet-Adapter sind meist auf dem Gerät selbst zu finden. Auf die Adresse kann außerdem über die Netzwerkeinstellungen des Betriebssystems zugegriffen werden. 

Beim Austausch von Ethernet-Daten zwischen zwei Computern werden die Daten stückweise in Form von "Paketen" verschickt, von denen jedes die MAC-Adresse der empfangenden Schnittstelle enthält. Eine Schnittstelle wartet kontinuierlich auf Pakete, die an ihre jeweilige eindeutige Adresse gesandt werden.

Abbildung 1: Jede Netzwerkkarte in einem Computer hat eine eindeutige MAC-Adresse. Wenn mehrere Netzwerkkarten auf einem Computer installiert sind, hat jede Karte eine eigene MAC-Adresse.

Adressen auf Internet-Ebene

Wenn alle Computer auf der Welt miteinander verbunden wären und die MAC-Adressen aller anderen Computer gespeichert hätten, würden sich Adressenschemen dadurch erübrigen. Dies wäre jedoch aus vielen Gründen unpraktisch. Zunächst einmal würden die Pakete in einer solchen gemeinsamen Verbindung häufig kollidieren und die Datenübertragung wäre dadurch unzuverlässig. Zweitens müsste die Adresse jedes Computers auf der Welt unter großem Speicheraufwand gespeichert werden. Das ständige Hinzufügen neuer Geräte stellt hierbei ein weiteres Problem dar.

IP-Adressen (IPv4)

Computer benötigen für die Kommunikation über Ethernet eindeutig ein anderes Adressenschema. In der Praxis können Benutzer jeder MAC-Adresse eine oder mehrere IP-Adressen (IP - Internet Protocol) zuweisen und diese IP-Adressen auf eine Weise einrichten, dass der meiste Netzwerkverkehr in kleinen Computergruppen stattfindet, statt über eine größere Gruppe von Rechnern.  IP-Adressen werden typischerweise durch einen 32-Bit-Wert festgelegt und in vier Gruppen aus dreistelligen Zahlen angegeben (e.g. 192.168.100.100). Stellen Sie sich ein Netzwerk mit 10 Computern vor, die mit IP-Adressen von 192.168.100.0 bis 192.168.100.9 konfiguriert sind. Wenn alle Computer einer Regel folgen, nach der für alle Adressen mit dem Format 192.168.100.xxx ein internes Netzwerk vorausgesetzt wird, dann kann leicht festgestellt werden, ob für die Kommunikation mit einer IP-Adresse Zugriff auf ein anderes Netzwerk nötig ist oder nicht.

Beispiel für eine Regel: Alle Schnittstellen mit IP-Adressen im Bereich von 192.168.100.0 bis 192.168.100.255 befinden sich innerhalb eines lokalen Netzwerks, und Schnittstellen mit anderen Adressen befinden sich außerhalb des Netzwerks.

IP-Adresse Innerhalb oder außerhalb des lokalen Netzwerks?
(nach der Beispielregel)
192.168.100.6 Innerhalb
192.168.100.104 Innerhalb
192.169.100.100 Außerhalb
192.169.101.255 Außerhalb

Tabelle 1: Da IP-Adressen den individuellen Netzwerkkarten einfach vom Benutzer zugewiesen werden können, können ähnliche IP-Adressen an Gruppen von Schnittstellen vergeben werden. So ist leicht erkennbar, ob sich eine Adresse innerhalb oder außerhalb des Netzwerks befindet.

Diese simple Idee hat signifikante Vorteile. MAC-Adressen folgen zwar üblicherweise keinem Muster (sie werden vom Hersteller willkürlich zugewiesen), sind jedoch vom Benutzer konfigurierbar und können so vergeben werden, dass sie einem logischen hierarchischen Muster folgen. Mit Hilfe dieses Musters können kleine Gruppen von Computern nur über den lokalen Datenverkehr miteinander kommunizieren, wodurch Datenkollisionen im größeren Netzwerk reduziert werden. Zusätzlich können IP-Adressen dadurch in vielen kleineren Netzwerken wiederverwendet werden, während diese Computer trotzdem über einen Prozess genannt "Network Address Translation" (NAT) adressierbar sind. Die Wiederverwendung ist wichtig, da es mehr als 2^32 verbundene Ethernet-Geräte auf dem Planeten gibt. Detaillierte Informationen zu NAT würden den Rahmen dieses Tutoriums sprengen.

Beim Konfigurieren von IP-Adressen werden Ihnen oft Adressen in der Form von 10.x.x.x, 192.168.x.x oder 172.x.x.x. begegnen. Jeder dieser Bereiche wurde speziell einem einzelnen privaten Netzwerk zugewiesen, so dass Sie sicher sein können, dass kein anderer öffentlicher Server (z. B. Google.com) dieselbe IP-Adresse verwendet.

Es sollte noch erwähnt werden, dass die Informationen in diesem Abschnitt sich auf die am häufigsten verwendete Version von Internetprotokollen, IPv4, beziehen. Die nächste Version des Internetprotokolls, IPv6, verwendet 128-Bit-Adressen, wird jedoch noch nicht weitläufig verwendet (was sich voraussichtlich in den nächsten Jahren ändern wird).

Subnetzmasken

Wie entscheidet also ein Computer angesichts einer IP-Adresse, an die Daten gesendet werden sollen, ob sich diese innerhalb des lokalen Netzwerks befindet, oder ob auf ein Außennetzwerk zugegriffen wird? In anderen Worten, wenn Computer eine Regel wie im vorhergehenden Beispiel befolgen sollen, wie wird diese Regel festgelegt und angewandt?

Die Schlüsselkomponente hierbei ist die Subnetzmaske: eine Gruppe von 32 Bits, die genau wie die IP-Adresse (z. B. 255.255.255.192) in 4 Gruppen von Zahlen dargestellt wird. Ein Binärwert von 1 an einer der 32-Bit-Positionen bedeutet, dass Ethernet-Pakete nach außerhalb des lokalen Netzwerks übertragen werden müssen, wenn die IP-Adresse sich in dieser Position zwischen dem Sender und Empfänger unterscheidet. Im Gegensatz dazu bedeutet ein Binärwert von 0 an einer gegebenen Position, dass ein Unterschied im IP-Adressen-Bit nichts ausmacht. Wenn alle anderen Bits zwischen der IP-Adresse des Senders und Empfängers gleich sind, wird vorausgesetzt, dass der Empfänger sich im selben Netzwerk befindet.

Abbildung 2: Subnetzmasken bieten eine Möglichkeit zum Festlegen der Regel, nach welcher IP-Adressen zu einem lokalen Netzwerk gehören oder außerhalb des lokalen Netzwerks liegen.

Gateways und Standard-Gateways

Wie werden Ethernet-Pakete zwischen lokalen und anderen Netzwerken übertragen? Diese Aufgabe übernimmt meist ein sogenannter Router, der auch als Netzwerk-Gateway bezeichnet wird (in diesem Tutorium werden beide Bezeichnungen verwendet). Für jeden Ethernet-Adapter, der mit einem Computer verbunden ist, legt der Benutzer oft eine IP-Adresse, Subnetzmaske und ein Standard-Gateway fest. Das Standard-Gateway ist die Adresse des Routers, die beim Senden von Paketen außerhalb des lokalen Netzwerkes verwendet werden sollte.

ARP-Anfragen

An diesem Punkt  ist erwähnenswert, dass auf der unteren Ebene jedes versandte Ethernet-Paket an eine MAC-Adresse geschickt werden muss. IP-Adressen bieten Vorteile wie die Verwendung von Subnetzen. Beachten Sie jedoch, dass die IP-Adresse einer Schnittstelle eines Netzwerkcomputers allein nicht ausreichend Informationen bietet, um sicherzustellen, dass ein Paket diesen Computer erreicht. Die Kommunikation zwischen zwei Computern auf Remote-Netzwerken erfolgt beispielsweise oft über mehrere Router. Auf unterer Ebene muss ein Paket zwischen dem sendenden Computer und dem ersten Router übergeben werden, dann ein weiteres Paket vom ersten Router an den nächsten und so weiter, bis das vollständige Paket den Zielcomputer erreicht. Für das Übertragen des Pakets zwischen jeder Position auf dem Verbindungsweg wird die MAC-Adresse des empfangenden Routers oder der Schnittstelle des Computers benötigt.

Stellen Sie sich vor, Sie beginnen mit einer IP-Adresse eines Zielcomputers im lokalen Netzwerk. Wie erhält der sendende Computer die korrekte MAC-Adresse, an die Pakete gesendet werden? Dazu wird das Address Resolution Protocol (ARP) verwendet. Lassen Sie uns nun mit dem Beispiel fortfahren. Der sendende Computer überträgt eine bestimmt Art von Nachricht, genannt ARP-Anfrage, an das lokale Netzwerk (die MAC-Adresse wird für eine bestimmte IP-Adresse angefordert). Alle Ethernet-Geräte im Netzwerk warten kontinuierlich auf diese speziellen Anfragen und ein Gerät antwortet dem Sender mit seiner MAC-Adresse, wenn diese mit der angegebenen IP-Adresse übereinstimmt. Nach Empfang der MAC-Adresse speichert der Computer, der ursprünglich die Nachricht versandt hatte, üblicherweise die MAC-Adresse zusammen mit der IP-Adresse in einer Cache-Tabelle zur späteren Verwendung. Dadurch wird verhindert, dass immer wieder ARP-Anfragen an dieselbe Zielschnittstelle geschickt werden.

Abbildung 3: Damit ein Computer Daten an eine entfernte Ethernet-Schnittstelle senden kann, muss die MAC-Adresse dieser Schnittstelle bekannt sein. Wenn die MAC-Adresse nicht bekannt ist, kann der Computer eine ARP-Anfrage an eine angegebene IP-Adresse senden, und das Zielgerät antwortet mit seiner MAC-Adresse.

Wenn ein Router im Netzwerk erkennt, dass sich die gewünschte IP-Adresse außerhalb des lokalen Netzwerk befindet, kann er auf die ARP-Anfrage mit seiner eigenen MAC-Adresse antworten. Dies wird als "Proxy-ARP" bezeichnet.

Zusammenfassung: Paketübertragung über das Ethernet

Wir fassen den Ablauf des Versendens eines einzelnen Ethernet-Pakets vom Ursprungs-PC an einen Ziel-PC nun noch einmal zusammen. Dabei setzen wir voraus, dass der Ursprungsgerät mehrere Ethernet-Schnittstellen enthält.

  1. Ein Ethernet-Paket soll vom Ursprungsgerät versandt werden (unter Umständen in Verbindung mit einer Anwendung oder einem Betriebssystemprozess). Das Paket enthält Informationen über die IP-Adresse des Empfängers (diese können von einem DNS-Server für Domain-Namen stammen).
  2. Wenn bereits mehr als ein ARP-Eintrag im Zwischenspeicher mit der MAC-Adresse vorhanden ist, die der IP-Adresse des Empfängers entspricht, fahren Sie mit Schritt 4 fort.
  3. Für den Sender ist die IP-Adresse des Pakets und die Subnetzmaske der Ethernet-Schnittstellen von Bedeutung.
    1. Wenn die IP-Adresse in den Bereich des Subnetzes einer bestimmten Schnittstelle fällt, wird eine ARP-Anfrage von dieser Schnittstelle gesandt.
    2. Wenn sich die IP-Adresse außerhalb des Subnetzes aller Schnittstellen befindet, arbeitet der Sender mit dem Standard-Gateway für jede Schnittstelle.
      1. Wenn nur ein Standard-Gateway für alle Schnittstellen vorliegt, wird dessen MAC-Adresse (wie in der ARP-Tabelle enthalten) verwendet oder eine neue ARP-Anfrage wird versandt, um die MAC-Adresse des Gateways zu finden.
      2. Bei mehreren Standard-Gateway-Einträgen wird der Eintrag mit der günstigsten Metrik verwendet (ermittelt anhand mehrerer Faktoren, abhängig vom verwendeten Betriebssystem). Die MAC-Adresse des Gateways wird in der ARP-Tabelle gesucht oder es wird eine neue ARP-Anfrage zum Suchen der MAC-Adresse an den Gateway geschickt.
      3. Wenn keine Standard-Gateway-Einträge vorliegen, wird eine ARP-Anfrage an eine oder mehrere Schnittstellen geschickt, um zu sehen, ob ein Gateway mit seiner eigenen MAC-Adresse antwortet ("Proxy-ARP").
  4. Das Ethernet-Paket wird unter Verwendung der MAC-Adresse vom ARP-Cache gesendet, oder es wird eine ARP-Anfrage verschickt. Wenn die ARP-Anfrage kein Ergebnis bringt, kann das Paket nicht geliefert werden. Wenn sich der Empfänger in einem anderen Subnetz befindet, wird das Paket an einen Router geschickt und der Router muss das Paket über die nächste Verbindung weitersenden, bis es den Empfänger erreicht.

Richtlinien für das Konfigurieren von Systemen mit mehreren Netzwerkkarten

Beim Arbeiten mit Computern mit mehreren Netzwerkkarten müssen Sie genau auf die Netzwerkeinstellungen achten, um schwer zu lösende Verbindungsprobleme zu vermeiden. Befolgen Sie diese Richtlinien, um ein optimales Arbeiten Ihres Systems mit mehreren Netzwerkkarten sicherzustellen. Davon betroffen sind auch PCs oder Embedded-Controller mit Desktop-Betriebssystemen und LabVIEW, sowie alle LabVIEW-Real-Time-Zielsysteme mit mehreren Ethernet-Schnittstellen.

Regel 1: Gehen Sie bei der automatischen Zuweisung der IP-Adresse (über DHCP oder Link-Local-Adresse) vorsichtig vor.

Die meisten Betriebssysteme sind standardmäßig so konfiguriert, dass sie TCP/IP-Einstellungen (IP-Adressen, Subnetzmasken und Standard-Gateways) automatisch unter Verwendung eines DHCP-Servers (Dynamic Host Configuration Protocol) abfragen. Wenn kein DHCP-Server gefunden wird, wird generell vom Betriebssystem eine IP-Adresse im Bereich 169.254.x.x   zugewiesen, die als "Link-Local"-IP-Adresse bezeichnet wird.

Stellen Sie sicher, dass Sie mit den DHCP-Servern in Ihrem Netzwerk vertraut sind und wissen, welche IP-Adressbereiche und Subnetze verwendet werden. Ebenso ist es wichtig, zu wissen, ob Adapter in Ihrem Computer DHCP verwenden. Wenn sich kein DHCP-Server im Netzwerk befindet, resultiert dies in der Verwendung einer 169.254.x.x-Adresse. Wenn Sie sich mit den Details der automatischen Zuweisung von IP-Adressen für Ihr Netzwerk nicht auskennen, ist die Wahrscheinlichkeit sehr viel größer, dass Sie gegen Regel 2 oder 3 verstoßen.

Abhängig von Ihrer Netzwerkkonfiguration kann es empfehlenswert sein, die IP-Einstellungen für jede Netzwerkkarte in Ihrem PC mit mehreren Netzwerkkarten manuell festzulegen. In einem Netzwerk mit anderen DHCP-Clients ist es jedoch möglich, dass die Verwendung der DHCP-Option unvermeidlich ist.

Regel 2: Vermeiden Sie es, mehrere Netzwerkkarten in einem Computer demselben Subnetz zuzuweisen.

Die Verwendung mehrerer Netzwerkkarten im selben Subnetz ist die häufigste Ursache für Verbindungsprobleme bei Systemen mit mehreren Netzwerkkarten. Während manche Betriebssysteme beim Vorhandensein mehrerer Netzwerkkarten in einem Subnetz ordnungsgemäß arbeiten können, versenden andere Betriebssysteme Pakete versehentlich von der falschen Schnittstelle. Sie können das Problem beheben, indem Sie einer Netzwerkkarte (und den anderen Computern im Netzwerk, die mit der Netzwerkkarte verknüpft sind) statisch den 192.168.x.x-Bereich mit der Subnetzmaske 255.255.0.0 und einer anderen Netzwerkkarte den 10.0.x.x-Bereich mit Subnetzmaske 255.255.0.0 zuweisen. Dies ist nur eine mögliche Konfiguration. Es kann jegliche Kombination von zwei oder mehr verschiedenen Subnetzen verwendet werden. Es wird empfohlen, eine der designierten privaten IP-Adressenbereiche zu verwenden, um Konflikte mit öffentlichen Servern im Internet zu vermeiden.

In der Praxis besteht selten ein guter Grund dafür, mit mehreren Netzwerkkarten im selben Subnetz zu arbeiten. Eine erweiterte Konfiguration, durch die sichergestellt wird, dass in einem solchen Fall durch Verwendung mehrerer Adapter die Bandbreite erhöht wird, wird als "Teaming" bezeichnet. Detaillierte Information zu dieser Konfiguration würden den Rahmen dieses Artikels sprengen.

Abbildung 4: Beim Konfigurieren eines Controllers mit mehreren Netzwerkkarten sollte jede Netzwerkkarte mit einem anderen Subnetz kommunizieren. Das Konfigurieren von zwei oder mehr Netzwerkkarten im selben Subnetz kann zu Kommunikationsproblemen führen.

Eines der häufigsten Szenarios, das dazu führt, dass mehrere Netzwerkkarten demselben Subnetz zugewiesen werden, tritt auf, wenn sowohl eine drahtlose Schnittstelle als auch eine Netzwerkkabel-Schnittstelle für eine Verbindung mit demselben Netzwerk verwendet werden. Manche Betriebssysteme haben damit zwar kein Problem damit, es ist jedoch besser, das Netzwerk und das drahtlose Netzwerk für unterschiedliche Subnetze zu konfigurieren, oder stattdessen eine Netzwerkschnittstelle zu deaktivieren, während die andere verwendet wird.

Regel 3: Vermeiden Sie es, Standard-Gateways für mehrere Netzwerkkarten festzulegen.

Wenn eine Ziel-IP-Adresse nicht in das Subnetz einer der Netzwerkkarte fällt, wird ein Standard-Gateway verwendet, um Pakete an das Außennetzwerk zu übertragen. Wenn mehrere Standard-Gateways vorhanden sind, können Pakete an das falsche Außennetzwerk übertragen werden, wodurch die Pakete nicht geliefert werden können. 

In den meisten Fällen sollten Sie mit allen Computer, die mit einer Netzwerkschnittstelle im selben privaten Subnetz verbunden sind, eine Verbindung herstellen können. Sie können das Standard-Gateway für diese Schnittstelle dann leer lassen. Normalerweise wird nur für eine Netzwerkkarte mit einem Gateway zum Internet oder Unternehmensnetzwerk eine Standard-Gateway-Adresse festgelegt. 

Netzwerkkarte 1
Verbunden mit Unternehmensnetzwerk und Internet
Netzwerkkarte 2
Verbunden mit lokalem Netzwerk
IP-Adresse: 192.168.50.8 IP-Adresse: 10.0.3.7
Subnetzmaske: 255.255.0.0 Subnetzmaske:255.255.255.0
Standard-Gateway:192.168.1.1 Standard-Gateway: 0.0.0.0 (oder leer)

Tabelle 2: Beim Konfigurieren von TCP/IP-Einstellungen für ein System mit mehreren Netzwerkkarten empfiehlt es sich, für nur einen Adapter ein Standard-Gateway festzulegen. Dies trifft auch zu, wenn eine der Standard-Gateway-Adressen über DHCP ermittelt wird.

In anderen Fällen, in denen Gateways an Subnetze angehängt sind, die mit verschiedenen Netzwerkschnittstellen verbunden werden, können Sie Netzwerkrouten manuell festlegen (fortgeschritten) oder das Standard-Gateway für alle Schnittstellen leer lassen.

Während es effizienter ist, ein Standard-Gateway an einer Schnittstelle festzulegen (dadurch erübrigt sich eine ARP-Anfrage für mehrere außerhalb des lokalen Netzwerks übertragene Pakete), kann das Offenlassen aller Einträge für Standard-Gateways dabei helfen, Probleme in Netzwerken mit mehreren Gateways zu vermeiden. Diese Vorgehensweise funktioniert jedoch nur bei Netzwerk-Gateways, die eine Proxy-ARP unterstützen.

Beispielszenarios

Fall 1: Verbinden mit einem öffentlichen und einem privaten Netzwerk

In diesem Szenario ist ein Host-PC sowohl mit einem Unternehmensnetzwerk (über Netzwerkkarte #1), welches Internetzugriff zulässt, und mit einem privaten Netzwerk (über Netzwerkkarte #2) mit mehreren LabVIEW-Real-Time-Zielsystemen verbunden. Das Unternehmensnetzwerk ist so eingerichtet, dass es eine DHCP-Adresse im Bereich 10.0.x.x mit Subnetzmaske 255.255.0.0 an Netzwerkkarte #1 zuweist. Die Adresse des Standard-Gateways (Router) ist 10.0.0.1.

Abbildung 5: In diesem Szenario ist ein Controller mit mehreren Netzwerkkarten sowohl mit einem Unternehmensnetzwerk (mit Internetzugriff) als auch einem lokalen privaten Netzwerk verbunden.

Die obenstehenden Richtlinien befolgend können wir Netzwerkkarte #2 (mit privatem Netzwerk verbunden) mit einer statischen IP außerhalb des 10.0.x.x-Subnetzbereichs konfigurieren. Obgleich unter Umständen eine Adresse im Bereich 10.1.x.x angewandt werden kann, da sich dieser in einem anderen Subnetz befindet, ist es möglich, dass andere 10.x.x.x-IP-Adressen für zusätzliche Unternehmensserver etc. verwendet werden. Daher ist es sicherer, den Bereich 192.168.x.x für das private Netzwerk zu verwenden.

Da wir mit einer kleinen Anzahl von LabVIEW-Real-Time-Zielsystemen im privaten Netzwerk arbeiten, können wir eine Subnetzmaske von 255.255.255.0 verwenden und jeweils eine statische IP-Adresse im Bereich 192.168.0.x zuweisen. Dadurch werden bis zu 255 verbundene Schnittstellen im Subnetz ermöglicht. Der Einfachheit halber wird die IP-Adresse des Host-Computers (Netzwerkkarte #2) auf 192.168.0.1 festgelegt.

Es ist wichtig, in den Einstellungen für Netzwerkkarte #2 das Standard-Gateway für den Host-Rechner leer zu lassen. Auf diese Art wird nur das Gateway Netzwerkkarte #1 verwendet, was wünschenswert ist, wenn vom Host auf das Internet zugegriffen werden soll. Zusätzlich kann das Standard-Gateway auf den LabVIEW-Real-Time-Geräten leer gelassen werden, da diese nur innerhalb des lokalen Subnetzes kommunizieren sollen (dort sind keine Gateways verbunden).

Netzwerkkarte 1
Verbunden mit Unternehmensnetzwerk und Internet
Netzwerkkarte 2
Verbunden mit lokalem privaten Netzwerk
IP-Adresse: (DHCP) 10.0.x.x IP-Adresse: 192.168.0.1
Subnetzmaske: (DHCP) 255.255.0.0 Subnetzmaske: 255.255.255.0
Standard-Gateway: (DHCP) 10.0.0.1 Standard-Gateway: 0.0.0.0 (nicht festgelegt)

Tabelle 3: In dieser Tabelle wird eine mögliche Konfiguration der IP-Adresse für das oben in Abbildung 5 dargestellte System gezeigt. Beachten Sie, dass die zwei Netzwerkkarten mit unterschiedlichen Subnetzen verbunden sind, und dass nur eine Standard-Gateway-Adresse angegeben ist.

Fall 3: Konfigurieren eines NI-Real-Time-Hypervisor-Systems mit virtueller Ethernet-Verbindung (lokale Entwicklung)

Auf einem System wie NI Real-Time Hypervisor wird ein Host-Betriebssystem (Windows oder Linux) gleichzeitig mit LabVIEW Real-Time ausgeführt. Jede physikalische Netzwerkkarte in einem solchen System kann entweder dem Host-Betriebssystem oder LabVIEW Real-Time zugewiesen werden. Darüber hinaus wird jedem Betriebssystem eine virtuelle Netzwerkkarte (simuliert in der Software) zur Verfügung gestellt, um die Kommunikation zwischen Betriebssystemen zu vereinfachen.

Abbildung 6: In diesem Szenario werden von einem Real-Time-Hypervisor-Controller sowohl Windows XP als auch LabVIEW Real-Time gleichzeitig ausgeführt. Beide Betriebssysteme sind miteinander über eine Reihe virtueller Netzwerkkarten verbunden und jedes Betriebssystem hat eine physikalische Netzwerkkarte zum Verbinden mit dem Unternehmensnetzwerk (und mit dem Internet).

In diesem Szenario arbeiten wir mit einem NI-Real-Time-Hypervisor-System mit zwei physikalischen Netzwerkkarten und mit aktivierter interner, virtueller Ethernet-Verbindung. Eine physikalische Schnittstelle wird Windows XP und die andere LabVIEW Real-Time zugewiesen. Daher hat jedes Betriebssystem Zugriff auf zwei Netzwerkkarten (die virtuelle Ethernet-Verbindung und eine physikalische Verbindung). Die Windows-XP-Seite des Hypervisor-Systems wird zur Entwicklung und Verteilung von LabVIEW-Real-Time-Anwendungen verwendet.

Nehmen wir an, dass über die physikalischen Verbindungen die Kommunikation mit dem Internet vom jeweiligen Betriebssystem aus über ein Unternehmensnetzwerk aktiviert wurde. Die virtuelle Schnittstelle wird nur für die Kommunikation zwischen LabVIEW Real-Time und Windows XP verwendet. Die IP-Adresse beider physikalischer Adapter, die mit dem Unternehmensnetzwerk verbunden sind, werden über DHCP vorgeschrieben und befinden sich im Bereich 10.0.0.x mit einer Subnetzmaske 255.255.255.0. Die Gateway-Adresse ist auf 10.0.0.1 festgelegt.

Entsprechend den oben genannten Richtlinien sollten wir eine statische IP-Adresse für jeden virtuellen Ethernet-Adapter unter Verwendung eines anderen Subnetzes festlegen, als für den physikalischen Adapter auf jedem Betriebssystem verwendet wird. Obwohl andere Adressen im Bereich 10.x.x.x verwendet werden könnten, legen wir vorsichtshalber die IP-Adressen der Adapter von Windows XP und LabVIEW Real-Time auf den Bereich 192.168.0.1 und 192.168.0.2 fest. Die Subnetzmaske wird jeweils auf 255.255.255.0 festgesetzt.

Da sowohl Windows XP als auch LabVIEW Real-Time über die physikalischen Netzwerkkarten auf das Internet zugreifen können sollen, sollten dies die einzigen Adapter sein, für die ein Standard-Gateway festgelegt wird. Aus diesem Grund lassen wir die Einträge für den Standard-Gateway für beide virtuellen Ethernet-Netzwerkkarten leer. Beachten Sie, dass für jedes Betriebssystem letztendlich nur ein Standard-Gateway festgelegt wurde.

LV RT
Physikalische Netzwerkkarte
LV RT
Virtuelle Netzwerkkarte
Win XP
Virtuelle Netzwerkkarte
Win XP
Physikalische Netzwerkkarte
IP-Adresse: (DHCP) 10.0.0.x IP-Adresse:  
192.168.0.2
IP-Adresse:
192.168.0.1
IP-Adresse: (DHCP) 10.0.0.x
Subnetzmaske: (DHCP) 255.255.255.0 Subnetzmaske:
255.255.255.0
Subnetzmaske: 255.255.255.0 Subnetzmaske: (DHCP) 255.255.255.0
Standard-Gateway: (DHCP) 10.0.0.1 Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: (DHCP) 10.0.0.1

Tabelle 4: In dieser Tabelle wird eine mögliche Konfiguration der IP-Adresse für das System in Abbildung 6 gezeigt. Da in diesem Fall zwei Betriebssysteme auf einem Hypervisor-Controller ausgeführt werden, ist es wichtig zu beachten, dass die Betriebssysteme über jede der Netzwerkkarten mit verschiedenen Subnetzen und maximal einem Standard-Gateway verbunden werden.

Fall 3: Konfigurieren eines NI-Real-Time-Hypervisor-Systems mit virtuellem Ethernet (Entwicklung über ein Netzwerk)

In diesem Szenario werden ebenfalls zwei physikalische Netzwerkkarten in einem Real-Time-Hypervisor-System mit aktivierter virtueller Ethernet-Verbindung verwendet, wie in Fall 2. Die LabVIEW Real-Time zugewiesene physikalische Netzwerkkarte wird jedoch zur Verteilung von einem Host-PC im Netzwerk verwendet, und nicht für Zugriff auf das Internet.

Abbildung 7: In diesem Szenario ist die LabVIEW Real-Time-Seite eines NI-Real-Time-Hypervisor-Systems mit einem Windows-Netzwerk-PC für die LabVIEW-Real-Time-Anwendungsentwicklung verbunden.

Dem physikalischen Adapter für Windows wird nach wie vor eine DHCP-Adresse im Bereich 10.0.0.x mit Subnetzmaske 255.255.255.0 zugewiesen. Die virtuellen Ethernet-Adapter auf Windows XP und LabVIEW Real-Time werden erneut die statischen IP-Adressen 192.168.0.1 und 192.168.0.2 verwenden, mit den Subnetzmasken 255.255.255.0 und keinem Standard-Gateway.

Um sicherzustellen, dass sich die mit LabVIEW Real-Time verwendete physikalische Netzwerkkarte auf einem anderen Subnetz als die virtuelle Ethernet-Netzwerkkarte befindet, können wir eine IP-Adresse von 192.168.1.x mit einer Subnetzmaske 255.255.255.0 verwenden. Daher können der Netzwerk-PC-Adapter und der LabVIEW-Real-Time-Adapter, die miteinander verbunden sind, jeweils die statischen IP-Adressen 192.168.1.1 und 192.168.1.2 mit Subnetzmasken von 255.255.255.0 verwenden. Auch hier benötigen wir kein Standard-Gateway, da keiner der Adapter Zugriff auf ein Außennetzwerk erfordert (in diesem Subnetz sind keine Gateways vorhanden).

Win Host
Netzwerkkarte
LV RT
Physikalische Netzwerkkarte
LV RT
Virtuelle Netzwerkkarte
Win XP
Virtuelle Netzwerkkarte
Win XP
Physikalische Netzwerkkarte
IP-Adresse:
192.168.1.1
IP-Adresse:
192.168.1.2
IP-Adresse:  
192.168.0.2
IP-Adresse:
192.168.0.1
IP-Adresse: (DHCP) 10.0.0.x
Subnetzmaske: 255.255.255.0 Subnetzmaske: 255.255.255.0 Subnetzmaske:
255.255.255.0
Subnetzmaske: 255.255.255.0 Subnetzmaske: (DHCP) 255.255.255.0
Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: (DHCP) 10.0.0.1

Tabelle 5: Wenn diesem Szenario ein LabVIEW-Real-Time-Entwicklungsrechner im Netzwerk hinzugefügt wird, müssen die Einstellungen für IP-Adressen so gewählt werden, dass der Netzwerk-PC mit der LabVIEW-Real-Time-Seite des Hypervisor-Systems verbunden werden kann. 

Für das Herstellen einer Verbindung mit dem Interget gibt es viele andere Konfigurationsmöglichkeiten, einschließlich Verwendung von DHCP mit dezentralem Entwicklungs-PC und LabVIEW-Real-Time-Zielsystem oder Verwendung zusätzlicher Netzwerkkarten im LabVIEW Real-Time-Zielsystem oder Netzwerk-Host-Computer.

Fall 4: Verbinden mit zwei gerouteten Netzwerken (fortgeschritten)

Ein komplizierteres Szenario wäre das Konfigurieren eines Computers (diesmal mit nur einem Betriebssystem) mit zwei Netzwerkkarten, die mit zwei lokalen Netzwerken kommunizieren. Zu jedem Netzwerk gibt es ein Gateway, das für das Übertragen von Paketen an zusätzliche Außennetzwerke verwendet werden kann.

Abbildung 8: In diesem fortgeschrittenen Szenario wird ein Computer mit mehreren Netzwerkkarten mit zwei gerouteten Netzwerken verbunden. Diese Konfiguration von TCP/IP ist insbesondere dann schwierig, wenn die Außennetzwerke keine übergeordneten Netzwerke der lokalen Netzwerk-Subnetze sind.

Stellen Sie sich vor, das lokale Netzwerk A verwendet IP-Adressen der Form 10.0.0.x mit einer Subnetzmaske 255.255.255.0 und das lokale Netzwerk B verwendet IP-Adressen in der Form 10.0.1.x mit Subnetzmaske 255.255.255.0. Das lokale Netzwerk A ist über ein Gateway mit dem Außennetzwerk C verbunden, welches IP-Adressen in der Form 192.168.0.x mit Subnetzmaske 255.255.255.0 verwendet. Ebenso ist das lokale Netzwerk B über einen Gateway mit dem Außennetzwerk D verbunden, welches IP-Adressen in der Form 192.168.1.x mit Subnetzmaske 255.255.255.0 verwendet.

Das Ziel ist, dass unser PC mit mehreren Netzwerkkarten potentiellen Zugriff auf jedes der Netzwerke hat. Wir können eine Netzwerkkarte mit einem lokalen Netzwerk A verbinden und die IP-Adresse 10.0.0.5 mit Subnetzmaske 255.255.255.0 zuweisen und wir können 10.0.1.5 mit Subnetzmaske 255.255.255.0 zuweisen. Wenn ein Standard-Gateway zugewiesen wäre, würden die für die Außennetzwerke bestimmten Pakete möglicherweise über das falschen Gateway gesandt. Daher ist eine solche Zuweisung nicht erwünscht.

Wir lösen dieses Problem, indem wir die Einträge für das Standard-Gateway für die zwei Netzwerkkarten leer lassen und das Übertragen der Pakete manuell im Betriebssystem konfigurieren. Obwohl alle Betriebssysteme unterschiedlich konfiguriert sind, können für die meisten manuell Routen vom Benutzer hinzugefügt werden. Diese Routen können so konfiguriert werden, dass Sie auch nach dem Neustarten des Systems erhalten bleiben. Zur Verwendung der IP-Adresse des Gateways zwischen Netzwerken A und C (z. B. 10.0.0.1) müssen wir eine Route mit der IP-Adresse 192.168.0.x und Subnetzmaske 255.255.255.0 hinzufügen. Für das Gateway zwischen den Netzwerken B und D (z. B. Adresse 10.0.1.1) fügen wir eine IP-Adresse 192.168.1.x und Subnetzmaske 255.255.255.0 hinzu.

Netzwerkkarte 1 Netzwerkkarte 2
IP-Adresse: 10.0.0.5 IP-Adresse: 10.0.1.5
Subnetzmaske: 255.255.255.0 Subnetzmaske: 255.255.255.0
Standard-Gateway: 0.0.0.0 (nicht festgelegt) Standard-Gateway: 0.0.0.0 (nicht festgelegt)
Spezielle Route: Netzwerkkarte 1 und Gateway 10.0.0.1 zum Routen nach 192.168.0.x Spezielle Route: Netzwerkkarte 2 und Gateway 10.0.1.1 zum Routen nach 192.168.1.x

Tabelle 6: Während normalerweise nur eine Netzwerkkarte in einem Controller mit einem Gateway verbunden wird (mit einem Unternehmensnetzwerk oder dem Internet), erfordern fortgeschrittene Konfigurationen (wie in Abbildung 8 dargestellt) spezielle Routingeinträge im Betriebssystem, um ordnungsgemäß arbeiten zu können. 

Zusätzliche Routen müssen möglicherweise hinzugefügt werden, wenn die Anzahl der einzelnen Subnetze größer wird. In der Praxis werden die meisten Netzwerke so eingerichtet, dass eine solche komplexe Konfiguration vermieden wird, indem jeder Computer mit nur einem Gateway verbunden wird.