12 ms·
Recent Apple updates leading to WiFi issues?
- mkw5053 4y agoI really hope this fixes my WiFi issues
- lapcat 4y ago> Note: if you opt to not use the script and want to use the UI, you have to disable both Bluetooth and AirDrop. Periodic reminder that Apple re-enables Bluetooth on every OS update: https://lapcatsoftware.com/articles/bluetooth.html https://lapcatsoftware.com/articles/bluetooth.html
- soziawa 4y agoIt also resets custom DNS settings for all networks.
- bink 4y agoPlease don't recommend people pipe curl output to a shell. Yikes.
- efficax 4y agoeh it's fine. sure, technically speaking you're giving your machine over to whoever wrote that script. they could do anything! but actually, the script is usually useful and safe. Like this one.
- lxgr 4y agoYou know that, I know that, but the thousands of people getting desensitized and trained to run random terminal commands like this to "fix their wi-fi" usually don't. The problem isn't even pasting curl output into sh – it's instructing non-technical users to run any terminal commands, in my opinion.
- more_corn 4y agoI’d be happy to point them to the UI for disabling awdl0. Let me know when you find it.
- saagarjha 4y agoI took a peek at the script and I don’t think I want anyone who writes code like that coming anywhere near my machine if I can help it.
- more_corn 4y agoHeh, yeah.
- datalopers 4y agoWait until you find out nearly every modern package manager installs stuff directly from github repos.
- johnklos 4y agoNope. See pkgsrc.
- RulerOf 4y agoI see this a lot and it really rubs me the wrong way, but it makes a lot of sense from a usability standpoint. I started pointing directly at the full commit SHA of the version I want to use when pointing dependencies at Github repos, as I have some naïve belief that it'll offer me a reasonable level of protection from the malicious takeover of a repo.
- sneak 4y agoDocker tags (imagename:tag) aren't cryptographically secure and can be replaced by the server at any time if you aren't using imagename@sha256:<hash> format.
- rrauenza 4y agoHow did piping shell scripts from web sites become acceptable? > bash <(curl -sL https://www.meter.com/awdl.sh https://www.meter.com/awdl.sh) Eek!
- secabeen 4y agoIt's really common in the Mac world, homebrew does it too: https://brew.sh/ https://brew.sh/
- btgeekboy 4y agoWhat could someone do with a curl pipe that they couldn’t do with a signed, obfuscated executable?
- varenc 4y agoTheir actual solution for disabling AWDL is running this script in the background: while true; do if ifconfig awdl0 |grep -q "<UP"; then (set -x; ifconfig awdl0 down) fi sleep 1 done That just checks the awld0 interface every second and turns it off if it's on. Apple really doesn't offer any other way to disable awdl? Note that setting AirDrop to "No One" doesn't fully disable awdl. It's used for other things like screen sharing, AirPlay, bonjour device/service discovery, etc. Though perhaps disabling AirPlay is enough to stop the WiFi issues. You can sniff awdl traffic with `sudo tcpdump -i awdl0`
- mrtesthah 4y agoYou might also try something like: sudo /usr/libexec/airportd en0 prefs AWDLEnabled=YES (Edit: see varenc's reply below) Or you could create a kext (using deprecated KPIs) that continuously blocks the interface from coming up: errno_t awdlblock_ioctl_handler(void *cookie, ifnet_t interface, protocol_family_t protocol, unsigned long ioctl_cmd, void *ioctl_arg) { if (SIOCSIFFLAGS == ioctl_cmd) { struct ifreq *ifr = (struct ifreq*)ioctl_arg; if (ifr && ((ifr->ifr_flags) & IFF_UP) != 0) { return EJUSTRETURN; } } return ENOTSUP; } kern_return_t awdlblock_start(kmod_info_t * ki, void *d) { struct iff_filter filter = { 0 }; errno_t err = ifnet_find_by_name("awdl0", &p_ifnet); if (err) { printf("interface awdl0 not found\n"); return KERN_SUCCESS; } filter.iff_name = "AWDLBlock"; filter.iff_ioctl = awdlblock_ioctl_handler; iflt_attach(p_ifnet, &filter, &p_filter); return KERN_SUCCESS; }
- varenc 4y agoWow I didn't know about that undocumented ability to change Airport prefs! I was able to somewhat disable AWDL by doing this like you suggest: sudo /usr/libexec/airportd en0 prefs AWDLEnabled=YES And then restarting airportd so that it picks up the change: sudo launchctl kickstart -k system/com.apple.airportd This worked without having to disable SIP and modify com.apple.airportd.plist It doesn't take the awdl0 interface down, and I still see some traffic on it, but I can confirm that it disables some awdl features like "Unlock with Watch" and Screen Sharing over awdl. (Screen Sharing will work over your wifi network instead, but normally it'll prefer a direct awdl link)
- snarf21 4y agoI really really really wish that Apple would always use DHCP and get an open IP instead of assuming their last one is still good just so they can say they connect to WiFi 100 ms faster than anyone else. It is so infuriating and causes all the devices in my house to fight for their rightful slot.
- tristor 4y agoIs this true? I hadn't even noticed, because I assign every device a static DHCP assignment so I can categorize devices numerically. That is really messed up, and akin to what Google does with TCP/HTTP for connections to google.com in order to ensure it gets first byte faster. Companies are doing all sorts of "performance hacks" that just straight our break standards, and therefore break interop. I know for Apple devices I had to disable some standardize WiFi functionality on my access points because these devices cannot handle it despite claiming to support the standard.
- lilyball 4y agoApple isn't breaking a standard. If the IP address was reassigned to another device it'll just get told that upon attempting to use it.
- rkeene2 4y agoThe alleged violation is using the IP after the lease expires and before the issuance of a new lease. I don't know if that's true, since most DHCP clients request a new IP long before their lease expires to avoid this.
- lilyball 4y agoWhy are they fighting? Why is your router aggressively reusing the IPs as soon as the lease expires? In my house, all of my devices end up with pretty stable IPs (even non-Apple ones) and I haven't done anything special to configure this. I assume my router holds onto previously-assigned IPs in case the device comes back as long as there's still unassigned IPs available to give out to new devices, though I haven't investigated it.
- acdha 4y agoAny idea what the trigger is? This doesn’t happen normally so I’m wondering whether there some relationship with the vendor UCLA uses or some other network condition.
- more_corn 4y agoLots of people in close proximity seemed to be the trigger for my terrible experience with this last week (talking several hundred sitting in desks next to each other)
- acdha 4y agoInteresting, I wonder if that’s telling you some kind of error handling edge case
- anilv 4y agoA previous commenter had this replicated live a few months ago: https://news.ycombinator.com/item?id=31706738 https://news.ycombinator.com/item?id=31706738 – in the video you can see how it’s triggered.
- runxel 4y agoHad big issues with Zoom today indeed – for how long has this bug existed? I'm still on Monterey but have not yet updated to 12.6.1.
- LeoPanthera 4y agoI (used to) work in academic IT and I hate articles like this. People would assume there is a serious problem, turn off a bunch of services, run a bunch of random-ass shell scripts, and then forget that they'd done all that and at some random point in the future discover that some feature wasn't working, and blame me.
- lxgr 4y agoCouldn't have said it better. That script will be hanging around on people's laptops for years, if not decades (for people that migrate their macOS installations to new machines) at the end of the long tail.
- jcynix 4y agoI mostly agree. But the article isn't the main problem, the sloppy script is. When I install such hot fixes, I have them check if the cause still exists (e.g. still running under Monterey?) and, additionally, add a timeout based on a date.
- more_corn 4y agoIf you simply disable the nic apple helpfully reenables it 15 min later. There’s blame to be assigned here. Pretty sure it belongs to apple.
- bin_bash 4y agodon't forget all the cargo-cult of people stumbling on this article with unrelated wifi issues!
- TeMPOraL 4y agoIncluding all the tech-savvy computer people with decades of experience, who figure the modern hardware and software has so many complex interactions that it's often better to try any plausibly looking solutions first, and only then figure out why it worked (or revert it if it didn't).
- more_corn 4y ago
- nighthawk454 4y agodoes this impact iOS wifi as well? My local HomeAssistant detects my phone on wifi for presence detection, and suddenly lately it's been all out of whack. it takes much longer to connect to wifi when I get home. and sometimes while home the presence status 'flickers', turning all the lights on/off. never used to happen
- drdaeman 4y agoCould be. I've noticed my iPhone started to accidentally intermittently lose WiFi connection, only to reconnect again in ~3-5 seconds. I wasn't sure if this is iOS or UniFi AP bug, but I suppose it could be the former.
- nighthawk454 4y agoAs it happens, I'm also on a Unifi AP, so that's curious. Would not hesitate to assign blame there... Although, I have long since abandoned their automatic firmware updates which has really helped with stability, so I'm not sure what would've changed on the AP _recently_.
- whatthesmack 4y agoTo add anecdata, I've been seeing the subject behavior on Meraki equipment across various firmware versions. I'm inclined to think this is an Apple-initiated issue.
- diebeforei485 4y agoYes. It impacts iOS / iPadOS as well.
- anilv 4y agoYes, it does impact iOS and iPadOS too.
- johnklos 4y agoThat is absolutely the WRONG way to do this. You want people to download a shell script that then downloads another shell script, then runs that shell script via sudo? That second shell script could be changed at any time.
- moffatman 4y agoI found just disabling these kind of Wi-Fi direct / local sharing features on macOS solved some latency I was seeing during online games. For example: Universal Control when enabled would cause the connection to choke for a few seconds when waking my iPad nearby.
- anilv 4y agoWe discovered that this very same, oddly specific advice was given in many places for gaming, like in Google Stadia’s troubleshooting page : https://support.google.com/stadia/answer/9595943?hl=en#zippy=%2Cmac-and-ios-troubleshooting https://support.google.com/stadia/answer/9595943?hl=en#zippy...
- macshome 4y agoI really don’t like that the page asks users to blindly curl and execute a script that then curl and executes another script all to run a one line `ifconfig` command. Why not just share the command?
- system2 4y agowhile true; do if ifconfig awdl0 |grep -q "<UP"; then (set -x; ifconfig awdl0 down) fi sleep 1 done ---------------- LOL
- IfOnlyYouKnew 4y agoI thought we’d gotten over this thing where people thing they appear smart because they copy & paste instead of using curl?
- clysm 4y agoIt's not about being "smart". It's a completely unnecessary complication in this case.
- more_corn 4y agoAnd a complication that is bad practice because a malicious party can detect the blind handoff to shell and serve malware. e.g. wget file.sh ; vi file.sh and you get safe code curl file.sh | bash and you get malware. This attack requires a malicious server, but it’s still bad practice.
- solomatov 4y agoGood to see that it's on the apple side and not on the side of my router configuration. It's really frustrating, and I have it several times a day. Though, I wouldn't use their solution with the script.
- LASR 4y agoI’ve been noticing this for a while. Both my laptop and my wife’s have this problem. Both are M1. Both our iPhones seem to have similar issues. I went mad trying to figure it out with my router/APs etc. I was certain there is no way it could be Apple’s issue. But in hindsight this makes sense. Especially so, if Apple is sharing some driver logic between M1 laptops and A16 SOCs on the phones. Edit: I want to add that this most-noticably manifested as websites loading incompletely. Looking at the network tab, this would show some HTTP requests fail even before establishing a connection. Other requests were fine. So most sites were broken, or don't render correctly without css. Restart was the only fix.
- saagarjha 4y agoAWDL steals time from your Wi-Fi connection; it doesn’t drop requests.
- brookst 4y agoMore specifically, it tells your router to hold packets for a few milliseconds while it switches to another channel, then switches back and signals to resume sending. Unless you are saturating your wifi network from a single apple device this should nit be an issue. AWDL has been around since, what, 2014? There may be new bugs but it’s hard to believe the principle stopped working as wifi got faster.
- jetsnoc 4y agoI stream at a pretty high bandwidth a remote system for gaming. I noticed this immediately. I disabled location sharing and it got a little better. I noticed that everytime my spouse started using his iPhone or opened his M2 Air to do something that my game stream seized. I guessed at something like this being the issue and disabled Airdrop. The problem immediately went away. I cursed about software quality in 2022 but also had a "HugOps" moment where, ... I get it. This stuff is hard stuff and most of the time I don't experience serious defects like this after upgrading OS X. I still have an issue every now again and for whatever reason a reboot addresses it. I will ifconfig down the interface next time. I suspect that will resolve it.
- chazeon 4y agoI do encounter weird Wi-Fi issues on my M1 Pro MacBook Pro. Not sure if it is related to this bug. Sometimes I am just unable to load any web pages, but I can ping those sites. I have to reboot it regularly to reconnect to the internet. The issue is most likely to occur after waking from sleep. The issue is so bad that I have to fall back to a Hackintosh at home. I originally was using an Intel-based WiFi card is great; later, I switched to a Broadcom card to enable handoff / AirDrop / AirPlay. After switching, it seems to degrade internet stability. The symptom seems like it has something to do with awdl0, so it might get helped from the post. All my Windows computers work with no issues on the same network. I followed some instructions online to change the MTU [1] it seems to fix the issue somewhat. [1]: https://apple.stackexchange.com/questions/177873/full-wi-fi-ethernet-signal-but-no-internet https://apple.stackexchange.com/questions/177873/full-wi-fi-...
- saagarjha 4y agoHave you tried seeing if it connects in another browser?
- chazeon 4y agoYes, none of the browser works.
- jrmg 4y agoThis symptom was occurring to me because I was on a network with a Pi-Hole, had Safari's "Hide IP address from trackers" on (which I think uses the iCloud Private Relay to get some resources usually delivered by CDNs that track), but the Pi-Hole was configured with the 'BLOCK_ICLOUD_PR' option on. Safari would just hand when it attempted to get those resources.
- SkyPuncher 4y agoI use to get that issue a few years ago. Drove me up the wall.
- TeMPOraL 4y ago> Sometimes I am just unable to load any web pages, but I can ping those sites. I have to reboot it regularly to reconnect to the internet. The issue is most likely to occur after waking from sleep. I had that issue quite regularly on Windows and Linux back in the day, never figured out what the cause was.
- nchase 4y agoI believe that the issue is real, but this article suggests a mind-bogglingly unsafe solution. The steps include downloading a remote script, then entering the password of a privileged user. Goodness, it would be a shame if someone were to change the contents of that remote script.
- anilv 4y agoWe have updated our post to make it easy to see the full source of the script involved, and we welcome PRs at https://github.com/meterup/awdl_wifi_scripts https://github.com/meterup/awdl_wifi_scripts. We provide the curl command out of convenience, but we understand the trust that someone places in us when using this method. We’re also finding that IT teams are leveraging this script with tools like JAMF to address this for all of their company’s devices at once.
- dkaplan 4y agoI had this issue today. Bandwidth was degraded to 1mbps download until I switched off Bluetooth. Repeated multiple times to ensure BT was the interference. Then switching Wi-Fi to channel 11 seemed to stop interference and I had no problems after that.
- system2 4y agoHoho, script in a script to run ifconfig only. Final reads this: while true; do if ifconfig awdl0 |grep -q "<UP"; then (set -x; ifconfig awdl0 down) fi sleep 1 done
- PakG1 4y agoI was the IT manager for an all-Apple school, had just joined in 2014. First time overseeing that many users. New macOS and iOS versions came out. Hey guys, everyone can update! New versions out! Cool beans! For half a year, it was WiFi and AirDrop hell. Update after update, it didn't matter, the issues were not being fixed. Finally, whichever update it was, fixed it 6 months later. I referred to it as the WiFi Apocalypse of 2014. After that, I always emailed everyone at the beginning of the school year to not install new versions of macOS and iOS when they came out. I would say that if they went against my recommendations and installed anyway, no guarantee that we'd be able to fix any problems they had, and this was their warning, so no complaining. I would usually send an email about half a year later saying that people can update now if they like. I didn't care whether or not it looked fine within the first month or so. Never again. The WiFi Apocalypse of 2014 was hell. It's weird that this situation seems to be repeating itself.
- MrBuddyCasino 4y agoApple really should just add a 2nd wifi hardware for these background tasks, a similar issue occurs when the location service enumerates local wifi networks, leading to stutter and freezes while streaming real-time video. A cheap one would do.
- prashantv 4y agoI'm glad Meter published this post as I've been fighting this issue for the last couple of weeks and wasn't able to find much information on the root cause. I started getting packet loss recently, and after being unable to find the cause, I tried upgrading my router. That somehow made things worse -- rather than intermittent packet loss, it would get into a completely unavailable state and not recover. I couldn't even switch to other networks without restarting wifi. This affected multiple M1 machines and an iPhone, so I was quite sure it was an Apple issue, but wasn't able to find the root-cause. After some limited testing, I'm pretty sure this issue caused both my intermittent packet loss as well as complete downtime.
- winReInstall 4y agoAnyone remember the surface having problems with Bluetooth and Wifi running, when the power docking was attached.
- guenthert 4y ago"Why isn't this happening at my home? Unlike at home, in a commercial (office, warehouse, lab) environment there are many more demands placed on a Mac device’s WiFi radio as it is getting many more passive connection requests from other devices using the AWDL protocol. The more Apple devices you have on a network, the worse this issue gets." Well, it might not happen to those rich Apple developers living in their mansions. It sure does happen to us plebes living in apartment complexes. Years ago my ThinkPad found 70 (!) WiFi networks next to me. AWDL is a nightmare here.
- tbrownio 4y agoI've been working out of WeWork in SF and wifi as been completely unusable for the past week. It's been super frustrating to debug because some people have been able to connect totally okay. Now that I know this is an issue mainly introduced my Apple on their silicon machines, I have some apologies to make to the WeWork staff.