andrew-bibb / cmst

QT GUI for Connman
174 stars 37 forks source link

Add option to spoof/change MAC-addresses of network interfaces before connecting to network #200

Closed EarthlingX closed 4 years ago

EarthlingX commented 5 years ago

Our "competitor" NetworkManager provides a useful option to change network interface MAC-addresses both for WiFi and for Ethernet adapters. Before connecting to the network, NetworkManager will spoof the initial MAC-address with the desired one for each connection.

Would it be possible to implement such a feature to CMST as well?

Thank you very much! :+1:

andrew-bibb commented 5 years ago

The purpose of CMST is to provide a more friendly way to interact with Connman. We don't implement additional features for network configuration. Basically Connman deals with network configuration and we talk to Connman (and we are not affiliated in any way with the Connman project). There is no way I can get in before Connman makes the network connection, Connman makes those connections during boot with a typical install. CMST is not required at all to run Connman. Looking at it from that direction then no, we won't be able to implement it.

One thing to keep in mind is that Connman stores network configuration files based on the mac address of the network interface. These files are in /var/lib/connman should you want to look. If you want to use random mac spoofing then Connman will have to generate a new network profile every time you boot. Probably would not be a huge deal for wired, but I could see it getting very tedious with wifi.

If you want a spoofed address there are two methods described in the Arch Linux wiki. If one of those were scripted Connman should pick up the spoofed connection when you (the script) bring the connection back up. The wiki also describes how to do it automatically with a systemd service file