自分の環境に対し、お手軽に外部の回線からポートスキャンを実施したいときはありませんか?
手持ちのSIMとモバイルルーターで実現できるのですが、エラーが出てしょぼいハマり方をしてしまったので、
その反省も兼ねて対処方法をメモしておきます。
環境
- Windows 10 (有線LAN 1つのデスクトップPC)
-
Nmap 7.70
WSLではなく、Windows用のインストーラーで標準インストールし、Windowsで動作させています。(Zenmapが一緒に入ってくるもの) - Pocket Wifi (Softbank 304ZT)
PCとUSB接続しています。
発生したエラー
example.com
の443ポートだけスキャンしてみました。
example.com
の部分は自分の環境に書き換えてください。
> nmap -p443 example.com
Starting Nmap 7.70 ( https://nmap.org ) at 2019-06-25 15:57 ???? (?W???)
dnet: Failed to open device eth1
QUITTING!
eth1
…今回USB接続したPocketWifiのデバイスが開けないようです。
eth0
は普通のNICで有線LANでしたが、そちらの回線では問題なく動作しました。
ちなみにWindowsではあまり馴染みのないeth0
やeth1
ですが、
> nmap --iflist
で何なのかわかります。
※例えばipconfig /all
でMACアドレスを見比べたりするとわかると思います。
対処方法
大したことはなく、Npcap 0.996をインストールしたらうまく動きました。
> nmap -p443 example.com
Starting Nmap 7.70 ( https://nmap.org ) at 2019-06-25 16:09 ???? (?W???)
Nmap scan report for example.com (xxx.xxx.xxx.xxx)
Host is up (0.045s latency).
rDNS record for xxx.xxx.xxx.xxx: xxxxxxxx
PORT STATE SERVICE
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 0.78 seconds
原因はWindows用インストーラーnmap-7.70-setup.exe
に付属するNpcapが少し古く
0.99-r2
というバージョンだったことでした。
インストール時はあまり気にせず進めてしまっていました。
0.996
は同じページのすぐ下にリンクされていたので、入手して上書きインストールし無事解消しました。
反省点
公式で配布されているものは同梱物も含め常に最新のものであるという思い込みがあったため、
ここに行きつく前にドライバの再インストールやファイヤーウォールの設定変更、他の端末での検証など
無駄に時間を取られてしまいました。
よく見たらダウンロードページのところにちゃんと書いてありました。
Note: The version of Npcap included in our installers may not always be the latest version. If you experience problems or just want the latest and greatest version, download and install the latest Npcap release.
訳
注意:インストーラに含まれているNpcapのバージョンは、必ずしも最新のものとは限りません。問題が発生した場合、または最新かつ最高のバージョンが必要な場合は、最新のNpcapリリースをダウンロードしてインストールしてください。
教訓:しっかりページを読みましょう