when someone abandons you,it is him that gets loss because he lost someone who truly loves him but you just lost one who doesn’t love you.
当下只要有个 Wi-Fi,你就有了全世界。但现在的 Wi-Fi 尤其是公共 Wi-Fi,大多不会是靠着善心发射的,基本都是各怀鬼胎,每张网卡都对应唯一的 MAC 地址,通过它,Wi-Fi 背后的 “阴谋家们” 可以追踪你的设备顺便也追踪了你
下面就来看一下避免被追踪的一个思路,因为固定的 MAC 地址能被轻易地追踪到,所以应该定时进行更换,随机的 MAC 地址是一个好的方法,由于 MAC 地址一般只在局域网内使用,因此随机的 MAC 地址也不大会产生冲突。至于实现,在 debian 上可以直接用 NetworkManager 自带的功能实现
NetworkManager 简介
NM 由一个管理系统网络连接、并且将其状态通过 D-BUS(一个提供简单的应用程序互相通讯的途径的自由软件项目,它是做为 freedesktoporg 项目的一部分来开发的)进行报告的后台服务,以及一个允许用户管理网络连接的客户端程序
NetworkManager 优点
简化网络连接的工作,让桌面本身和其他应用程序能感知网络
NetworkManager 新版本的改进和新功能
新版本支持更多的的网络设备。从 0.8.1 开始增加了用于 GSM、UMTS 和 CDMA 卡等移动宽带设备ModemManager的支持。使用 ModemManager也有新的功能,比如信号强度显示和选择2G/3G模式的功能。还可以关掉漫游功能以避免产生额外的连接费用
0.8.1 后还支持使用蓝牙,不仅支持个人区域网络 (PAN) 上网,也支持老的蓝牙拨号网络 (DUN) 协议。所有(或者说最多)支持的设备可以在 wiki 上找到
支持 IPv6 的自动配置和静态 IP,新版本还会带来 IPv6 的 DHCP 支持
增强设备以及协议的支持,最新版有一个全新的漂亮的客户端界面
有自己的CLI工具:nmcli,使用 nmcli 用户可以查询网络连接的状态,也可以用来管理。优点:原始,语法相对简单,容易掌握
介绍完开始通过配置 NetworkManager 来实现随机 MAC 地址吧
要将随机的 MAC 地址默认地用于所有的 Wi-Fi 连接,需要创建 /etc/NetworkManager/conf.d/00-macrandomize.conf 这个文件:
1 | [device] |
重启 NetworkManager
验证,使用 ip link 命令可以查看当前的 MAC 地址
那什么时候不能随机化 MAC 地址呢?
在某些情况下确实需要能被追踪到。例如在家用网络中,可能需要将路由器配置为对电脑分配一致的 IP 地址以进行端口转发;再例如公司的雇主可能需要根据 MAC 地址来提供 Wi-Fi 服务,这时候就需要进行追踪
使用 nmcli 查看 NetworkManager 连接并显示当前设置:
1
2
3
4
5
6
7
8
9
10
11
12
$ nmcli c | grep wifi
Amtrak_WiFi 5f4b9f75-9e41-47f8-8bac-25dae779cd87 wifi –
StaplesHotspot de57940c-32c2-468b-8f96-0a3b9a9b0a5e wifi –
MyHome e8c79829-1848-4563-8e44-466e14a3223d wifi wlp1s0
$ nmcli c show 5f4b9f75-9e41-47f8-8bac-25dae779cd87 | grep cloned
802-11-wireless.cloned-mac-address: –
$ nmcli c show e8c79829-1848-4563-8e44-466e14a3223d | grep cloned
802-11-wireless.cloned-mac-address: stable
# 上述例子在 Amtrak 使用完全随机 MAC 地址(使用默认配置)和 MyHome 的永久 MAC 地址(使用 stable 配置)。永久 MAC 地址是在硬件生产的时候分配到网络接口上的,网络管理员能够根据永久 MAC 地址来查看 设备的制造商 ID
更改配置并重新连接活动的接口:
1
2
3
4
5
6
7
8
9
$ nmcli c modify 5f4b9f75-9e41-47f8-8bac-25dae779cd87 802-11-wireless.cloned-mac-address random
$ nmcli c modify e8c79829-1848-4563-8e44-466e14a3223d 802-11-wireless.cloned-mac-address permanent
$ nmcli c down e8c79829-1848-4563-8e44-466e14a3223d
$ nmcli c up e8c79829-1848-4563-8e44-466e14a3223d
$ ip link
either I will find a way, or I will make one.