Anwendungsserver, Knoten oder Zelle für einzelne Netzschnittstelle konfigurieren
Anwendungsserver sind standardmäßig so konfiguriert, dass sie alle verfügbaren Netzschnittstellen verwenden. Sie können diese Konfiguration in der Weise ändern, dass ein Anwendungsserver nur eine bestimmte Netzschnittstelle verwendet. Allerdings können Sie einen Anwendungsserver nicht in der Weise konfigurieren, dass er eine Untergruppe von Schnittstellen verwendet. Wenn beispielsweise drei Ethernet-Adapter existieren, können Sie einen Anwendungsserver nicht für die Verwendung von zwei dieser drei Adapter konfigurieren.
Informationen zu diesem Vorgang
Ist ein Anwendungsserver für die Verwendung aller Netzschnittstellen konfiguriert und öffnet er ein Socket auf Port 9901 auf einer Maschine mit zwei TCP/IP-Adressen, dann öffnet er Port 9901 auf beiden IP-Adressen.
Im Betriebssystem Microsoft Windows zeigt die Ausgabe
netstat im Feld für die lokale Adresse
*.9901 an, und zeigt damit an, dass
Port 9901 an alle Netzschnittstellen im System gebunden ist.
Wird ein Anwendungsserver für die Verwendung einer bestimmten Netzschnittstelle konfiguriert, dann kommuniziert er nur auf dieser einen Netzschnittstelle. Wenn beispielsweise ein Anwendungsserver unter Windows ein Socket auf Port 7842 auf einem Ethernet-Adapter mit der Adresse 192.168.1.150 öffnet, dann zeigt die netstat-Ausgabe im Feld für die lokale Adresse 192.168.1.150.7842 an und zeigt damit an, dass Port 7842 nur an 192.168.1.150 gebunden ist.
Falls mehrere Netzschnittstellen existieren und jede dieser Netzschnittstellen gesondert verwendet werden soll, muss für jede Schnittstelle ein eigenes Konfigurationsprofil existieren. Werden Netzschnittstellen gesondert verwendet, wird für jede Netzschnittstelle, auf der ein Anwendungsserver ausgeführt wird, ein eigener Node Agent benötigt. Zwei Anwendungsserver, die an zwei gesonderte Netzschnittstellen auf derselben Maschine gebunden sind, dürfen nicht auf demselben Knoten ausgeführt werden, weil sie unterschiedliche TCP/IP-Adressen haben.
In einer Umgebung, die mit mehreren Netzen verbunden ist, müssen Sie möglicherweise eingehende HTTP- und/oder HTTPS-Verbindungen trennen. Voraussetzung dafür ist, dass Sie einen anderen Netzadapter verwenden als denjenigen, der dem während der Installation verwendeten Hostnamen zugeordnet ist. Um die Trennung durchzuführen, legen Sie fest, dass der Hostname bzw. die IP-Adresse für die Ports defaulthost und defaulthost_secure in jedem umzuleitenden Anwendungsserver an einen anderen Netzadapter gebunden wird. Diese Änderung bewirkt, dass der Anwendungsserver so konfiguriert wird, dass er nur die HTTP- und/oder HTTPS-Verbindungen akzeptiert, die über den angegebenen Adapter empfangen werden. Außerdem verwendet der Deployment Manager diesen Hostnamen für den Transport, wenn das Plug-in für diesen Anwendungsserver generiert wird. Es gibt keine bekannten Einschränkungen für diese Änderungen, vorausgesetzt, dass nur die Ports defaulthost und defaulthost_secure wie beschrieben geändert werden.

