2016-07-01 18 views
0

ローカルネットワーク上の他のホストからMACアドレスを取得するコンテナでプログラムを実行したいとします。物理的なインターフェイスにバインドされたコンテナ内で実行されているプログラムを、リモートホスト上で実行されるプログラムではなく、ローカルプログラムとして扱いたい。Dockerコンテナからネットワーク上の他のホストのMACアドレスを取得する

私はローカルネットワーク上のホストを持っています。ネットワーク上の他のホストからMACアドレスを取得するには、その物理ホストから実行されているnmapやarp-scanなどのツールを使用します。同じホスト上のインターフェイスにコンテナをマウントするときも同様の動作が予想されます。

私は実行可能な物理ホストから、結果にはMACアドレスが含まれています。リモートホストからnmapを使用して同じコマンドを実行した場合、MACアドレスを取得できませんでした。リモートホストからMACアドレスを取得することができないため、-snスキャンです。

なぜ私のコンテナはローカルネットワーク上のリモートホストとして扱われていますか?

sudo nmap -sn 192.x.x.x/24 

私は私がまた、ARPとARPスキャンを試してみました上記

nmap -sn --privileged 192.x.x.x/24 
sudo nmap -sn 192.x.x.x/24 

のそれぞれから、次を実行している

docker run -P -it scanner_container 
docker run -P --privileged -it scanner_container 
docker run -p 192.x.x.ip-of-interface scanner_container 

次の方法私のコンテナをマウントしようとしました

私はどんなツールにも縛られていません。自分のホスト上で自分のMACアドレスを取得する方法がほしいです私のローカルネットワーク内のホスト上のコンテナ内で実行されるプログラムからのネットワークです。

nmapが使用するのに適切なツールであれば、それ以外の場合は他のものを使用しても大丈夫です。私は数日をかけてさまざまなことを試みましたが、コンテナをインタフェースにバインドして実際のホストとして扱うことができませんでした。

答えて

0

私は次のコマンドで動作させることができました。私は確かではないよ、なぜこれが唯一のdockerformac

docker run -it --net=host scanner_container

とLinuxマシンと文句を言わない仕事に取り組んでいます
関連する問題