8

so i change my MAC address with macchanger -A wlp68s0b1 at boot with crontab, here is what happens when i disconnect and reconnect :

while connecting after boot :

rahman@debian:~$ macchanger -s wlp68s0b1
Current MAC:   00:22:31:c6:38:45 (SMT&C Co., Ltd.)
Permanent MAC: 00:00:00:00:00:00 (FAKE CORPORATION)

after disconnecting :

rahman@debian:~$ macchanger -s wlp68s0b1
Current MAC:   16:7b:e7:3c:d3:cd (unknown)
Permanent MAC: 00:00:00:00:00:00 (FAKE CORPORATION)

after reconnecting :

rahman@debian:~$ macchanger -s wlp68s0b1
Current MAC:   00:00:00:00:00:00 (FAKE CORPORATION)
Permanent MAC: 00:00:00:00:00:00 (FAKE CORPORATION)

and so on, and with every disconnect i get a different random MAC address which fades on reconnecting giving me my real MAC address , what causes that and how to stop it ?

some outputs :

rahman@debian:~$ lspci -nn |grep 14e4
44:00.0 Network controller [0280]: Broadcom Limited BCM4313 802.11bgn Wireless Network Adapter [14e4:4727] (rev 01)
rahman@debian:~$ uname -a
Linux debian 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) x86_64 GNU/Linux
rahman@debian:~$ sudo ifconfig 
enp0s25: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:24:c0:7b:a8:8b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xd4800000-d4820000  

enp0s25:avahi: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 169.254.9.109  netmask 255.255.0.0  broadcast 169.254.255.255
        ether 00:24:c0:7b:a8:8b  txqueuelen 1000  (Ethernet)
        device interrupt 20  memory 0xd4800000-d4820000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 9436  bytes 6584515 (6.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9436  bytes 6584515 (6.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp68s0b1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.5  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::6711:9875:eb78:24fc  prefixlen 64  scopeid 0x20<link>
        inet6 fd9c:c172:b03b:ce00:f1e0:695e:7da0:91a  prefixlen 64  scopeid 0x0<global>
        ether 00:00:00:00:00:00  txqueuelen 1000  (Ethernet)
        RX packets 484346  bytes 641850809 (612.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 368394  bytes 44259668 (42.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rahman@debian:~$ sudo iwconfig 
lo        no wireless extensions.

enp0s25   no wireless extensions.

wlp68s0b1  IEEE 802.11  ESSID:"3bdo"  
          Mode:Managed  Frequency:2.447 GHz  Access Point: 9C:C1:72:B0:3B:D4   
          Bit Rate=65 Mb/s   Tx-Power=30 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=54/70  Signal level=-56 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:4  Invalid misc:183   Missed beacon:0
  • There is quite good howto of MAC address changing: en.wikibooks.org/wiki/Changing_Your_MAC_Address/Linux – Jaroslav Kucera Sep 29 '17 at 7:45
2

Network-Manager will reset your mac address during the wifi scanning.

To permanently change your mac address:

Edit your /etc/NetworkManager/NetworkManager.conf as follows:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

[keyfile]

Edit your /etc/network/interfaces by adding the following line:

pre-up ifconfig wlp68s0b1 hw ether xx:xx:xx:yy:yy:yy

The xx:xx:xx:yy:yy:yy is the new mac address obtained from the output of macchanger -A wlp68s0b1

Reboot and verify your settings.

Arch-linux wiki : Configuring MAC Address Randomization

Randomization during Wi-Fi scanning is enabled by default, but it may be disabled by adding the following lines to /etc/NetworkManager/NetworkManager.conf or a dedicated configuration file under /etc/NetworkManager/conf.d. This results in a randomly generated MAC address being used when probing for wireless networks.

[device]
wifi.scan-rand-mac-address=no
1

macchanger when first installed gives you the option of automatically changing MAC address with every new connection. since I don't see the option on the --help page I would suggest uninstall and reinstall. The Yes/No option will crop up asking if you want it to randomize etc etc. Just select 'No', you should have smooth sailing from there.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.