https://github.com/halo/LinkLiar
:link: Link-Layer MAC spoofing GUI for macOS
https://github.com/halo/LinkLiar
daemon ethernet gui mac mac-address macos spoof thunderbolt wifi wlan
Last synced: 17 days ago
JSON representation
:link: Link-Layer MAC spoofing GUI for macOS
- Host: GitHub
- URL: https://github.com/halo/LinkLiar
- Owner: halo
- License: mit
- Created: 2012-08-11T10:33:31.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2024-08-13T13:16:03.000Z (8 months ago)
- Last Synced: 2024-10-29T15:34:12.270Z (6 months ago)
- Topics: daemon, ethernet, gui, mac, mac-address, macos, spoof, thunderbolt, wifi, wlan
- Language: Swift
- Homepage: http://halo.github.io/LinkLiar
- Size: 5.1 MB
- Stars: 1,257
- Watchers: 44
- Forks: 84
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
Awesome Lists containing this project
- open-source-mac-os-apps - LinkLiar - Keep your MAC address random for privacy (intuitive GUI for ifconfig) ![swift_icon] (Applications / Menubar)
- Mac-Menubar-Megalist - LinkLiar
- awesome-swift-macos-apps - LinkLiar - Keep your MAC address random for privacy (intuitive GUI for ifconfig) (Menubar / Text)
- awesome-swift-macos-apps - LinkLiar - Keep your MAC address random for privacy (intuitive GUI for ifconfig) (Menubar / Text)
- open-source-mac-os-apps - LinkLiar - Keep your MAC address random for privacy (intuitive GUI for ifconfig)</summary><p><b>Languages:</b> ![swift_icon] <br><b>Website:</b> <a href="https://halo.github.io/LinkLiar/">https://halo.github.io/LinkLiar/</a><br><b>Screenshots:</b><br><img src='https://cdn.jsdelivr.net/gh/halo/LinkLiar@master/docs/screenshot_3.0.1b.svg' width='400' loading='lazy'/><br></p></details> (Applications / 📊 Menubar (38))
README
[](https://github.com/halo/LinkLiar/releases)
[](https://github.com/halo/LinkLiar/blob/master/LICENSE.md)
[](https://github.com/halo/linkliar/issues?q=is%3Aissue+is%3Aclosed)
[](https://github.com/halo/LinkLiar/commits/master)
[](https://github.com/halo/LinkLiar/actions)
[](https://gitter.im/halo/LinkLiar)## Prevent your Mac from leaking MACs
This is an intuitive macOS status menu application written in Swift to help you spoof the MAC addresses of your Wi-Fi and Ethernet interfaces. It is free open-source.
[➡️ How do I install this?](#installation)
If you star this project (by clicking on ✭ in the top-right corner), you help me to prioritize among my open-source projects.

## Requirements
* macOS Sierra (10.12) or later (see [releases](https://github.com/halo/LinkLiar/releases) for older versions).
* Administrator privileges (you will be asked for your root password *once*).## Installation
If you have [Homebrew](https://brew.sh), just run `brew install --cask linkliar`.
To install it manually, follow [these instructions](http://halo.github.io/LinkLiar/installation.html) in the documentation.
## Documentation
What you're looking at right now is the technical documentation.
The end-user documentation is located at [halo.github.io/LinkLiar](http://halo.github.io/LinkLiar).
There is also a source-code documentation in progress, see `bin/docs` for inspiration.
## Limitations/Caveats
* When your Wi-Fi (aka Airport) is turned off, you cannot change its MAC address. You need to turn it on first.
* If you change a MAC address while the interface is connected, you will briefly loose connection.
* If you rapidly close and open your MacBook, the MAC address may change while the Wi-Fi connection remains and you loose the connection (that is, if you have configured LinkLiar to re-randomize the MAC address).
* Whenever you successfully changed your MAC address, your `System Preferences` will still show you the original hardware MAC address.
This is normal behavior and your actual network traffic uses the *new*, *changed* MAC address.
* 2018 MacBooks cannot change their MAC address, [because of a bug in macOS](https://github.com/feross/SpoofMAC/issues/87#issuecomment-485280175).
* As of macOS 12.3 (Monterey), the MAC address of an interface cannot be modified while connected to a network. That's why LinkLiar will disassociate from any connected network before modifying the MAC address.## Troubleshooting
You can create this logfile and whenever it exists, all LinkLiar components will write to it:
```bash
touch "/Library/Application Support/LinkLiar/linkliar.log"
```Delete the log file again to silence logging.
Once LinkLiar is started and the menu is visible, you can hold the Option ⌥ key for advanced options. This is only intended for developers.
If you want a more colorful output, clone this git repository and run `bin/logs`.
That's what I use when I'm debugging.
This utility is also bundled in LinkLiar so you can run it with```bash
# Run this in a Terminal for live debugging logs.
/Applications/LinkLiar.app/Contents/Resources/logs
```## Development

#### HelpBook
To update the HelpBook (end-user documentation), change the *source files* in [LinkLiarHelp/en.lproj](https://github.com/halo/LinkLiar/tree/master/LinkLiarHelp/en.lproj) and *then* generate the output with `bin/docs`.
## Future work
* Add badge with test coverage to README
## Thanks
* The icon in `Link/Images.xcassets` is from [Iconmonstr](http://iconmonstr.com).
## License
MIT 2012-2021 halo. See [MIT-LICENSE](https://github.com/halo/LinkLiar/blob/master/LICENSE.md).