-O
または-A
フラグを使用してnmapでスキャンする場合、nmapはターゲットマシンのOSを判別しようとします。
なぜ自分のマシンでOSをスキャンしたいのかという質問を脇に置いて、自分のマシンでOSスキャンを実行するとメッセージが表示されます
自分のマシン(localhost)に対しては機能しないため、192.168.1.12に対するOSスキャンをスキップします
自分のマシンに対するOSスキャンを不可能にするのは何ですか?
Nmapは、要求から受信したパケットに対してさまざまな " サイドチャネル攻撃 "を実行することで機能するためです。パケットがの通常のパスを通過することを期待します
nmap
-> OS
-> Driver
-> Adapter (yours)
-> Wire
-> Adapter (theirs)
-> Driver
-> OS
-> Application
<- OS
<- Driver
<- Adapter (theirs)
<- Wire
<- Adapter (yours)
<- Driver
<- OS
nmap
ただし、自分自身に接続している場合は、次の最適化のいずれかが発生する可能性があります。
nmap
-> OS
-> Driver
-> Adapter (yours)
-> Driver
-> OS
-> Application
<- OS
<- Driver
<- Adapter (yours)
<- Driver
<- OS
nmap
または
nmap
-> OS
-> Driver
-> OS
-> Application
<- OS
<- Driver
<- OS
nmap
または
nmap
-> OS
-> Application
<- OS
nmap
これらの他のオプションは、nmapが知りたい情報を理解することをはるかに複雑にするため、3つの可能なオプションをサポートするために時間を費やす代わりに、自分自身への要求をブロックするだけです。
代わりにIPアドレスを使用してみてください。ローカルホストはネットワークインターフェース全体を含むわけではなく、代わりにIPアドレスを使用すればnmapが機能すると思います...
Localhostが機能しないと思う理由の詳細については、 ping "localhost"とping "local IP address"に違いがあるのはなぜですか? を参照してください。