web-dev-qa-db-ja.com

“ 0.0.0.0”のIPアドレスが割り当てられている機器と通信するにはどうすればいいですか?

私は VxWorks と呼ばれるかなり基本的なOSで動く産業機器を持っています。私は通常、トラブルシューティングの目的で、自分のIPv4 IPをローカルIPと同じ範囲に設定してから診断ソフトウェアを実行して、システムと通信します。

数週間前、私は何らかの奇妙な理由でシステムのローカルIPアドレスが0.0.0.0に設定されていることを発見しました。今私はそれを変更するために診断に入りたいのですが、私のPCは0で始まるIPの設定を許可しません。

Windows PCを使用して0.0.0.0のローカルIPを持つデバイスと通信する他の方法はありますか。

製造元に出荷せずにデバイスを工場出荷時のデフォルト設定にリセットする方法はありません。

20
Pablo Gonzalez

0.0.0.0は有効なIPアドレスではありません。 RFC1700 (a)では、0.0.0.0/80.anything.anything.anything)は送信元アドレスとしてのみ予約されています。

通常、システムとアプリケーションはポートを0.0.0.0にバインドします。これは、ポートがどのインターフェースからもアクセス可能であることを意味します。

私はVxWrksには馴染みがありませんが、他のコンピュータデバイスとのインタフェース用にローカルIPを指定する方法があると思います。

WindRiverには、IP設定の構成方法に関するさまざまなマニュアルがあります。

23
Hogstrom

あなたはあなたのPCに、そのデバイスが本当のIPアドレスを持っていると考えるように仕向けることができます。しかし、物理アドレス(MACアドレスとも呼ばれる)、6つの2桁の16進数フィールドを持つものが必要です。あなたはそれをあなたのARP解決テーブルに加えることによってそれをする。 Windowsでは、cmd端末を開き、arpを使用してください。

arp -s <IP address> <physical address>

もちろん、あなたはあなたのネットワーク内でユニークなIPアドレスを必要とします。そうでなければ、スタックはどこか別の場所に転送されます。この時点まで到達すれば、そのデバイスにアクセスできるはずです。ネットワークインフラストラクチャは物理アドレスに従ってルーティングします。

Linuxではほとんど同じです。端末を開き、arpを使います。

うまくいかないかもしれません!一部のデバイスは、自分のIPにのみ応答します。しかし、私はあなたの場合ではないと思います。

13
Gabe Mizuka

0.0.0.0のIPアドレスは問題ありませんが、診断ソフトウェアがそのデバイスに簡単に接続できないようにするために、デバイスがオンになっているネットワーク上で何か他のものが変更されていると思います。

他の人として、彼らの答えの中で述べている0.0.0.0はルーティング不可能なIPアドレスで、デバイス上のすべてのネットワークインターフェース上の任意のIPアドレスにバインドするためにソフトウェアによってしばしば使用されます。これは基本的に次のことを意味します。

「ちょっと私はソフトウェアの一部です、そして私が実行しているマシンの割り当てられたIPアドレスになされるあらゆる接続を受け入れます。」

そのため、デバイスがDHCPを使用して(接続されているインタフェースのIPアドレスを取得して)、1.2.3.4という割り当てられたアドレスを取得している場合は、1.2.3.4でそのデバイスに接続できます。そしてそのアドレスが5.6.7.8に変更された場合、デバイスは5.6.7.8を通してそれに接続することを喜んで許可します。

0.0.0.0はあなたが発見したもののようですが、問題の原因ではありません。むしろ、私の意見では、あなたが抱えている問題は、あなたが次のように述べたときに明らかになります。

「私は通常、トラブルシューティングの目的で、自分のIPv4 IPをローカルIPと同じ範囲に設定してから診断ソフトウェアを実行して、システムと通信します。」

まず、それは奇妙に思えます。 VxWorksデバイスに接続するために、コンピュータのローカルIPアドレスを変更する必要があるのはなぜですか?デバイスのIPアドレスに直接接続するだけではいけませんか。

あなたがこれを述べるとき私が考えることができるすべては私が考えることができる - そして装置 - そして診断ソフトウェア - はある種の ゼロ設定ネットワーキング セットアップを使って動作するかもしれないということです。つまり、デバイスはネットワーク上でブロードキャストし、診断ソフトウェアはこれらのデバイスブロードキャストを探し出して正確なIPアドレスを知らなくてもデバイスに接続できるように設計されています。

このような「自己構成」ゼロ構成ネットワーキングは、頭痛になるまでは便利です。

私が最初に推測したのは、デバイスに割り当てられているIPアドレスを特定できれば、そのデバイスに直接接続できるということです。さらに考えてみると、過去に接続できた理由は、今ではなくても、ネットワークの変更によってデバイスのポートがブロックされていたためであると考えられます 。ネットワーキング セットアップがブロードキャストされています。どのようなポートですか?わからない。しかし、設定不要のトラフィックがネットワーク経由でルーティングされていない場合は、デバイスに接続できず、0.0.0.0のIPアドレスは関係ありません。

12
JakeGould

0.0.0.0はルーティング不可能なアドレスです。 "それは実際には存在しない"、または "実際には"多すぎる場所に存在する可能性がある "ため、あなたがそれにルーティングする方法はありません。

ホストかルートかによって、意味が多少異なる場合があります。

この場合には当てはまらない経路として、それは「デフォルト経路」を意味し、それ以上の指示なしにデフォルトゲートウェイ、または「私の経路のいずれか」を意味する、または127.0.0.1と同様

ホストとして、そしてあなたの場合、最も顕著なのはどちらかです。 ウィキペディアで説明されているように

まだアドレスが割り当てられていないときに、ホストが自分自身として主張するアドレス。 DHCPを使用しているときに最初のDHCPDISCOVERパケットを送信するときなど。

ホストのIPスタックがこれをサポートしている場合、DHCPを介したアドレス要求が失敗したときにホストが自分自身に割り当てるアドレス。

通常DHCPを使用していると仮定すると、フルリセットではなく、いくつか試してみてください。住所。

また、もちろん、それが実際にDHCPサーバーを認識できることを確認してください。

6
Tetsujin