- Soll ein bestimmter Anwendungsserver eine einzelne Netzschnittstelle verwenden, führen Sie auf diesem Anwendungsserver die folgenden Schritte aus.
- Soll ein gesamter Knoten eine einzelne Netzschnittstelle verwenden, führen Sie für den Node Agent und für alle Anwendungsserver im betreffenden Knoten die folgenden Schritte aus.
- Soll eine gesamter Zelle eine einzelne Netzschnittstelle verwenden, führen Sie für den Deployment Manager, für den Node Agent und für alle Anwendungsserver im betreffenden Knoten die folgenden Schritte aus.
- Bei Ausführung der folgenden Schritte dürfen Sie für die TCP/IP-Adressen keine der folgenden Angaben machen: localhost, eine Loopback-Adresse, wie z. B. 127.0.0.1, oder * (Stern). Wenn für die DCS-Adresse (Distribution and Consistency Services) ein * (Stern) angegeben ist und Sie mehrere NICs (Network Identification Cards) haben, kann sich der DCS-Port an mehrere IP-Adressen binden.
Wenn ein Client-ORB eine TCP-Verbindung zu einem Server herstellt, gibt es zwei mögliche Szenarien:
- Die Seite des lokalen Socket wird an eine einzelne Adresse gebunden, die entweder in der Eigenschaft ORB_LISTENER_ADDRESS property in der Datei serverindex.xml oder in der angepassten Eigenschaft com.ibm.CORBA.LocalHost angegeben ist.
- Die Seite des lokalen Socket wird nicht an eine bestimmte Adresse gebunden.
Diese beiden Szenarien finden statt, weil der Micosoft-Windows-Netzstapel Pakete nicht über verschiedene Bereichszonen hinweg weiterleitet. Die Loopback-Schnittstelle und die allgemein zugängliche Schnittstelle befinden sich in unterschiedlichen Bereichszonen.
Wenn Ihr Client unter Microsoft Windows 7 oder Microsoft Windows 2008 R2 ausgeführt wird und die angepasste Eigenschaft com.ibm.ws.orb.transport.useMultiHome auf dem Client auf false gesetzt ist, schlägt das erste Szenario mit der Ausnahme SocketException fehl weil eine der folgenden Situationen vorliegt:- Der Client-Host-Wert ORB_LISTENER_ADDRESS in der Datei serverindex.xml oder in der angepassten Eigenschaft com.ibm.CORBA.LocalHost hat eine Interne Adresse (localhost oder 127.0.0.1), und der Server hat einen externen Hostnamen oder eine externe IP-Adresse (z. B. 147.10.32.117).
- Der Client hat eine externe Adresse, und der Server hat eine interne Adresse.
Vorgehensweise
Ergebnisse
Beispiel
Dieses Beispiel erstellt auf einer Maschine, die über mindestens zwei Netzschnittstellen verfügt, zwei Knoten, von denen jeder eine eigene Netzschnittstelle verwendet:
- Erstellen Sie mit Profile Management Tool einen Anwendungsserver und binden Sie ihn in die gewünschte Zelle ein.
- Erstellen Sie mit Profile Management Tool ein Anwendungsserverprofil, und geben Sie dabei einen anderen Hostnamen an als für den zuvor erstellten Anwendungsserver. Binden Sie diesen Anwendungsserver in die gewünschte Zelle ein.
- Starten Sie den Node Agent und den Anwendungsserver, die für die erste Netzschnittstelle konfiguriert sind. Befolgen Sie die vorherigen Schritte für den Node Agent und den Anwendungsserver, um diesen Knoten für die Kommunikation auf der Netzschnittstelle vorzubereiten, die bei Konfiguration dieses Anwendungsservers angegeben wurde.
- Starten Sie den zweiten Node Agent und Anwendungsserver. Befolgen Sie die vorherigen Schritte für den Node Agent und den Anwendungsserver, um diesen Knoten für die Kommunikation auf der einzelnen Netzschnittstelle vorzubereiten, die bei Konfiguration des zweiten Anwendungsservers angegeben wurde.
- Stoppen Sie alle Node Agents und Anwendungsserver, die Sie in diesem Beispiel erstellt haben.
- Starten Sie alle diese Node Agents und Anwendungsserver erneut.
Jetzt haben Sie zwei gesonderte Knoten, die zwei verschiedene Netzschnittstellen verwenden.
Nächste Schritte
-Dcom.ibm.ws.orb.transport.useMultiHome=false
-Dcom.ibm.CORBA.LocalHost=Hostname
Hostname ist die TCP/IP-Adresse oder der Hostname der Netzschnittstelle, die der ORB verwenden soll.
