簡単にMACアドレスをランダムに偽装できる GNU MAC Changer を試してみました.
導入
$ sudo apt install macchanger
導入時にネットワークインターフェイスが有効になるときにmacchanger
を有効にするかどうかを聞いてきます.
┌────────────────────────┤ Configuring macchanger ├─────────────────────────┐
│ │
│ Please specify whether macchanger should be set up to run automatically │
│ every time a network device is brought up or down. This gives a new MAC │
│ address whenever you attach an ethernet cable or reenable wifi. │
│ │
│ Change MAC automatically? │
│ │
│ <Yes> <No> │
│ │
└───────────────────────────────────────────────────────────────────────────┘
あとで変更したい場合は sudo dpkg-reconfigure macchanger
で再度設定できます.
help
$ macchanger --help
GNU MAC Changer
Usage: macchanger [options] device
-h, --help Print this help
-V, --version Print version and exit
-s, --show Print the MAC address and exit
-e, --ending Don't change the vendor bytes
-a, --another Set random vendor MAC of the same kind
-A Set random vendor MAC of any kind
-p, --permanent Reset to original, permanent hardware MAC
-r, --random Set fully random MAC
-l, --list[=keyword] Print known vendors
-b, --bia Pretend to be a burned-in-address
-m, --mac=XX:XX:XX:XX:XX:XX
--mac XX:XX:XX:XX:XX:XX Set the MAC XX:XX:XX:XX:XX:XX
Report bugs to https://github.com/alobbs/macchanger/issues
現在のMACアドレス確認
wls1
のMACアドレスは00:22:fa:33:45:6a
になっています.
$ ip link show wls1
2: wls1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
link/ether 00:22:fa:33:45:6a brd ff:ff:ff:ff:ff:ff
ネットワークインターフェイスをダウン
upのままだとエラーとなります.([ERROR] Could not change MAC: interface up or insufficient permissions: Operation not permitted
)
$ sudo ip link set dev wls1 down
MACアドレスをランダムに変更
$ sudo macchanger -r wls1
Current MAC: de:ed:be:ef:01:23 (unknown)
Permanent MAC: 00:22:fa:33:45:6a (Intel Corporate)
New MAC: 7a:a9:98:47:10:1a (unknown)
macアドレスを元に戻す
$ sudo macchanger -p wls1
Current MAC: 78:a9:98:e1:2e:f8 (unknown)
Permanent MAC: 00:22:fa:33:45:6a (Intel Corporate)
New MAC: 00:22:fa:33:45:6a (Intel Corporate)
ベンダーIDは保持してランダムに変更
このオプションは使い勝手が良さそうですね.
$ sudo macchanger -e wls1
Current MAC: 00:22:fa:33:45:6a (Intel Corporate)
Permanent MAC: 00:22:fa:33:45:6a (Intel Corporate)
New MAC: 00:22:fa:db:b9:ed (Intel Corporate)
手動設定
これはip link set dev wls1 de:ed:be:ef:01:23
やifconfig wls1 hw ether de:ed:be:ef:01:23
と同じなのであまりmacchanger
を使う意味ないですね.
$ sudo macchanger --mac=de:ed:be:ef:01:23 wls1
Current MAC: 00:22:fa:33:45:6a (Intel Corporate)
Permanent MAC: 00:22:fa:33:45:6a (Intel Corporate)
New MAC: de:ed:be:ef:01:23 (unknown)
ネットワークインターフェイスをアップ
upして何時ものように利用します.
$ sudo ip link set dev wls1 up
自動起動時の動作
/etc/network/if-pre-up.d/macchanger
, /etc/network/if-post-down.d/macchanger
で設定しているようです.この中を見ると,以下のように-e
optionで実行されるのでベンダーIDは維持した状態でランダムに設定されるようです.
/usr/bin/{package} -e IFACE >> $LOGFILE 2>&1
ログファイルは/var/log/macchanger.log
に保存されます.
環境
$ neofetch
_,met$$$$$gg. mk@x200
,g$$$$$$$$$$$$$$$P. -------
,g$$P" """Y$$.". OS: Debian GNU/Linux unstable (sid) x86_64
,$$P' `$$$. Model: 74574PJ ThinkPad X200
',$$P ,ggs. `$$b: Kernel: 4.16.0-1-amd64
`d$$' ,$P"' . $$$ Uptime: 2 days, 13 hours, 17 minutes
$$P d$' , $$P Packages: 5718
$$: $$. - ,d$$' Shell: bash 4.4.19
$$; Y$b._ _,d$P' Resolution: 1280x800
Y$$. `.`"Y$$$$P"' WM: awesome
`$$b "-.__ Terminal: sakura
`Y$$ Terminal Font: Fira Code 11
`Y$$. CPU: Intel Core 2 Duo P8400 (2) @ 2.267GHz
`$$b. GPU: Intel® GM45 Express Chipset
`Y$$b. Memory: 6579MiB / 7871MiB
`"Y$b._
`"""
$ dpkg-query -W macchanger
macchanger 1.7.0-5.3+b1