Ich habe ein Stück Industrieausrüstung, die auf einem ziemlich einfachen Betriebssystem namens VxWorks läuft . Normalerweise kommuniziere ich zur Fehlerbehebung mit dem System, indem ich meine IPv4-IP auf den gleichen Bereich wie die lokale IP einstelle und dann Diagnosesoftware ausführe.
Vor ein paar Wochen habe ich festgestellt, dass sich die lokale IP-Adresse des Systems aus irgendeinem Grund selbst auf eingestellt hat 0.0.0.0
. Jetzt möchte ich mich mit der Diagnose befassen, um sie zu ändern, aber mein PC lässt das Festlegen einer IP ab nicht zu 0
.
Gibt es eine andere Möglichkeit, mit einem Gerät mit einer lokalen IP-Adresse 0.0.0.0
über einen Windows-PC zu kommunizieren ?
Es ist nicht möglich, das Gerät auf die werkseitigen Standardeinstellungen zurückzusetzen, ohne es an den Hersteller zurückzusenden.
quelle
0.0.0.0
ist keine routingfähige Adresse. Viele Softwareteile binden an0.0.0.0
, damit diese Software an die IP-Adresse gebunden werden kann, die der Netzwerkschnittstelle zugewiesen ist. Dies macht es beispielsweise einfacher, das Gerät in eine DHCP-Einstellung zu versetzen, und Sie stellen lediglich eine Verbindung her, indem Sie die IP-Adresse des Geräts abrufen. Meine große Frage an Sie ist, warum Sie die IPv4-IP Ihres Computers auf den gleichen Bereich wie die lokale IP einstellen, um dann Diagnosesoftware auszuführen. Macht keinen Sinn. Sie sollten nur die IP-Adresse des Geräts abrufen und eine Verbindung dazu herstellen. Das heißt, ich habe eine Idee. Eine Antwort schreiben.0.0.0.0
ist nicht möglich , sich selbst eine Adresse zuzuweisen, wenn es einen standardkonformen IP-Stack gibt. Hierfür stehen einige Optionen zur Verfügung: 1. Zeigt0.0.0.0
an, dass die Zuweisung einer IP-Adresse fehlgeschlagen ist. 2. Es hat einen kaputten IP-Stack, der sich irgendwie selbst zugewiesen hat0.0.0.0
. Ich weiß nicht genug über VxWorks, um zu sagen, welcher der beiden am wahrscheinlichsten ist. Wenn die Adresse wirklich zugewiesen wurde0.0.0.0
, benötigen Sie einen gehackten IP-Stack, um mit ihm zu kommunizieren. Aber das hilft nicht viel, wenn es überhaupt keine Adresse hat.Antworten:
0.0.0.0
ist keine gültige IP-Adresse. RFC1700 (a) gibt an, dass0.0.0.0/8
(0.anything.anything.anything
) nur als Quelladresse reserviert ist.Normalerweise sehen Sie, dass Systeme und Anwendungen Ports binden,
0.0.0.0
was bedeutet, dass der Port von jeder Schnittstelle aus zugänglich ist.Ich kenne VxWrks nicht, gehe aber davon aus, dass es eine Möglichkeit gibt, eine lokale IP-Adresse für die Verbindung mit anderen Computergeräten anzugeben.
WindRiver bietet eine Vielzahl von Handbüchern zur Konfiguration des IP-Setups.
quelle
0.0.0.0
nur als Quelle gültig ist , wie sind die Ports dann überhaupt0.0.0.0
zugänglich? Ich bin mir sicher, dass mir ein Detail fehlt, aber das klingt nach einem Widerspruch.0.0.0.0
ist eine API-Ebene, um Pakete / Verbindungen zu akzeptieren, die an eine lokal konfigurierte Adresse adressiert sind. Es handelt sich nicht um Pakete, die an eine0.0.0.0
beliebige Stelle auf Protokollebene gesendet werden.0.0.0.0
wird als leere Zeichenfolge behandelt. Wenn Sie Ihren Server so einrichten, dass Verbindungen von0.0.0.0
diesem Server akzeptiert werden, akzeptiert er Verbindungen von jeder IP-Adresse - das0.0.0.0
bedeutet. Wenn Sie keine Bindung herstellen,0.0.0.0
akzeptiert Ihr Server NUR Verbindungen von einer einzelnen IP-Adresse und lehnt Verbindungen von anderen Computern im Netzwerk ab. Stellen Sie sich eine Bindung ohne 0.0.0.0 als eine Art integrierte Firewall vorSie können Ihren PC täuschen, dass das Gerät eine echte IP-Adresse hat. Sie benötigen aber die physikalische Adresse (auch als MAC-Adresse bekannt), das Ding mit 6 zweistelligen Feldern. Sie tun dies, indem Sie es zu Ihrer Arp-Auflösungstabelle hinzufügen. Öffnen Sie unter Windows ein Cmd-Terminal und verwenden Sie arp.
Natürlich benötigen Sie eine eindeutige IP-Adresse in Ihrem Netzwerk. Andernfalls wird der Stapel an eine andere Stelle umgeleitet. Wenn Sie an diesem Punkt angelangt sind, sollten Sie auf das Gerät zugreifen können. Die Netzwerkinfrastruktur wird gemäß der physischen Adresse weitergeleitet.
Unter Linux ist das so ziemlich das Gleiche. Öffne ein Terminal, benutze arp.
Es kann nicht funktionieren !! Einige Geräte antworten nur auf ihre eigene IP. Aber ich schätze, es ist nicht dein Fall.
quelle
Die
0.0.0.0
IP-Adresse ist in Ordnung, aber ich würde vermuten, dass sich auf dem Netzwerk, in dem sich das Gerät befindet, etwas anderes geändert hat, um zu verhindern, dass sich Ihre Diagnosesoftware problemlos mit diesem Gerät verbindet.Wie bei anderen ist der Status in ihrer Antwort
0.0.0.0
eine nicht routbare IP-Adresse, die häufig von Software verwendet wird, um eine IP-Adresse an allen Netzwerkschnittstellen eines Geräts zu binden. Dies bedeutet im Wesentlichen:Wenn das Gerät DHCP verwendet, um seine eigene IP-Adresse für die verbundenen Schnittstellen zu erhalten, und eine zugewiesene Adresse von erhält
1.2.3.4
, können Sie eine Verbindung zu diesem Gerät unter herstellen1.2.3.4
. Und wenn sich diese Adresse auf5.6.7.8
dem Gerät ändert, können Sie problemlos eine Verbindung herstellen5.6.7.8
.Das
0.0.0.0
scheint etwas zu sein, was Sie entdeckt haben, ist aber nicht die Ursache des Problems. Ich bin eher der Meinung, dass das Problem, das Sie haben, aufgedeckt wird, wenn Sie Folgendes angeben:Erstens scheint das seltsam. Warum müssen Sie die lokale IP-Adresse Ihres Computers ändern, um eine Verbindung zum VxWorks-Gerät herzustellen? Sollten Sie sich nicht direkt mit der IP-Adresse des Geräts verbinden?
Nun, wenn Sie dies angeben, kann ich mir nur vorstellen, dass das Gerät - und die Diagnosesoftware - möglicherweise mit einer Art Netzwerkkonfiguration ohne Konfiguration arbeiten . Dies bedeutet, dass das Gerät im Netzwerk sendet und die Diagnosesoftware diese Geräte-Broadcasts sucht, um die Verbindung zum Gerät zu erleichtern, ohne die genaue IP-Adresse zu kennen.
Diese Art von „selbstkonfigurierendem“ Netzwerkmaterial ohne Konfiguration ist praktisch, bis es Kopfschmerzen bereitet.
Meine erste Vermutung ist, dass Sie sich direkt mit dem Gerät verbinden können, wenn Sie feststellen können, welche IP-Adresse ihm zugewiesen wurde. Und wenn Sie noch mehr darüber nachdenken, ich wette, dass der Grund, warum Sie in der Vergangenheit - aber nicht jetzt - eine Verbindung herstellen konnten, möglicherweise mit einer Netzwerkänderung zu tun hat, die die Ports blockiert hat, an denen das konfigurationsfreie Netzwerk- Setup des Geräts sendet. Welcher Hafen kann das sein? Unsicher. Wenn jedoch kein konfigurationsfreier Datenverkehr über das Netzwerk geleitet wird, können Sie keine Verbindung zum Gerät herstellen, und die
0.0.0.0
IP-Adresse hat nichts damit zu tun.quelle
0.0.0.0
ist eine nicht routbare Adresse. Es gibt keine Möglichkeit, dorthin zu gelangen, weil "es nicht wirklich existiert" oder "es kann an zu vielen Orten existieren".Es kann leicht unterschiedliche Bedeutungen haben, je nachdem, ob es sich um einen Host oder eine Route handelt.
Als Route, die in diesem Fall nicht anwendbar ist, bedeutet es "Standardroute", die ohne weitere Anweisung entweder das Standardgateway oder "eine meiner Routen" oder ähnliches bedeutet
127.0.0.1
Als Gastgeber ist es dann vor allem in Ihrem Fall entweder; wie auf Wikipedia erklärt :
Angenommen, es wird normalerweise DHCP verwendet. Statt eines vollständigen Zurücksetzens sollten einige Dinge versucht werden: "Schalten Sie es aus und wieder ein" oder trennen Sie einfach das Netzwerk, warten Sie eine Minute und schließen Sie es wieder an. Möglicherweise wird nur nach einem neuen DHCP gefragt Adresse.
Stellen Sie außerdem sicher, dass der DHCP-Server tatsächlich angezeigt wird.
quelle