Hi liebe Community,
ich bin gerade an einem Projekt daran bei dem ich auf folgendes Problem gestoßen bin.
Ich benötige für mein Projekt Kommunikation die über Sockets und IPs funktioniert. Doch nun benötigte ich eine VM-Ware und habe mich für VirtualBox entschieden.
Seit der Installation funktioniert leider gar nix mehr so wie es sollte.
Da ich mit VirtualBox nun auch 2 virtuelle Netzwerkkarten habe, ist das Problem das mein Rechner die falsche Netzwerkkarte in meinem Projekt erkennt, somit eine Falsche IP bezieht und versendet und das legt wiederum die gesamte Kommunikation zwischen den Rechnern lahm, da kein Rechner auf die IP antwortet auf die er sollte.
IPConfig – all
Verbunden bin ich über die WLAN-Karte, ab und an auch per LAN, doch leider bekomm ich in Java nur die IP der Virtuellen Netzwerkkarte angezeigt
InetAddress.getLocalHost()
Eine Auflistung der Netzwerkkarten in Java sieht wie folgt aus
Hierbei sollte auffallen, das jede Netzwerkkarte die selbe MAC-Adresse hat und dies auch die MAC-Adresse der VirtualBox Netzwerkkarte ist. Warum das so ist kann ich mir nicht erklären.
Gibt es eine Möglichkeit eine bestimmte Netzwerkkarte auszuwählen, außer über die Namen („eth0“, „eth1“, …). Am liebsten wäre mir die Eingabe einer MAC-Adresse da ich so genau bestimmen könnte welche Netzwerkkarte ich verwenden will.
Selbst ds umstellen der Prioritäten in Windows hat nichts gebracht, ich kann lediglich die Virtuelle Netzwerkkarte ausschalten dann funktioniert es. Da ich aber die Virtuelle-Netzwerkkarte brauche, kommt dies nicht in Frage.
Ich muss doch irgendwie beeinflussen können, auf welche Netzwerkkarte Java zugreift, dies sollte idealerweise per MAC-Adresse passieren, da eth1 in Windows nur schlecht nachvollziehbar ist.
So dass ich durch den Aufruf von InetAddress.getLocalHost() auch die entsprechende und damit richtige IP verwende.
Ich benötige hierbei dringend Hilfe, da ich an meinem Projekt nicht weitermachen kann ohne über diesen Schatten gesprungen zu sein. Da die Kommunikation zwischen Rechnern eine Grundlegende Sache in meinem Projekt ist.
Mit bestem Dank
Memphis01
ich bin gerade an einem Projekt daran bei dem ich auf folgendes Problem gestoßen bin.
Ich benötige für mein Projekt Kommunikation die über Sockets und IPs funktioniert. Doch nun benötigte ich eine VM-Ware und habe mich für VirtualBox entschieden.
Seit der Installation funktioniert leider gar nix mehr so wie es sollte.
Da ich mit VirtualBox nun auch 2 virtuelle Netzwerkkarten habe, ist das Problem das mein Rechner die falsche Netzwerkkarte in meinem Projekt erkennt, somit eine Falsche IP bezieht und versendet und das legt wiederum die gesamte Kommunikation zwischen den Rechnern lahm, da kein Rechner auf die IP antwortet auf die er sollte.
IPConfig – all
Code:
Windows-IP-Konfiguration
Hostname . . . . . . . . . . . . : NBWINDOWS7PRO
Primäres DNS-Suffix . . . . . . . :
Knotentyp . . . . . . . . . . . . : Hybrid
IP-Routing aktiviert . . . . . . : Nein
WINS-Proxy aktiviert . . . . . . : Nein
Drahtlos-LAN-Adapter WLAN:
Verbindungsspezifisches DNS-Suffix:
Beschreibung. . . . . . . . . . . : Realtek RTL8191SE Wireless LAN 802.11n PCI-E NIC
Physikalische Adresse . . . . . . : 1C-4B-D6-4C-36-B9
DHCP aktiviert. . . . . . . . . . : Ja
Autokonfiguration aktiviert . . . : Ja
IPv4-Adresse . . . . . . . . . . : 192.168.100.11(Bevorzugt)
Ethernet-Adapter LAN:
Medienstatus. . . . . . . . . . . : Medium getrennt
Verbindungsspezifisches DNS-Suffix:
Beschreibung. . . . . . . . . . . : Marvell Yukon 88E8057 PCI-E Gigabit Ethernet Controller
Physikalische Adresse . . . . . . : 00-1F-16-31-54-09
DHCP aktiviert. . . . . . . . . . : Ja
Autokonfiguration aktiviert . . . : Ja
Ethernet-Adapter VirtualBox Host-Only Network:
Verbindungsspezifisches DNS-Suffix:
Beschreibung. . . . . . . . . . . : VirtualBox Host-Only Ethernet Adapter
Physikalische Adresse . . . . . . : 08-00-27-00-28-7B
DHCP aktiviert. . . . . . . . . . : Nein
Autokonfiguration aktiviert . . . : Ja
IPv4-Adresse . . . . . . . . . . : 192.168.56.1(Bevorzugt)
Verbunden bin ich über die WLAN-Karte, ab und an auch per LAN, doch leider bekomm ich in Java nur die IP der Virtuellen Netzwerkkarte angezeigt
InetAddress.getLocalHost()
Code:
NBWINDOWS7PRO/192.168.56.1
Eine Auflistung der Netzwerkkarten in Java sieht wie folgt aus
Code:
Name: eth3
Display: Marvell Yukon 88E8057 PCI-E Gigabit Ethernet Controller
Loopback: false
Up: true
Virtual: false
MAC: 08002700287B
Name: net4
Display: Realtek RTL8191SE Wireless LAN 802.11n PCI-E NIC
Loopback: false
Up: true
Virtual: false
MAC: 08002700287B
Name: eth7
Display:VirtualBox Host-Only Ethernet Adapter
Loopback: false
Up: true
Virtual: false
MAC: 08002700287B
Hierbei sollte auffallen, das jede Netzwerkkarte die selbe MAC-Adresse hat und dies auch die MAC-Adresse der VirtualBox Netzwerkkarte ist. Warum das so ist kann ich mir nicht erklären.
Gibt es eine Möglichkeit eine bestimmte Netzwerkkarte auszuwählen, außer über die Namen („eth0“, „eth1“, …). Am liebsten wäre mir die Eingabe einer MAC-Adresse da ich so genau bestimmen könnte welche Netzwerkkarte ich verwenden will.
Selbst ds umstellen der Prioritäten in Windows hat nichts gebracht, ich kann lediglich die Virtuelle Netzwerkkarte ausschalten dann funktioniert es. Da ich aber die Virtuelle-Netzwerkkarte brauche, kommt dies nicht in Frage.
Ich muss doch irgendwie beeinflussen können, auf welche Netzwerkkarte Java zugreift, dies sollte idealerweise per MAC-Adresse passieren, da eth1 in Windows nur schlecht nachvollziehbar ist.
So dass ich durch den Aufruf von InetAddress.getLocalHost() auch die entsprechende und damit richtige IP verwende.
Ich benötige hierbei dringend Hilfe, da ich an meinem Projekt nicht weitermachen kann ohne über diesen Schatten gesprungen zu sein. Da die Kommunikation zwischen Rechnern eine Grundlegende Sache in meinem Projekt ist.
Mit bestem Dank
Memphis01