[HN Gopher] Airpass - easily overcome WiFi time limits
       ___________________________________________________________________
        
       Airpass - easily overcome WiFi time limits
        
       Author : herbertl
       Score  : 209 points
       Date   : 2025-06-18 15:29 UTC (3 days ago)
        
 (HTM) web link (airpass.tiagoalves.me)
 (TXT) w3m dump (airpass.tiagoalves.me)
        
       | cactusplant7374 wrote:
       | Doesn't Mac already have this with rotating MAC addresses? I also
       | ran into an access point that detected this and required me to
       | turn it off to continue.
        
         | myself248 wrote:
         | I wonder how it detected it. Perhaps the randomly-generated
         | ones are mostly in invalid/unassigned MAC space?
        
           | jasongill wrote:
           | There is a "local bit" in MAC addresses per RFC 7042, so MAC
           | addresses that have their second character as E, A, 2 or 6
           | are "local" which effectively means "randomly selected by
           | software". So my current macOS selected MAC address of
           | 16:6a:d2:20:e6:eb is "local" due to the second digit in the
           | address being 6
        
             | boston_clone wrote:
             | I had no idea about this; generally i thought it was done
             | by OUI like the GP suggested - they have a small cached
             | table of valid OUIs and warn on prefixes not in that
             | subset. Thanks for sharing!
        
             | bapak wrote:
             | Oof, I wonder if this is the reason why I constantly have
             | issues with my M1 Mac connecting to cafe hotspots.
             | Regularly I find places that let me connect and then kick
             | me off less than a minute later.
        
       | classichasclass wrote:
       | Alternatively, if you don't want to run the whole Electron app,
       | the money is this line:                 sudo.exec("/System/Librar
       | y/PrivateFrameworks/Apple80211.framework/Versions/Current/Resourc
       | es/airport en0 -z && ifconfig en0 ether `openssl rand -hex 6 |
       | sed 's/\(..\)/\1:/g; s/.$//'`",
        
         | rafram wrote:
         | Why does a Mac-only app that shows a menu bar icon and a
         | notification popup need to be Electron...? That's 30 lines of
         | Swift, max.
        
           | ajsnigrutin wrote:
           | 1) the dev only had a hammer and he nailed the screw in
           | 
           | 2) the dev has 64gigs of ram and a newest CPU and doesn't
           | care about performance issues for people on older
           | computers... that's why you need gigs of ram just to read a
           | weather report online.
        
           | outofpaper wrote:
           | People forget to think about Swift let alone tools like
           | Platypus.
        
           | encom wrote:
           | Because that's all anyone knows, and PC development is dead.
           | 
           | >content-length: 47262814
           | 
           | Sigh...
        
           | SR2Z wrote:
           | If you want a frontend for you app, you probably just use
           | Electron and get it over with in a few minutes instead of
           | digging through the docs for Qt or some other framework.
           | 
           | Is it worth it? Probably not, since this is a single-platform
           | app to start with, but JS+HTML are easy to theme and
           | customize, and Qt is... not quite as simple.
        
             | juancroldan wrote:
             | Now that you can build such an app with AI in under 20
             | minutes with a manageable codebase you can properly
             | understand and control, I don't think that's a good excuse
             | anymore
        
               | paxys wrote:
               | > with a manageable codebase you can properly understand
               | and control
               | 
               | Yeah, that definitely describes every AI codebase I have
               | seen..
        
               | whatevaa wrote:
               | If you don't know the language, how can you properly
               | understand and control it?
        
               | therein wrote:
               | In 2025 you unfortunately just vibe with the code
               | nowadays.
        
             | rafram wrote:
             | Where did you get Qt from? This is, again, a Mac-only app
             | that doesn't even have any windows. It's just a menu bar
             | icon and a notification. That's incredibly simple to build
             | with plain old Cocoa and Swift.
        
               | anthk wrote:
               | Or AppleScript maybe.
        
             | righthand wrote:
             | No one has to dig through electron docs though right? There
             | is nothing simple about an electron app regardless how
             | little logic you personally programmed on top of it.
        
           | jeroenhd wrote:
           | If you don't know Swift, but do know Electron, it's easier to
           | do it in 30 lines of Javascript.
           | 
           | People who don't like the developers work can always write
           | and publish their own application, of course.
        
             | whatevaa wrote:
             | It's hard work writing free stuff for others, much easier
             | to criticise stuff instead of getting your hands dirty.
        
           | palata wrote:
           | Electron is an overkill way to not have to learn how to do
           | stuff properly, if you ask me. And people love not to learn.
        
             | WJW wrote:
             | Send in a PR then?
        
               | ipaddr wrote:
               | A pr that deletes the repo and bans the person from
               | github?
        
               | WJW wrote:
               | No a PR that actually makes the world a better place. Be
               | the change you want to see and all that.
        
           | WJW wrote:
           | Talk is cheap. If it's so easy, I'm sure the author would
           | welcome a PR :)
        
             | CamperBob2 wrote:
             | I mean, these days, you ask an LLM and it spits out code
             | that will, for something this simple, probably work the
             | first time.
        
               | WJW wrote:
               | Should take you no more than 5 minutes then.
        
               | CamperBob2 wrote:
               | Whatever. I'm not the one who used 47 MB to distribute a
               | single line of code.
        
           | thisislife2 wrote:
           | It doesn't need to be - on macOS, it could even just as well
           | have been a simple Xbar Plug-In! ( https://xbarapp.com/ ).
        
             | rafram wrote:
             | Or Alfred script, Raycast plugin, Shortcuts shortcut, shell
             | alias, and the list goes on. There are a lot of decent
             | options; "50+ MB Electron app" is, in my opinion, not one.
        
           | gopher_space wrote:
           | Is ActionScript still a thing on Macs? I feel like that tech
           | was almost criminally overlooked while being the backbone for
           | a lot of processing pipelines back in the day.
        
             | mattl wrote:
             | You mean AppleScript?
        
             | rafram wrote:
             | It (AppleScript) is, and you can actually write JS instead
             | these days, with a criminally underdocumented Objective-C
             | bridge (JXA).
        
               | gopher_space wrote:
               | Ahh thanks! Went down a brief rabbit hole with JXA and
               | had forgotten how opaque Apple is when you're developing
               | for them.
        
         | Alifatisk wrote:
         | I feel like using Electron for such a little thing is way
         | overkill. The newer laptops are very powerful so I don't think
         | anyone would have any performance issues, but on older
         | macbooks, having too many little Electron apps running in the
         | background makes the fan go brrrrrrrr
        
         | hk1337 wrote:
         | What exactly is that doing? Is there some backend limitation
         | for WiFi interfaces that making it think it's Ethernet is
         | faster?
        
           | sodality2 wrote:
           | It just resets the MAC address, making the router believe
           | it's a new device, thus not subject to the "x minute" free
           | WiFi.
        
             | dizhn wrote:
             | That won't circumvent the sms code requirement most free
             | wifi services use.
        
               | catlifeonmars wrote:
               | I have never seen this before
        
               | popularonion wrote:
               | Never seen it in the US, but it was fairly common when I
               | was on vacation in Europe
        
               | dizhn wrote:
               | There's at least one country with laws that say you have
               | to keep track of national ID numbers (and times) if you
               | want to provide wifi service.
        
               | rafram wrote:
               | It's required by law in some countries, and it leads to
               | some very funny chicken-and-egg situations with airport
               | WiFi.
               | 
               | Istanbul Airport added a workaround: a physical passport
               | scanner that stores your info and generates a code as an
               | alternative to SMS verification. The whole thing just
               | feels like a VPN ad.
        
               | rs186 wrote:
               | I think they are extremely rare, and I would rather just
               | use my mobile data instead of giving them my phone
               | number.
               | 
               | Definitely does not happen on "free trials" on in-flight
               | Wi-Fi for obvious reasons.
        
               | dizhn wrote:
               | A now deleted comment reminded me that this is mostly for
               | in-flight wifi where it makes much more sense. Mostly no
               | SMS there either.
        
         | paxys wrote:
         | 200 bytes for the business logic.
         | 
         | 47MB for the UI & boilerplate around the business logic.
         | 
         | I get that this may be the easiest way to develop and publish
         | an application today, but it's sad that this is the direction
         | we have taken in recent years.
        
           | aeonik wrote:
           | Modern app bloat in one analogy:
           | 
           | Business logic size: ~20 bytes Total app size: ~47 MB =
           | 47,000,000 bytes
           | 
           | Bloat factor: 47,000,000 / 20 = 2,350,000
           | 
           | Let's scale this up and say the business logic is 1 pound.
           | 
           | Then the whole app would weigh: 1 lb x 2,350,000 = 2,350,000
           | pounds
           | 
           | What weighs ~2.35 million pounds?                  - A fully
           | loaded Boeing 747-8: ~987,000 lbs          - Another fully
           | loaded 747-8: ~987,000 lbs          - A blue whale: ~330,000
           | lbs
           | 
           | TOTAL: ~2,304,000 lbs
           | 
           | The business logic is like shipping a 1 lb object (a book, a
           | flash drive, whatever) by loading it into _two fully loaded
           | 747s and strapping a blue whale on top._
           | 
           | Just to run 20 bytes of logic.
        
             | WD-42 wrote:
             | This is a cool visualization, thanks.
        
               | aquafox wrote:
               | On a related note: Transporting a human in a car is (in
               | relation to weight and size) like using a standard
               | shopping cart to transport two 1L bottles of water. So
               | the next time you walk through a pedestrian area, imagine
               | everyone carrying a bag would use a shopping cart
               | instead. That would be a huge traffic jam -- exactly like
               | what you see on the road!
        
               | WD-42 wrote:
               | I've been pretty aware of this ever since I became a
               | cyclist. I will ride down to the corner store to pick up
               | a six pack and some chips, throw them in a backpack and
               | ride back. It's easy. I see people driving their cars to
               | do the same thing. All that weight and space for a 6
               | bottles of beer. There is massive waste all around us.
        
               | lostlogin wrote:
               | There is also the time component. Off peak and with a
               | decent sized backpack (change of clothes, laptop, food
               | etc) it takes me the same time to go 6km as it does to
               | drive it.
               | 
               | At peak it's 1/4 to 1/3rd the time.
               | 
               | Cars are slow around town.
        
               | bongodongobob wrote:
               | Those people could be driving from 20 minutes away or on
               | their way home from work, or running other errands or
               | picking kids up from school or any number of things. Good
               | for you though.
        
               | tengwar2 wrote:
               | It's a reasonable solution, but let's not forget that
               | simply walking is often at least as good a solution in
               | many countries.
        
               | sheepscreek wrote:
               | I like your username, and what happened to WD-41?
        
               | d-lisp wrote:
               | Incrementation ?
        
               | WD-42 wrote:
               | It wasn't the correct answer.
        
               | sheepscreek wrote:
               | What was the question?
        
             | paxcoder wrote:
             | While I appreciate criticizing bloat (why are we packing
             | Chromium in every app again?), I would like to warn against
             | watching every "pound". Images, for example, "weigh" a lot
             | more than code but that doesn't mean they don't serve a
             | purpose and add value.
             | 
             | That being said, the fact that quick maths can give you a 6
             | orders of magnitude difference between functional code and
             | the package is probably reason for concern.
        
             | anon7000 wrote:
             | Well, if you COULD ship something across the world on a
             | private 747 with extra features to protect your cargo, and
             | it has nearly no environmental downside and has no
             | meaningful downside vs a smaller airplane... you'd probably
             | do it! There's no incentive in software to get a smaller,
             | more efficient plane, and plenty of incentive to use the
             | big thing for free that has all the extra features
        
               | dented42 wrote:
               | That analogy doesn't really work here. Because there is a
               | downside. It's slow, takes up a ton of memory, lots of
               | disk space...
               | 
               | When you have so many processes on a modern machine
               | competing for resources, when every app chooses to be
               | bloated and slow it really adds up.
        
               | dtech wrote:
               | That is more a tragedy of the commons thing. For each
               | individual app the comparison holds true
        
               | kulahan wrote:
               | Tragedy of the commons or just a really bad industry?
        
               | IgorPartola wrote:
               | And since we do have app stores as gate keepers, this
               | could easily be remedied by the app stores. They wouldn't
               | even have to penalize you. Just put a score on there for
               | app size (and app responsiveness) compared to the median
               | in that category. Put this near the star rating from the
               | reviews. Executives don't generally care that you as an
               | engineer want to reduce an app size by 10% but they
               | really really care about how the app looks on the app
               | stores because that's what they show to people and what
               | they are judged on.
        
               | leptons wrote:
               | It doesn't "take up a ton of memory" and if you think
               | 47MB is "a lot of disk space" then maybe you need a
               | bigger disk. Most laptops have at least 250GB, so this
               | program would take up about 0.0188% of disk space, which
               | is frankly not a lot. I had PDF files way larger than
               | that. And you only need to run it once, you do not need
               | to keep it loaded and running all the time, so it doesn't
               | "take up a ton of memory".
        
               | lostlogin wrote:
               | This is how we have ended up with huge cars and huge
               | houses etc. Storing huge volumes of unneeded junk isn't
               | solved by have more space. Store less junk.
        
               | leptons wrote:
               | You can live however you want to live. I will live
               | however I want to. 47MB is not worth worrying about, at
               | all.
        
               | anonymars wrote:
               | These crappy WiFi portals are known for having ample
               | download speeds too, right?
        
               | BobbyTables2 wrote:
               | 47MB is about 3x the space once required by a widely used
               | commercial graphical operating system. It was even enough
               | to also include Microsoft Word with plenty of space left.
               | 
               | How far we've fallen.
        
               | leptons wrote:
               | You're living in the past. Hard drives are now up to
               | 36TB. Hard drives are always getting bigger. 47MB isn't
               | worth worrying about, at all.
        
               | GTP wrote:
               | > it has nearly no environmental downside and has no
               | meaningful downside
               | 
               | I think this is not the case. E.g., we replace our
               | computers every few years, but not because the new ones
               | can do things that you can't do with your current
               | computer. It's because the software you use to do the
               | same things keeps getting more resource-hungry.
        
               | iknowstuff wrote:
               | Its called externalized cost and its as real in software
               | as it is IRL
        
               | GTP wrote:
               | So the cost _is_ there, it 's just not paid (directly) by
               | the developer. But we all end up paying someone else's
               | externalized cost, included said developer that is paying
               | some other developers' externalized costs.
        
               | lostlogin wrote:
               | > Well, if you COULD ship something across the world on a
               | private 747 with extra features to protect your cargo
               | 
               | Qatar might even give you a plane!
        
               | BobbyTables2 wrote:
               | People usually think that but when it comes to attack
               | surface, change management, upgrade issues, etc --- the
               | extra stuff isn't entirely free...
               | 
               | Upgrades shouldn't ever break things, bugs and
               | vulnerabilities never exist, and Rube-Goldberg machines
               | should work 100% reliably day in and day out.
               | 
               | Unfortunately reality doesn't work that way...
        
             | jofla_net wrote:
             | says more about sociology, really.
        
             | shepherdjerred wrote:
             | How many 747's can the average person fit on the 128GB+
             | smartphone in their pocket?
        
             | BobbyTables2 wrote:
             | Excellent point!
             | 
             | And to top it off, the dual flights and whale would need
             | complex orchestration too!
             | 
             | We just call it Kubernetes...
        
             | foxglacier wrote:
             | Human time is money in software, more analogous to mass in
             | physical goods. So you should calculate the time savings
             | for all the people using the app vs entering the code
             | themselves.
             | 
             | Mass is a nonsense analogy that doesn't reveal anything
             | useful.
        
             | bognition wrote:
             | This is an absurd way to think of this. Following this same
             | train of thoughts for humans:
             | 
             | The business logic for humans is a single reproductive
             | cell.
             | 
             | A single sperm weighs 2.3 x 10^-11 grams. If the average
             | male weighs 75kg the. The bloat ratio for a human male is
             | 3.2x10^15
             | 
             | Getting back to the app there is huge value in not needing
             | to run the command yourself. Sure it's wrapped in a UI that
             | comes with "bloat" but honestly who cares. When was the
             | last time someone needed to worry about hard drive space,
             | when it comes to a 40mb file.
        
               | m11a wrote:
               | Well, the apps often come bundled with a bunch of other
               | stuff. Automatic updates, background workers, telemetry
               | ...
               | 
               | All of which sucks up your compute resources and battery.
               | Repeat for every such little utility app you have on your
               | Mac. Some may implement that random stuff inefficiently
               | (eg very frequent telemetry), which sucks even more. Some
               | of it may even be wrong, vibe coded, or copy pasted.
               | 
               | Personally, puts me off installing random utility apps,
               | even if the single utility would be useful.
        
           | righthand wrote:
           | It's not the easiest way just the most evangelized. A Qt app
           | even would be a few lines of code, but we've done a good job
           | scaring people that learning other languages is bad because
           | we can't ship features fast enough with non-evangelized
           | frameworks.
        
             | anthk wrote:
             | Even TCL/TK would be smaller.
        
               | righthand wrote:
               | Every framework under the sun gives you a `main()` func
               | to call your program code. But if all you've ever used is
               | blogs telling you how to hack together an electron app,
               | you'd probably assume electron was the gold standard for
               | simplicity sake but in reality is the gold standard for
               | Google's sake (and whatever marketing company's).
        
           | mistercow wrote:
           | I keep thinking that this could be solved by just building
           | Electron into the OS as a shared framework so we don't have
           | to have a separate copy for every app, but the more I dig
           | into it, the more I realize I'm just reinventing the web
           | browser.
        
             | mixmastamyk wrote:
             | Tauri: https://tauri.app/
        
             | paxys wrote:
             | You are describing PWAs, but they'll never have the same
             | API access & permissions as a native app.
        
             | thisislife2 wrote:
             | There is something called the "WebView" in all the major
             | platforms. The idea is that it allows you to use the
             | browser engine only for creating the UI. But people
             | complain its not "enough" because it is not the same on all
             | the platform (it is if you use it just for UI), restricts
             | access to some browser APIs (ignoring the fact that the OS
             | often offers the same, even and more APIs) and Javascript
             | (a crappy language for creating software applications).
        
           | lxgr wrote:
           | Wow, they optimized the minimal Electron app down to 47 MB?
        
           | CommenterPerson wrote:
           | Are they doing something additional with the 47MB - 200
           | bytes? Like selling you to the brokers?
        
             | WJW wrote:
             | Not even. It's just overhead.
        
           | ryandrake wrote:
           | I so strongly wish more developers gave even a single shit
           | about this. The current state of desktop app development is
           | truly an embarrassment.
        
           | dbalatero wrote:
           | To be fair, the author didn't make this to impress people
           | with byte optimizations, they probably just wanted to publish
           | an app quickly that is useful, and was familiar enough with
           | Electron or JS to do so.
        
           | thwarted wrote:
           | Those who don't learn /usr/bin are destined to reinvent it,
           | poorly.
        
             | tomrod wrote:
             | What does this mean? I've always understood /usr/bin to be
             | the storage dump for system binaries. Do you see or use it
             | another way?
        
               | GTP wrote:
               | They likely mean that you already have in there all what
               | is needed to change your laptop WiFi card's MAC address,
               | without needing an additional application.
        
           | unixhero wrote:
           | Yes but you need a space station OS (Unix) to enjoy the
           | terseness of 47-200 bytes of business logic.
           | 
           | ps: I love both space stations and Unix
        
         | virtualritz wrote:
         | And you could ask an LLM to whip up the Swift code or whatever
         | to wrap this line into a Dock app etc., if you want that
         | convenience.
        
         | cozzyd wrote:
         | the hilarious thing is it shells out for the random mac...
        
         | tommoor wrote:
         | Nice, added it as a bash alias.                   alias
         | randommac='sudo /System/Library/PrivateFrameworks/Apple80211.fr
         | amework/Versions/Current/Resources/airport en0 -z && sudo
         | ifconfig en0 ether $(openssl rand -hex 6 | sed "s/../&:/g;
         | s/:$//")'
        
           | commandersaki wrote:
           | So I tried this out on macOS 26 and the `airport` command is
           | no longer there.
           | 
           | There is a `airportd.sb` file, which appears to be some
           | permissions based thing in s-expression/LISP. Weird.
           | 
           | Edit: Spun up a macOS 15 VM and I got this:
           | 
           |  _WARNING: The airport command line tool is deprecated and
           | will be removed in a future release._ _For diagnosing Wi-Fi
           | related issues, use the Wireless Diagnostics app or wdutil
           | command line tool._
           | 
           | I guess they weren't kidding.
        
             | bc569a80a344f9c wrote:
             | Looking around briefly, you can replace it with this:
             | 
             | `networksetup -setairportpower en0 on && [... set MAC ...]
             | && networksetup -setairportpower en0 off`
             | 
             | I think it's pretty safe to assume that modern Macs will
             | always have en0 as the WiFi adapter, but if you wanted, you
             | could use `networksetup -listnetworkserviceorder` to find
             | the associated device.
        
               | JonathonW wrote:
               | Modern Macs do not always have en0 as the WiFi adapter
               | (it's en1 on current iMacs and on the Mac Studio; en0 is
               | the ethernet jack).
               | 
               | But you're unlikely to be taking one of the machines that
               | has built-in ethernet to the airport or coffeeshop.
        
               | bc569a80a344f9c wrote:
               | Duh, also true on my Mac Mini. But yeah, "modern Mac
               | laptops" probably makes the statement correct enough and
               | still describes the entire set of targets.
        
             | msdrigg wrote:
             | Airport has been deprecated for a year or two. Here's an
             | article talking about its deprecation and its relatively
             | nonfunctional replacement: wdutil
             | https://www.intuitibits.com/2024/03/14/goodbye-airport/
        
         | 101008 wrote:
         | Wow. Don't you need to pay a Apple license as well to
         | distribute apps in Macs?
        
           | tengwar2 wrote:
           | Not for Mac. MacOS is an open garden: there is an app store;
           | or you can install signed apps (requires Apple cooperation);
           | or you can install unsigned applications. MacOS gives you a
           | nudge to the app store (which has genuine advantages) and a
           | much stronger nudge away from unsigned non-app-store apps,
           | but it is still an open garden. iOS is closed garden, which
           | makes some sense for the security guarantees it can give for
           | financial applications.
        
       | avidiax wrote:
       | I feel this would be more useful as a utility to manage your MAC
       | addresses.
       | 
       | That would let you, for example, clone a MAC address or IP
       | address between your computer and a phone, and maybe
       | automatically resolve contention.
       | 
       | That way, you can split purchased WiFi (such as on a plane)
       | between multiple devices.
        
         | jagged-chisel wrote:
         | That's only going to work on one device at a time. Don't think
         | that your phone and laptop with identically MAC addresses are
         | going to magically share the connection.
        
       | ndgold wrote:
       | Nice little helper friend
        
       | kazinator wrote:
       | This has been an option in Android network settings forever:
       | randomize your MAC. I think it's enabled by default now? It's a
       | basic privacy feature; you can be fingerprinted by your device's
       | MAC.
        
         | netsharc wrote:
         | It's also in the Apple devices, you just have to "forget
         | network" and reconnect for the device to tell the network of
         | its new fake MAC address.
        
         | NoahZuniga wrote:
         | No, this setting randomizes your MAC address between networks,
         | but you keep the same MAC for a specific network. So if you
         | want the network to think you're a new user, you'll need to
         | change this specific network MAC address, and this isn't a
         | setting enabled by default (and oftentimes is not even a
         | setting)
        
           | khimaros wrote:
           | GrapheneOS has per-connection (as an alternative to per-
           | network) randomization which is enabled by default
        
             | rahimnathwani wrote:
             | Android 11 or later allows the choice in Developer Options.
        
         | jck wrote:
         | Yep. Android does this by default, but each ssid gets a
         | randomized MAC which persists. It is still straightforward to
         | trigger a MAC change manually tho. It is useful for privacy but
         | imo useless for the public wifi limits use case since they
         | almost always require an OTP via SMS to log in.
        
           | hhh wrote:
           | you have both options in ios/macos, fixed random mac per
           | ssid, and rotating
        
           | rahimnathwani wrote:
           | For devices running Android 11 or higher, users can enable
           | non-persistent MAC randomization globally for all Wi-Fi
           | networks (that have MAC randomization enabled) through the
           | developer options screen. The option to enable non-persistent
           | MAC randomization for all profiles is found at Settings >
           | Developer Options > Wi-Fi non-persistent MAC randomization.
        
           | matsemann wrote:
           | Could you describe how? Quick searching doesn't show it to be
           | "straightforward" as far as I can find.
        
           | tengwar2 wrote:
           | OTP via SMS: depends on the country. These days it's not very
           | common in the UK. They often ask for an email address, but my
           | experience is that most of the time they don't check it for
           | validity.
        
         | alt227 wrote:
         | How does that work with MAC address conflicts and clashes? I
         | naively thought every MAC address had to be unique.
        
           | diggan wrote:
           | There are like 50 trillion possible addresses, unlikely to
           | clash in one network :)
        
           | BobbyTables2 wrote:
           | They must be unique in a LAN segment. And only the lower 3
           | bytes in a MAC are "unique" as the upper 3 are the vendor ID
           | and relatively fixed.
           | 
           | In practice people put fewer than 256 devices on networks
           | (class C), so they have less than 1/65536 possibility of
           | complete failure. And far less because they have a mix of
           | OUIs.
           | 
           | But yeah, if you put a few hundred or thousand security
           | cameras or other device from a single vendor, all on the same
           | network, conflicts are certainly possible.
           | 
           | MAC conflicts are also a bit nasty to troubleshoot, and less
           | obvious than IP conflicts.
        
       | ammar2 wrote:
       | Glad this feature is built into most modern operating systems
       | these days.
       | 
       | For MacOS (Sequoia+) you can just forget the network and
       | reconnect to get a new MAC address [1].
       | 
       | Android's documentation for if it decides to generate a new
       | address per connection is a little vague [2], but I'm guessing
       | forgetting and reconnecting works as well, you may also need to
       | flip the "Wi-Fi non-persistent MAC randomization" bit in
       | developer settings.
       | 
       | On Windows, flipping the "Random hardware address" switch seems
       | to cause it to generate a new seed/address for me.
       | 
       | [1] https://support.apple.com/en-euro/102509
       | 
       | [2] https://source.android.com/docs/core/connect/wifi-mac-
       | random...
        
         | bapak wrote:
         | I think the rotating address is limited to 3, right? The script
         | here generates one at random.
        
         | km3r wrote:
         | Yeah I had to flip the developer setting toggle, but worked
         | flawlessly for my flight (American Airlines has a watch an ad
         | for 20 minutes of free internet that only works once per MAC)
        
           | fendale wrote:
           | Are you saying that on IOS 18 if you enable developer mode
           | then each time you forgot the network it gets a new Mac? But
           | without developer mode it does not get a new Mac each time
           | you forget it? The Apple docs linked elsewhere in this thread
           | suggest it only gets a new Mac once per 24 hours when you
           | forget the network normally. I'm going on a long boat trip in
           | the next week where this trick might work for me if so!
        
         | lxgr wrote:
         | Per [1], this only works once per 24 hours on new iOS/macOS
         | versions, and only once per two weeks on older ones though.
        
       | glerk wrote:
       | Alternatively, disconnect from the wifi, use this command and
       | reconnect:
       | 
       | sudo ifconfig en0 ether 02:11:22:33:44:55
       | 
       | Just ran into this on icelandair.
        
         | pcl wrote:
         | That'll buy you one new turn of the crank; you'll need to
         | change numbers once every expiration period.
        
           | glerk wrote:
           | Pretty sure the electron app has the same limitation (popover
           | notification says "join the network again for free wifi",
           | besides you wouldn't be able to change the mac address if the
           | network interface were actively in use)
        
       | boston_clone wrote:
       | Can you not manually set your MAC address in the network
       | configuration portion of macOS settings anymore? Does this not
       | accomplish that same task, just with an abstracted layer of
       | "randomness" for address generation? Another commenter already
       | de-bloated the entire application into a bash one-liner
        
         | jagged-chisel wrote:
         | "Randomness" and "one less thing for me to think about"
        
       | crustycoder wrote:
       | On android it can be toggled on If Developer Options are enabled.
        
       | o_____________o wrote:
       | Alternatively for Mac,
       | 
       | https://github.com/halo/LinkLiar
        
         | visiondude wrote:
         | ^ seems like the way to go. open source and more features.
        
       | mannyv wrote:
       | If you really want to screw with these set your MAC address to
       | 00:00:00:00:00:00
       | 
       | It's an illegal address, but most equipment will take it because
       | test devices occasionally come from the factory with that MAC.
       | But higher level stuff might barf on it because it's technically
       | illegal.
        
       | polivier wrote:
       | On Linux you can use `macchanger` to change your MAC address from
       | the terminal.
        
       | purplehat_ wrote:
       | Here's an equivalent little script for Debian Linux (but should
       | work on most distros), based on classhasclass's comment:
       | NEW_MAC=$(printf '02:%02x:%02x:%02x:%02x:%02x\n' $((RANDOM%256))
       | $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)))
       | sudo ip link set wlan0 down            sudo ip link set wlan0
       | address "$NEW_MAC"            sudo ip link set wlan0 up
       | 
       | You should replace `wlan0` with whatever you see in `ip link
       | show` for your wireless interface, for me it is `wlp0s20f3`. I
       | replaced the `openssl rand` command because it was generating
       | some invalid MACs; this is hopefully only valid ones.
        
         | righthand wrote:
         | KDE Plasma has a "Random" button next to the MAC address field
         | in the Network Manager UI. I'm on Debian Testing so not sure
         | when it was added.
        
       | netik wrote:
       | The trivial defense against this is time limited passwords for
       | Wifi access. Deny all access until a valid password is entered,
       | only permit that password and MAC address pair for n minutes.
       | 
       | Buy a coffee, get a new password, etc.
        
         | pimlottc wrote:
         | On a technical level it's trivial, but you're taking about
         | having a shop replace their wifi router and/or update firmware,
         | create some way for staff to see the current password and/or
         | integrate with POS systems to print it on the receipt, update
         | signage, etc. Hardly trivial for the average non-techie
         | business owner.
        
         | reaperducer wrote:
         | So "trivial" that this is how it was done years ago, but then
         | coffee shops gave up on it because it turned it not to be so
         | trivial after all.
         | 
         | Their employees' time is more effectively spent making coffee
         | than repeatedly providing low-level tech support for random
         | password problems.
        
       | nixpulvis wrote:
       | I used to use this little macOS script at coffee shops.
       | 
       | https://gist.github.com/nixpulvis/d83c0ae70a4c3a06797b
        
       | deadbabe wrote:
       | This is so unethical and no one gives a fuck, society crumbles
       | when people just feel entitled to take more than their fair
       | share.
        
         | chrisfosterelli wrote:
         | This is hacker news. Hacker ethos is rooted in the intellectual
         | challenge of overcoming software systems and electronic
         | hardware. It's the same ethos that stole long distance phone
         | minutes, traded warez, and got free satellite channels. You
         | don't have to do those things but you probably won't convince
         | those who do that their 20 extra minutes of wifi will be the
         | downfall of society.
        
       | vachina wrote:
       | I used to strap 20 virtual eths to my Linux box because my dorm
       | gave only like 512kbps per account, and then aggregated the 20
       | interfaces.
        
         | xrisk wrote:
         | How was the auth done? And for that matter what logic did the
         | traffic shaping use?
        
       | deanc wrote:
       | A few years ago I saw a tip somewhere here on how to scan which
       | MAC addresses are connected to nearby wifi and hijack their mac
       | address and steal their internet connection.
        
       | balls187 wrote:
       | Haven't ever encountered any place that had a wifi time limit. In
       | the late 2000's internet cafes had time limits but that was
       | enforced on their own devices.
       | 
       | Is there a specific scenario where time limited wifi is common
       | place?
        
         | mcshicks wrote:
         | I think the name refers to the limits some airlines have. JAL
         | for instance offers one hour free on some flights.
        
           | andy99 wrote:
           | I was trying to understand how this could be used for
           | flights. I've seen either having to enter your last name and
           | seat, or loyalty plan number to get in-flight wifi. Are there
           | really airline wifis that give every mac address a free
           | amount of time?
           | 
           | A lot of airlines now offer free "messaging" - usually just
           | text on common messaging apps like WhatsApp. I've been
           | meaning for years to write some kind of server that could
           | give me useful functionality over chat messages.
        
             | mcshicks wrote:
             | Pretty sure it will work on JAL at least right now. They
             | just asked for an email. But it was also a new service so
             | maybe to wanted people to try it. It occurred to me at the
             | time that two devices with two emails should work for twice
             | as long. For what I wanted to do on that flight, i.e. check
             | and send a few messages the one free hour was fine. But
             | yeah of course they could change it so that would not work.
        
         | josu wrote:
         | Airplanes. Some airlines offer 30 minutes of free wifi or
         | something.
        
       | caioluders wrote:
       | Some python that clones other people mac + random
       | https://github.com/caioluders/mac_auto_cloner
        
       | lrvick wrote:
       | Solved problem on linux for decades:
       | 
       | https://gothub.dev.projectsegfau.lt/alobbs/macchanger
        
       | ClawsOnPaws wrote:
       | Since this is only available for mac, couldn't this fairly easily
       | be solved with shortcuts?
        
       | johnebgd wrote:
       | Reminds me of Perfigo Smart Access before Cisco bought them.
       | Network security with a MAC address whitelist. If you knew a
       | whitelisted computer you'd have the same access it permitted.
       | This was back before captive portal took off...
        
       | satellite2 wrote:
       | Fantastic. Now we're promoting script kiddies scamming airlines.
       | That's a new low for hn
        
       | Beijinger wrote:
       | Like macchanger under Linux since 20 years? Must be cool to have
       | an Apple I guess.
        
       | tptacek wrote:
       | Or you could just comply with the terms you tacitly agree to when
       | using these services. Use this stuff or don't, but if you do, you
       | don't get to complain about GPL infringement anymore.
        
       ___________________________________________________________________
       (page generated 2025-06-21 23:00 UTC)