[HN Gopher] WiFi without internet on a Southwest flight
       ___________________________________________________________________
        
       WiFi without internet on a Southwest flight
        
       Author : jamesbvaughan
       Score  : 887 points
       Date   : 2023-09-28 15:42 UTC (7 hours ago)
        
 (HTM) web link (jamesbvaughan.com)
 (TXT) w3m dump (jamesbvaughan.com)
        
       | pogue wrote:
       | What browser or extension has Copy as cURL and all those other
       | functions?
        
         | idbehold wrote:
         | Firefox
        
         | system2 wrote:
         | Inspect element (F12) > Network tab > when you refresh the
         | screen check the header section to see the raw data. You can
         | right click and copy curl or xor.
        
         | jamesbvaughan wrote:
         | All chromium-based browsers have it in the network tab of the
         | dev tools
        
         | [deleted]
        
         | isodev wrote:
         | Safari has it out of the box in the web inspector.
        
         | alana314 wrote:
         | chrome
        
       | api wrote:
       | Fun fact: ZeroTier works in most cases on in-flight wifi without
       | logging in. I guess they usually allow UDP.
        
         | TurkishPoptart wrote:
         | Is this for connecting to a home device without paying for
         | wifi?
        
       | javier_e06 wrote:
       | Fun fact: I used to work for a company that provided equipment
       | and services for satcom. The price tier and license for airborne
       | communication was higher and we had software calculating the
       | speed and if the speed went over 300 m/hr or alike it will check
       | your license features and expiration date. If you forgot to pay
       | your bill, no wifi for ya! We did not use altitude for obvious
       | reasons.
        
       | macinjosh wrote:
       | Pretty sure all these hacks and tips for getting free Wi-Fi
       | aren't actually very legal. Sure the chances of getting caught
       | are small, but you are also stealing connectivity someone else
       | paid for by spoofing their mac address. Something, something,
       | mucking about with an airliner even if its just the wifi could
       | probably be twisted into some sort of federal aviation offense
       | too.
        
       | SirMaster wrote:
       | I want to see someone build a proxy that uses the free iMessage
       | or WhatsApp allowed connection to send arbitrary data.
       | 
       | Like have a WhatsApp relay set up at home that you are sending
       | messages to and from, from the plane.
       | 
       | Like at a most basic level, send a message of a URL to your home
       | WhatsApp which loads the web page there, and sends the HTML back
       | as a WhatApp message reply so you can render it etc.
       | 
       | Wonder what someone could all do and make work.
       | 
       |  _edit_ Guess someone made a TCP relay using WhatApp already,
       | neat.
        
         | youens wrote:
         | I happened to have had a flight a day or two after the first
         | beta of Apple's Private Relay a year or two ago. I was able to
         | use free WiFi the entire flight. Presumably because whatever
         | they whitelisted for iMessage and/or push notifications covered
         | that as well. They had blocked it before my return flight days
         | later. -\\_(tsu)_/-
        
         | jackconsidine wrote:
         | I see you found that TCP relay- I've been dying to try it but
         | I've heard of people successfully using it
         | 
         | https://github.com/aleixrodriala/wa-tunnel
        
         | darknavi wrote:
         | https://github.com/aleixrodriala/wa-tunnel
        
         | vzqx wrote:
         | I've noticed that airline wifi doesn't block DNS traffic. You
         | can likely accomplish the same thing with a DNS tunnel like
         | Iodine (https://github.com/yarrick/iodine).
        
           | lazycouchpotato wrote:
           | Many years ago, I noticed I could browse the Google Play
           | Store on a flight WiFi without paying for it. No images would
           | load and no apps would download, but I could browse through
           | app listings and read reviews.
           | 
           | Would this be related to DNS?
        
             | owl57 wrote:
             | Probably not. I bet something in Android didn't work
             | properly until they whitelisted some Google domains -- for
             | example, maybe it didn't detect the Internet connection
             | when the user paid for it, or maybe something on the
             | entertainment tablets broke (I don't know if they usually
             | run Android or something else).
        
           | bombcar wrote:
           | Sometimes they just redirect ALL DNS traffic to their little
           | portal until you sign in/up.
        
       | munro wrote:
       | I've always wanted to bring a lil router like a GL.iNet, pay for
       | internet, then share it free for everyone on the plane hehe
        
         | nunez wrote:
         | This is how we get aircraft wifi with Meraki Air Marshall-like
         | DDoS [0] for hotspots. Don't ruin it for us!
         | 
         | [0] https://documentation.meraki.com/MR/Monitoring_and_Reportin
         | g.... This basically detects any access points in a wireless
         | network repeating a signal and automatically boots them. only
         | works on 2.4GHz networks if I understand correctly.
        
           | ilyt wrote:
           | ... wouldn't that be a type of jamming and therefore illegal
           | ?
        
         | mike_d wrote:
         | I used to do this on long flights, but most in flight providers
         | have stopped trying to identify and shape specific protocols
         | and now limit bandwidth purely by client. If you get a few
         | people on all at once it thinks you are streaming video and
         | throttles you.
        
         | josu wrote:
         | Why not just use the hotspot on your phone?
        
           | MostlyStable wrote:
           | I believe that you can't both simultaneously provide wifi
           | hotspot and use wifi internet (at least, I couldn't on a
           | phone several years ago last time I tried it). I think you
           | can only do that if the network the phone is using is
           | accessed via the cellular modem.
        
             | Eavolution wrote:
             | I absolutely can, that's how I connect my ps4 to my uni
             | accommodation internet as it's mschapv2 or smth the ps4
             | can't connect to. I know it's definitely using the wifi and
             | not my mobile data as my data usage for the day is
             | unchanged after I've downloaded a game.
             | 
             | Cheap Chinese android phone from 2020 (or maybe 2021 can't
             | remember).
        
             | pests wrote:
             | That used to be the case but it has changed now. Probably
             | depends on the phone broadband chipset used.
             | 
             | These days you can passthru your WiFi or even a wired
             | connection (via USB to a connected PC or a Ethernet-to-USB
             | adapter) via a Hotspot.
        
             | ikjasdlk2234 wrote:
             | You can on Android, and have for some time IIRC. This is
             | how I get free wifi on my computer by passing it through my
             | T-Mobile phone.
        
             | mbesto wrote:
             | Correct. My GL-E750 Mudi has a repeater function:
             | 
             | https://docs.gl-
             | inet.com/router/en/3/setup/gl-e750/internet/...
             | 
             | My iPhone does not.
        
       | yread wrote:
       | We messed around on a recent KLM flight and what's interesting is
       | that you get a DNS prefix of klm.com in DHCP (or some ms
       | extension of it). The gateway has a name of www that allows you
       | to access www.klm.com even though no name servers are accessible
       | so DNS shouldn't work.
        
       | the_mitsuhiko wrote:
       | I added flight status on airlines I fly into my shell prompt from
       | the wifi status. It's surprisingly fun.
       | https://x.com/mitsuhiko/status/866601971565944832?s=46&t=xvV...
        
       | atourgates wrote:
       | I'm an Alaska (relatively) frequent flyer. That airline offers a
       | free "messaging" plan, that lets you send and receive messages on
       | apps like iMessage, Facebook Messenger and Whatsapp. Though, it
       | somehow prevents images/attachments from coming through on those
       | platforms.
       | 
       | I've always wondered how this is implemented technically, and if
       | it might be possible to setup some kind of protocol/wrapper to
       | send data that looks like it's being sent over those protocols,
       | but offers access to other parts of the internet.
        
         | kayson wrote:
         | I can't seem to find it, but there was a blog post on HN a
         | while back about how someone set up a proxy to browse Wikipedia
         | by sending and receiving WhatsApp messages. I'm sure you could
         | extend that to be a web proxy.
        
         | technothrasher wrote:
         | Many years ago, when hotels first started having and charging
         | for WiFi connections, I wrote a simple little tunnel using the
         | DNS port back to my server. Since the hotels didn't block that
         | port or even bother to check what traffic was going over it, it
         | worked like a charm.
         | 
         | I tried it on a trip to Tokyo and immediately got completely
         | blocked. It took me a few minutes to figure out they'd
         | blacklisted my MAC address. I changed the MAC of that interface
         | and then behaved.
        
           | someotherperson wrote:
           | Reminds me of using VPNs in hotels in China some years ago.
           | Traffic would work for a few minutes and then the Great
           | Firewall kicks in, fingerprints the traffic as VPN and the IP
           | address and the MAC gets blocked. I'd rotate the endpoint and
           | the MAC address and get a few more minutes, rinse and repeat.
           | 
           | I think I had to use Shadowsocks or something at the end to
           | completely bypass it.
        
             | superkuh wrote:
             | Shadowsocks(-libev) is great. I use it in the USA with
             | Comcast to prevent their MITM attacks on HTTP connections.
        
         | tuetuopay wrote:
         | some options:
         | 
         | - attachments are likely stored in a different part of the
         | infra than raw messages (like on some s3 bucket somewhere), so
         | it's pretty easy to allow the WA/iMessage/Signal/Messenger API
         | while blocking their CDN through dns blocking, ip range
         | blocking, sni inspection, etc.
         | 
         | - they cut the tcp connection once more than e.g. 1MB has been
         | transferred. it would result in slightly degraded user
         | experience (the message tcp stream needs to be periodically
         | reopened), and may not be foolproof is apps are smart and
         | resume the download where it failed instead of from the start
         | 
         | I lean for the first option as it's both the simplest and most
         | foolproof option.
        
         | [deleted]
        
         | sixstringtheory wrote:
         | Could always send base64 data strings!
        
         | danielfoster wrote:
         | I've also wondered why Grindr but not Tinder works on the
         | "messaging only" plan. Someone at Alaska must have had fun with
         | that one.
         | 
         | Flightaware.com also works, presumably because Alaska uses
         | Flightaware for its tracking map.
        
           | noahtallen wrote:
           | > Flightaware.com also works
           | 
           | Unfortunately, I couldn't get it to load on my Alaskan flight
           | a few days ago on the free messaging plan. Maybe they've
           | changed it
        
           | 0_____0 wrote:
           | Grindr is a logistics app, Tinder is entertainment :p
        
         | phantom784 wrote:
         | I'd suspect it kills TCP connections once a threshold of data
         | has been transferred, and the threshold is enough to let text
         | through but not enough for attachments.
        
           | grishka wrote:
           | Good luck doing that against Telegram. It would simply
           | reconnect and resume the download where it left off.
        
         | miki123211 wrote:
         | Do they allow Telegram?
         | 
         | If so, that would be the easiest, Telegram has a really good
         | bot API.
        
           | Karrot_Kream wrote:
           | Many do but some don't. I wrote an HTTP Proxy for Telegram
           | and it works fine for those situations but is very slow. I
           | prefer using an NNCP proxy I wrote because the protocol
           | doesn't have online liveness requirements.
        
         | justapassenger wrote:
         | I don't think they have any sophisticated solution for sniffing
         | traffic. It's most likely simple firewall + deals with
         | Apple/Meta. Many airlines offer basic Wi-Fi for messages
         | nowadays, so it's very likely that big tech developed solution
         | for it (especially, as they have initiative to do that, so
         | their apps can work).
        
         | organsnyder wrote:
         | United wifi is similar. I've found that notifications work for
         | most things, including my Home Assistant instance--they must
         | all use the same Apple push service.
        
           | atourgates wrote:
           | I noticed the same on Alaska flying last weekend.
           | 
           | As soon as I activated the "Free Messaging" service, I got a
           | bunch of notifications from my Apple Home and Google Nest
           | devices.
        
             | snazz wrote:
             | Yes, APNs (Apple Push Notification service) has to be
             | allowed for notifications to come through from messaging
             | apps and the network operator can't tell whether it's an
             | allowed messaging app or any other kind of notification.
        
               | mcast wrote:
               | The scale of Apple's notification service must be pretty
               | large. Granted, most notifications don't have strong SLA
               | guarantees but I don't remember it having any downtime
               | either.
        
               | Klonoar wrote:
               | They don't really make guarantees about the reliability
               | of push notifications (IIRC), so it's unlikely you'd see
               | anything about downtime unless it was sustained for some
               | time.
        
           | SirMaster wrote:
           | On iOS all notifications have to use Apple's Push service.
           | 
           | And the WiFi essentially has to allow the Apple push
           | notification system entirely in order for iMessage to work
           | fully the way people expect.
           | 
           | So it's really a side effect. But yeah for example with the
           | free iMessage connection on Southwest, I can see all the
           | notifications come in on Discord, but of course I cannot
           | connect within the discord app to actually load all those
           | messages. I can only read them as they come in as push
           | notifications.
        
             | Xeamek wrote:
             | >On iOS all notifications have to use Apple's Push service.
             | 
             | Have to? Isn't there an option to send 'offline'
             | notification? I mean, coming from the app itself, rather
             | then external callback? With that, app could ommit the
             | official way of using Apple Push service, no?
        
               | SirMaster wrote:
               | Well, apps can only "run in the background" for up to 10
               | minutes.
               | 
               | So sure, an app can generate a notification popup itself,
               | but it's pretty limited as it won't be able to generate a
               | notification after being backgrounded for more than 10
               | minutes.
               | 
               | And the 10 minutes is also only if the app is designed to
               | extend the duration as long as possible. Normally it
               | would get cut off after 1 minute.
               | 
               | So because of this it seems that in the vast, vast
               | majority of cases apps choose to send their notifications
               | from the Apple Push notification service.
        
               | WirelessGigabit wrote:
               | Yea but those mean the app has to be running. The main
               | advantage of Apple's Push is that the app can be put to
               | sleep and only wake up when you tap a notification.
        
         | dheera wrote:
         | IP-over-Facebook. So that's what the world has come to ...
        
         | alexfoo wrote:
         | https://news.ycombinator.com/item?id=33568994
        
         | toast0 wrote:
         | I used to work at WhatsApp (until the end of 2019) on many
         | things, including special pricing (aka zero rating); we did not
         | work with airlines, and would not have participated in a
         | project where messages and attachments where treated
         | differently.
         | 
         | That said, technically there's two pretty easy ways to do it
         | for WhatsApp traffic, and then there's the way I suspect
         | they're doing it...
         | 
         | a) chat runs on different ips than attachments; always has,
         | most likely always will (other than some transitional HAProxy
         | at the old hosting when nearly everything had been moved to the
         | new hosting).
         | 
         | b) WA chat is not HTTPS (or even TLS) and attachments are. Chat
         | also cycles between different ports, so you could just block
         | port 443 and be good.
         | 
         | c) I actually suspect, based on poking around a little that
         | it's mostly just killing connections that use a lot of data.
         | Maybe in combination with some other things. Being on a plane
         | doesn't really put me in a debug the network kind of mood, so I
         | never got to the bottom of it, but I'd regularly be able to
         | make short connections to my home network while on the
         | messaging plan, at least when this stuff was new. OTOH, I think
         | I recall being able to connect through the WA VPN while on a
         | plane on the messaging plan, but that was when we had a
         | publicly available, but not publicly linked list of IP
         | addresses on our website; I have no doubt that DPI vendors had
         | that list.
        
           | dgellow wrote:
           | > WA chat is not HTTPS (or even TLS)
           | 
           | If you don't mind, could you expend on this? Are there
           | specific reasons to not be using TLS?
        
             | toast0 wrote:
             | I should probably refer you to the encryption whitepaper
             | [1], but the basics are that Chat uses the Noise Protocol
             | rather than TLS. All things being equal, the security
             | properties are about equivalent, however all things aren't
             | equal. The Noise handshake is smaller than the TLS
             | handshake, and Noise doesn't have extraneous features
             | WhatsApp doesn't use. Additionally, at the time of Noise
             | adoption, TLS lacked a means for 0-RTT data (now available
             | with TLS 1.3 Early Data), which meant using TLS would have
             | added at least one round trip; possibly two, depending on
             | which TLS library used. [2] You _can_ use TLS without
             | x.509, but it 's not very common; avoiding x.509 was a
             | definite plus.
             | 
             | I wasn't much involved in anything on the chat channel, and
             | I didn't do any implementation work on Noise, but I did
             | some later prototype work with it, and if I recall
             | correctly, it had much simpler framing than TLS as well;
             | although maybe that was mostly TLS options getting me down
             | --- the SNI header has 9 bytes of overhead, 5 of which are
             | lengths, Noise didn't have anything like that as I recall.
             | Do you really two bytes of versioning on every application
             | data packet, like TLS has? I'm not sure you really need a
             | type indicator byte either, context says you're sending a
             | handshake packet initially, and then application data after
             | that, but I'm pretty rusty on this now, so maybe there's a
             | justification.
             | 
             | For users paying for internet by the byte, every byte
             | counts. For users on networks with large delays, every
             | round trip counts. For attachments, it's less critical (if
             | your data access costs were high, you could configure
             | attachments not to load) and that infrastructure was always
             | built around http(s), so while there would have been an
             | efficiency improvement to move that off https, it would be
             | hard to justify the engineering time; especially post the
             | move to FB infrastructure with its CDN that was easily
             | configured for our attachments. OTOH, chat never ran on
             | TLS, so adopting Noise vs adopting TLS was a choice we
             | could consider, and we picked the best solution for us.
             | Unfortunately, it's pretty easy to identify Noise vs TLS
             | --- OTOH, the service IPs are already identifiable, so a
             | little more blending on the protocol level wouldn't help
             | much.
             | 
             | [1] https://www.whatsapp.com/security/WhatsApp-Security-
             | Whitepap...
             | 
             | [2] Also using system TLS libraries is fraught with peril.
             | It's fine, but not super great, for http, but using it for
             | a custom binary protocol is going to be terrible. You'll
             | need to debug all of the edge cases that the system https
             | library doesn't hit, and will then have to craft
             | workarounds that just work, even if you can't reliably
             | identify the underlying versions because Android OEMs do
             | weird stuff.
        
               | dgellow wrote:
               | Thanks for the answer, I didn't expect that much details!
        
             | jedberg wrote:
             | We didn't use TLS at Netflix either, and instead used our
             | own encryption protocol that ran on top of HTTP. We could
             | do this because we controlled the clients too.
             | 
             | The why was because of trust store issues. Every device has
             | its own built in trust store, and especially on devices
             | like TVs and DVD players, they couldn't be updated. After
             | looking at all the devices we supported, there was no
             | common certificate signer amongst all of them.
             | 
             | This meant that we would either have to get multiple SSL
             | certs signed by different parties (some of which weren't
             | all that secure) and present the right one depending on
             | your device type, or we could just roll our own over HTTP.
             | So we chose the latter.
        
               | toast0 wrote:
               | Yeah, at WA we didn't have too much of a problem with
               | trust store issues; although we did do extensive testing
               | when we switched CAs. We did have to deal with the end of
               | SHA1 certs though, I think we were able to get all of our
               | clients to use sha2, but some of the platform browsers
               | couldn't; and then we had to fiddle with our TLS server
               | to send sha2 certs to some clients and sha1 certs to
               | others.
               | 
               | Of course, there's not really very useful client
               | identification in the TLS Hello, so you have to kind of
               | guess who needs what. If we had to use different CAs for
               | different clients, it would have gotten a lot harder,
               | because it's not like we could rely on clients filling
               | out SNI either. So then you need to get more ips for each
               | service. I do recall needing to do that a little, but we
               | only needed a single 'legacy' group that was useful for
               | everything that couldn't manage the modern certs.
        
               | Sohcahtoa82 wrote:
               | > Every device has its own built in trust store, and
               | especially on devices like TVs and DVD players, they
               | couldn't be updated.
               | 
               | Was creating your own certificate authority and pinning
               | it in the app not an option?
        
               | toast0 wrote:
               | Bringing your own trust store to system https libraries
               | is not often supported. Especially when you get into
               | kinds of embedded environments Netflix supports. You also
               | might not have the capability to bring your own TLS
               | library either. If it's a limited environment, you might
               | only get reasonable performance if you use the system
               | ciphers, and they may not be exposed as primitives, and
               | x.509 parsing takes up a lot of code space in the likely
               | event that you've got limitations there too.
        
               | jedberg wrote:
               | In most environments you have to use the built in
               | libraries for network connectivity, so you have to use
               | their trust stores. Also space is very limited for the
               | client, so you can't just put everything into it.
        
             | [deleted]
        
             | blapp wrote:
             | It's based on the Noise Protocol Framework in the outermost
             | layer, which encrypts a compressed XMPP stream. The end-to-
             | end encryption is done within various XMPP message payloads
             | using the Signal Protocol, which encrypts message data
             | serialized using Protocol Buffers, with different formats
             | depending on the message type (text, image, video, sticker,
             | etc).
        
           | [deleted]
        
         | dannyfritz07 wrote:
         | Google Voice always works for me too FYI.
        
         | gouggoug wrote:
         | I've been wondering the same.
         | 
         | I wonder if they just do some rudimentary packet inspection and
         | drop packets above a certain size. My thinking being that short
         | text messages result in very small packets, while large images
         | will result in many large packets. Dropping large packets is
         | most likely OK. I'd need to test this hypothesis by sending a
         | very large text message (resulting in many large packets)
        
         | teeray wrote:
         | Time to implement IP over FB Messenger
        
           | falcor84 wrote:
           | Absolutely. And I'll just put this here for anyone who's
           | looking for inspiration:
           | 
           | https://www.rfc-editor.org/rfc/rfc2549
        
         | c7DJTLrn wrote:
         | You could try iodine, which is an IP-over-DNS tunnel. This
         | should work unless the gateway has very restrictive rules on
         | where DNS traffic can go.
         | 
         | https://github.com/yarrick/iodine
        
           | jedberg wrote:
           | Most captive portals have gotten wise to this trick and block
           | large DNS requests.
        
         | TRiG_Ireland wrote:
         | I've come across wifi zones which allow normal web browsing,
         | WhatsApp messaging (including pictures), but not WhatsApp
         | calls. I saw it first in Hollyhead Port while waiting for a
         | ferry. WhatsApp threw up an error message saying that calls
         | were disallowed by the wifi network.
        
         | aabhay wrote:
         | So so surprised that nobody has found out the hack for free
         | wifi on alaska flights. (At risk of losing awesome free wifi)
         | 
         | 1. Open browser with iOS user agent and ios sized h/w. 2. Click
         | on t-mobile free wifi link 3. Enter _any_ t mobile number you
         | may know.
        
         | dag11 wrote:
         | Hi fellow Alaska frequent flier.
         | 
         | So about that! There's this iOS app called Flightly that does a
         | brilliant little hack where the app updates itself in (almost)
         | real time on the "free messaging" plan. The way it works
         | (according to a friend) is that their servers send your phone a
         | push notification every couple of minutes from take-off until
         | landing, containing some serialized info such as
         | lat,long,alt,eta,etc. And then the app immediately swallows the
         | notification and deserializes its content without you ever
         | seeing it. The notification works because in order for Alaska
         | to give you notifications at all for your messaging apps, it
         | needs to give you access to _all_ push notifications as they
         | all get sent over an encrypted connected through Apple's server
         | and it can't pick and choose which apps' notifications it lets
         | through.
         | 
         | I've often wondered if it'd be possible to pipe any sort of
         | internet over notifications but I'm not sure if e.g. inline
         | responses are viable, and also that'd probably be heavy enough
         | usage of push notifications I'm sure it's violate someone's
         | TOS.
        
           | el_benhameen wrote:
           | I've always wondered why I get slack and email notifications
           | when I'm on a Southwest flight with free messaging without
           | paying for wifi. You've finally solved my mystery!
        
           | xeromal wrote:
           | This reminds me of a web browser years ago that would use MMS
           | to transfer web pages to the user without using internet
           | service. This was in the early days. I think it was a Java
           | app for the Motorola razor IIRC
        
           | lupire wrote:
           | Does that work on Android? I've never seen a non-authorized
           | notification in a Chat or Mail app on a flight.
        
           | keanebean86 wrote:
           | I had an idea to use Facebook messanger as a proxy.
           | Specifically to use the cheap messaging plan on a cruise ship
           | for real internet access. My home computer would be a gateway
           | that monitors fb and fetches/returns websites. I never even
           | tried because it just sounds like a violation of multiple
           | ToSes. Not to mention message size limitations, throttling,
           | my fb messages being pages of encoded text, etc.
           | 
           | I feel like it would need to work like Opera mini to maybe be
           | usable. Even then interactions would be uncomfortably slow.
           | 
           | https://en.m.wikipedia.org/wiki/Opera_Mini
        
             | ddalex wrote:
             | Check out https://github.com/aleixrodriala/wa-tunnel tunnel
             | over whatsapp
        
           | interestica wrote:
           | > There's this iOS app called Flightly
           | 
           | I guess it's Flighty (https://apps.apple.com/us/app/flighty-
           | live-flight-tracker/id...)
           | 
           | I love that people are into this. In the days before iPhones,
           | I had "Microsoft Streets and Trips" + a USB GPS unit +
           | Laptop. It was fun having it on a flight and seeing movement
           | data in realtime. It was less fun answering questions from
           | people who thought looking at the GPS data was somehow
           | nefarious.
        
             | zikduruqe wrote:
             | I used to do that also.
             | 
             | Way before cellphones, I'd bring my 2m radio on the plane
             | and make contacts on simplex. That was fun to throw your
             | callsign out and say "aeronautical mobile".
        
             | geostupid wrote:
             | Ha! I've used a high-end GPS to see my location and other
             | fun facts in flight. I learned to keep it in my pocket as
             | despite my attempts to explain it was only a receiver, I
             | was told by the flight attendant to "PUT IT AWAY." Not
             | being one to push back as to be removed for that flight, I
             | did just that.
             | 
             | Streets and Trips was fun on a laptop for long car drives
             | as you could live reroute in the car much like any old app
             | can do these days but seemed somehow magical back then.
        
               | joezydeco wrote:
               | FAs can be really strange about that kind of stuff, not
               | just out of ignorance.
               | 
               | My kid liked to suction cup his GoPro to the window to
               | take a time lapse movie of the flight and one FA told him
               | he had to take it off the window because he was, and I
               | quote: "modifying the structure of the aircraft and
               | that's not FAA-approved".
        
               | wolverine876 wrote:
               | I would guess that the flight attendant is doing their
               | job. They do not have the authority or expertise to risk
               | the airplane based on their own analysis, or based on
               | some random passenger's explanation. The clearly correct
               | solution is to remove the device and then there is no
               | risk to the plane. I expect they are strictly required to
               | respond that way and have no leeway.
        
               | buildsjets wrote:
               | There has been a lot of debate in the aviation
               | maintenance community regarding the legality of attaching
               | gopros etc. to aircraft with suction cups. Someone
               | eventually wrote to the FAA chief counsel and asked.
               | 
               | "Another consideration, in the case of this type of
               | equipment, is the applicability of the term "alteration".
               | FAA Order 8110.3 7E, defines an alteration as "a
               | modification of an aircraft from one sound state to
               | another sound state". The use of suction cups, or other
               | temporary methods of attachment (not including permanent
               | mechanical attachments to the aircraft), would not be
               | considered a modification to the aircraft."
               | 
               | https://mypilotpro.com/wp-content/uploads/2020/05/FAA-
               | Camera...
               | 
               | But still, the aircraft is the the airline's property,
               | not yours. If they tell you not do something to it, you
               | don't get a choice in the matter.
        
               | interestica wrote:
               | > installation of external mounts
               | 
               | That memo is about attaching it externally. Attaching it
               | to an internal window is probably a non-issue.
               | 
               | I once had a security agent ask me to prove a GoPro was a
               | camera because they didn't understand how there could be
               | no screen or viewfinder. It was most frustrating because
               | this was an area where they would have encountered it
               | many times (lots of scuba divers).
        
               | edrxty wrote:
               | Had this happen to me with some duct tape and a
               | malfunctioning strobing light next to me on a red-eye.
               | I'm an aircraft builder but she didn't want to hear my
               | explanation about how TSOs and the FARs work. I just
               | waited until they stopped paying attention.
        
               | bunabhucan wrote:
               | Probably just didn't want kid spit on the window.
        
           | dgellow wrote:
           | Really hoping someone implements this, it's the funniest
           | project idea I've seen in a while :)
        
           | adrr wrote:
           | Push notifications have background notifications that are
           | used to update apps while they aren't loaded. We used them
           | update our catalog/home screen on shopping app, its makes the
           | app feel much more responsive when they open the app and
           | content instantly appears instead of waiting for some API
           | calls.
           | 
           | https://developer.apple.com/documentation/usernotifications/.
           | ..
        
           | hackernewds wrote:
           | so why would I use this Flightly app? seems it delivers
           | messages all the same?
        
           | ardit33 wrote:
           | It is just 8 bucks for the full service... just buy the
           | internet bro. It is actually pretty good.
        
             | s3p wrote:
             | You're not understanding the point of the comment. The
             | Flighty team did some amazing engineering work for anyone
             | who _doesn 't_ pay.
        
               | catiopatio wrote:
               | > amazing engineering
               | 
               | Background updates are a built-in, supported, documented
               | feature, widely employed by applications on the platform,
               | and accessible to anyone that reads the two pages of
               | documentation required to use them:
               | 
               | "Pushing background updates to your App -- Deliver
               | notifications that wake your app and update it in the
               | background."
               | 
               | https://developer.apple.com/documentation/usernotificatio
               | ns/...
               | 
               |  _edited for politeness_
        
               | teaearlgraycold wrote:
               | Why is that toxic?
        
               | catiopatio wrote:
               | A cognitive filter that misrepresents reality is toxic.
        
               | [deleted]
        
               | tomrod wrote:
               | I build AI/ML systems. I think delivering digital content
               | through alternative pipes is _amazing work_. It has
               | applicability far beyond simple aerospace wifi paywalls.
        
               | catiopatio wrote:
               | > _I build AI /ML systems._
               | 
               | What's the relevance?
               | 
               | Push notifications aren't some odd "alternative pipe" and
               | conveying data via push notifications is a known and
               | supported use-case.
        
               | mynameisvlad wrote:
               | They're using push notifications in a novel way to
               | provide the app the necessary information to update
               | itself without needing to be connected to the full
               | internet. That's quite a bit beyond "They're using push
               | notifications" and no other app does that AFAIK. Almost
               | all will use the push notification _as a notification_
               | and trigger an update on app open which would fail.
        
               | catiopatio wrote:
               | Tons of apps do that. It's a built-in, supported use-
               | case!
               | 
               | It's also the trivial, obvious approach to anyone who
               | asks the question "how can I push data to the application
               | when it's not running."
        
               | mynameisvlad wrote:
               | Give me one example, then. Of an app which _uses a
               | notification as an actual app data source_ and not just
               | as a notification which opens the app. And which also
               | updates the primary app view to reflect this new
               | information.
               | 
               | No other app has updated its app state based on the
               | content of notifications. Slack/Discord/Teams et al (the
               | ones that aren't allowed on free messaging plans) will
               | show you previously cached messages and then an infinite
               | spinner when you open it. Fastmail/Gmail/Outlook et al
               | will show you existing emails but not load the new ones.
               | 
               |  _Could_ other apps do this? Surely. _Do_ they? No.
        
               | catiopatio wrote:
               | _Slack /Discord/Teams_? Those are desktop web
               | applications hosted via Electron. Failing to leverage
               | basic platform functionality is practically their telos.
               | 
               | It's a trivial, documented, supported, long-standing API
               | for a common use-case. It is widely used, as documented,
               | for its intended purpose.
               | 
               | I cannot share information about specific applications.
        
               | mynameisvlad wrote:
               | Uh, all those apps have mobile counterparts.
               | 
               | > I cannot share information about specific applications.
               | 
               | So you don't have an example of an app using such a basic
               | and widespread feature? Ok.
        
               | catiopatio wrote:
               | A mobile webapp is still a webapp, and "I cannot share"
               | does not mean "I do not have".
               | 
               | You're the one with an extraordinary claim here -- that
               | applications aren't using such a basic, documented,
               | widespread feature.
               | 
               | It's patently silly and I have no idea why you're so
               | self-assured in your ignorance.
        
               | constantly wrote:
               | No one is asking for a survey of apps that do this.
               | You're making the claim that it's far from rare, so you
               | have enough knowledge to make this claim. Share with us
               | the smallest piece of your knowledge by naming one single
               | other app that does this. It's the least you can do since
               | you're making the claim. Please, I'm very curious!
        
               | s3p wrote:
               | I'm curious as well.
        
               | catiopatio wrote:
               | Why?
               | 
               | Do you genuinely believe it's uncommon for applications
               | to leverage this useful, trivial, long-standing platform
               | API for its intended and explicitly documented purpose?
               | 
               | I can't imagine why you'd believe that, but another
               | commenter already provided the requested single example
               | up-thread.
        
               | nickf wrote:
               | I really think you've missed the point. Opening any of
               | those apps after receiving the notification _requires_ a
               | network connection to then update. It's not done via the
               | push notification itself. I have never seen that happen
               | in my experience. Flighty does, hence why it's deemed
               | clever.
        
               | catiopatio wrote:
               | I have not missed the point.
               | 
               | Background notifications can and do carry arbitrary
               | application data, and are used to update the application
               | state in the background.
               | 
               | This is their intended purpose, it's what they're
               | documented to do, it's how Apple intends them to be used,
               | and it's common application behavior.
               | 
               | This is literally a plainly documented feature of the
               | platform. It's not clever or unique or unusual -- it's a
               | simple feature that Apple specifically documents.
               | 
               | I cannot even begin to fathom why people are confused
               | about this, and it's truly mind-boggling that this has
               | required a thread at all.
               | 
               | Slack/Discord/Teams are non-native applications that do
               | not leverage the platform's support for updating
               | application state via notifications. That does not mean
               | the use of background notifications is unusual or rare.
               | It is not.
        
               | TehShrike wrote:
               | Podcast players like Overcast use push notifications to
               | learn about new episodes of podcasts that should be
               | downloaded in the background. Presumably text-based RSS
               | readers do the same.
        
               | interestica wrote:
               | What other apps do this?
        
             | el_benhameen wrote:
             | Sure. But you're on a site called "Hacker News". I'm not
             | sure that there's a more perfect topic of discussion for a
             | site with that name.
        
               | renewiltord wrote:
               | Fair enough. Here's another hack: if you're visiting a
               | Whole Foods in a different part of the country, you can
               | pocket small items and walk through the self-checkout if
               | you're dressed decently. Pay for some bigger items that
               | are cheaper and just put the expensive chocolate in your
               | jacket. You won't get caught.
        
               | el_benhameen wrote:
               | I think the spirit of the comment was "here's an
               | interesting technical question" versus "how can I get
               | eight bucks of free shit".
        
               | lapetitejort wrote:
               | "Wait, why did my Amazon account get banned?"
        
               | capableweb wrote:
               | Or: Hey, why did my AWS production server for my startup
               | suddenly go down and I cannot access my account anymore?
        
               | [deleted]
        
               | jstarfish wrote:
               | Hahaha. Reminds me of a savings "hack" my brother once
               | shared at the dinner table with a straight face:
               | 
               | Just take any adhesive label off of the "clearance" meat
               | at the supermarket, and apply it to the cut you wanted to
               | buy. Instant savings!
        
               | [deleted]
        
               | arcanemachiner wrote:
               | We've come full circle.
               | 
               | https://www.youtube.com/watch?v=HmZm8vNHBSU
        
               | acka wrote:
               | "Oh no, not again..." quoted from (not stolen, not
               | infringing any copyright because of fair use) from The
               | Hitchhiker's Guide to the Galaxy by Douglas Adams.
               | 
               | This nonsense has to stop. Copying a movie, or using the
               | internet on someone else's plan is not piracy is not
               | theft.
               | 
               | Quoting from memory from my old Webster's dictionary
               | which I have owned since I was a student a long time ago:
               | 
               | Theft: The act of taking property and removing it so that
               | the rightful owner is no longer in possession of it.
               | 
               | Piracy: the practice of attacking and robbing ships at
               | sea.
               | 
               | Equating copyright infringement or violation of terms of
               | service with theft or piracy is completely unwarranted
               | messing with definitions of terms that have served their
               | purpose for centuries.
               | 
               | Worse yet, the abuse of these terms in recent times
               | misdirects people's attention away from the underlying
               | flaws: artificial scarcity and the inability to enforce
               | restrictions on use; you can not steal data (unless you
               | steal the physical medium the data is stored on) nor can
               | you pirate a service.
               | 
               | Making unauthorized copies or violating the terms of use
               | of a service may be deemed objectionable but these
               | actions are most certainly neither theft nor piracy.
        
               | pmarreck wrote:
               | This is probably the least-intelligent comment on this
               | entire page. I would literally buy downvotes to bury this
               | obnoxious stupidity into oblivion.
               | 
               | There's a _significant_ contextual, moral and ethical
               | difference between  "exploring a lock" and "opening it
               | and stealing whatever it's holding from you".
               | 
               | Also, you're another one who apparently needs to read the
               | domain name of this site aloud to yourself again.
        
             | pmarreck wrote:
             | If you really think the folks here do this to save a few
             | bucks, you both 1) don't realize what the average pay of
             | people here is, and 2) are completely tone- and context-
             | deaf.
             | 
             | Look at the domain name of the site you're posting on and
             | _read it out loud._ FFS dude. LOL
        
             | dheera wrote:
             | Tomorrow it'll be 8 bucks to drink water, 8 bucks to use
             | the bathroom, ...
             | 
             | Yeah, you can argue internet isn't a necessity. Neither is
             | the bathroom, you can use a poo bag and a diaper. But we're
             | a civilized society. So we provide bathrooms to anyone that
             | needs them. And internet access.
        
               | zeroonetwothree wrote:
               | This seems like a poor slippery slope argument. It's not
               | as if charging for internet is new, it's been what? 20
               | years? And yet they still don't charge for water
        
               | dheera wrote:
               | Checked bags, carry-on bags, and meals used to be free,
               | and they are all now not free.
               | 
               | There are budget airlines outside the US that are
               | charging for water (which I think is unethical IMO, since
               | people avoiding drinking water could lead to an increase
               | in medical emergencies).
        
               | jrms wrote:
               | Still
        
               | Martinussen wrote:
               | Is that an American thing? Absolutely paying for the
               | water here.
        
               | ShadowBanThis01 wrote:
               | On planes? Seriously? Where?
        
               | mvdwoord wrote:
               | Recently on a 3 hour flight with ROM air I had to pay for
               | water... not even a single glass for free.
               | 
               | Was quite shocked.
        
               | dheera wrote:
               | Not only that but at the Beijing airport there were no
               | water refill stations and the bottle of water I bought at
               | the airport POST-security was confiscated upon boarding.
               | Fortunately I was boarding an airline with free water,
               | though.
        
               | gruturo wrote:
               | Lufthansa, or Luftwaffe as I call them due to the...
               | military kindness they often display.
               | 
               | No food and no water. Most recent data point: April 2023,
               | Standard Economy (not Basic Economy). International, 4.5
               | hours flight (Germany to Tenerife) (and back). The flight
               | had a LH code, although operated by Eurowings which
               | according to Wikipedia is a wholly owned subsidiary of LH
               | (https://en.wikipedia.org/wiki/Eurowings).
        
           | amalcon wrote:
           | This reminds me of the old tools that tunnel more or less
           | whatever over DNS. I.e. behind the scenes, the tool would
           | look up "base64encodedpacket.domainyoucontrol.example.com",
           | and it would respond with encoded data going the other way.
           | This is because captive portal WiFi often permitted DNS to
           | pass through unimpeded, for various reasons.
           | 
           | I always appreciated the hack, even though I could never
           | bring myself to use it due to the obvious cache pollution
           | problem on the various DNS servers.
        
             | fragmede wrote:
             | Also Internet over ICMP, for when captive portals used to
             | let those through.
        
         | godelski wrote:
         | On my recent United flight, where they had the same policy I
         | was sending image messages to friends through Signal. But it
         | was rather slow, so my best guess is rate limiting.
        
         | hot_gril wrote:
         | I always assumed they have a whitelist of
         | iMessage/Whatsapp/whatever IP addresses. It doesn't seem to
         | work for all messaging apps in general.
        
         | gsich wrote:
         | SNI or IP lists.
        
         | aantix wrote:
         | Hussein Nasser covered this. His videos are great.
         | 
         | How Airline WIFI allows Texting but not Media in
         | WhatsApp/iMessage
         | 
         | https://www.youtube.com/watch?v=AYSxxO2yZp8
        
         | matsemann wrote:
         | How does that fly (pun intended) with regards to net
         | neutrality?
         | 
         | Where I live, some mobile operators gave you "unlimited
         | streaming" in their data plan, but only for certain popular
         | services (spotify, youtube, netflix basically). Since this
         | would make it harder for others to disrupt the big ones, it was
         | quickly forbidden.
        
           | mdasen wrote:
           | In the US (I believe) Net Neutrality basically died. Even
           | before that, it was allowed to zero-rate categories of apps
           | (like messaging). That might be coming back now that the FCC
           | has 5 commissioners again and can reinstate Net Neutrality.
           | 
           | However, even with reasonably strict neutrality, this is
           | still possible. Many mobile carriers zero-rated streaming
           | services here, but unlike your operators they'd do it for any
           | streaming service. It was pretty easy for any streaming
           | provider to sign up. They'd basically give the operator the
           | IP ranges they'd be streaming from and the operator would
           | just zero-rate data to those IP ranges (and they'd usually
           | apply bandwidth throttling to around 1.5Mbps so that you'd
           | only get 480-720p video). The key is simply not
           | discriminating between providers within a category.
        
             | dehrmann wrote:
             | This is the situation where net neutrality falls over
             | because there's very often more demand, even at 1.5Mbps for
             | a stream, than an airplane's link can provide.
        
               | haswell wrote:
               | Airlines, coffee shops and similar entities providing
               | Internet as an ancillary service were not subject to
               | these rules when they were in effect.
               | 
               | The rules primarily target ISPs selling directly to
               | customers.
        
               | dehrmann wrote:
               | It also fails for mobile data and large crowds. Try
               | checking your email at a concert.
        
               | RulerOf wrote:
               | I always enable my 5G when I get into big crowds and it
               | usually fixes that problem, assuming service is
               | available.
               | 
               | I usually keep it off otherwise though because average
               | bandwidth tends to be better on LTE in my experience.
        
               | Dylan16807 wrote:
               | On an airplane in particular, you can set the limit lower
               | for everything, and that doesn't violate neutrality.
        
               | MostlyStable wrote:
               | So many people seem to think that Net Neutrality
               | disallowed _any_ kind of network management, when it
               | simply disallowed service provider level preference. You
               | can, under net neutrality, throttle _all_ video content,
               | if you want to, you just can't only throttle YouTube and
               | not Netflix (for example.
        
           | haswell wrote:
           | When the rules were still active, net neutrality did not
           | apply to coffee shops, airlines, etc.
           | 
           | > _52. Finally, we decline to apply our rules directly to
           | coffee shops, bookstores, airlines, and other entities when
           | they acquire Internet service from a broadband provider to
           | enable their patrons to access the Internet from their
           | establishments (we refer to these entities as "premise
           | operators"). These services are typically offered by the
           | premise operator as an ancillary benefit to patrons ...
           | Although broadband providers that offer such services are
           | subject to open Internet rules, we note that addressing
           | traffic unwanted by a premise operator is a legitimate
           | network management purpose._ [0]
           | 
           | It seems like a reasonable distinction: if you're letting
           | someone else use your Internet connection, it's your
           | prerogative to block things that you don't want on your
           | network.
           | 
           | - [0]
           | https://docs.fcc.gov/public/attachments/FCC-10-201A1.pdf
           | (page 31)
        
           | HWR_14 wrote:
           | Other people have suggested it's done by limiting the size of
           | the data transmitted to make the connection only useful to
           | text messages, possibly resetting the connection regularly.
           | If so, it would in fact comply with both the principles of
           | net neutrality and any laws I know of. You could create
           | matsemann's text service as long as it also used small
           | amounts of data it guessed could only be used for text.
        
           | hot_gril wrote:
           | Is net neutrality even law anymore? T-Mobile has had Binge on
           | for a long time, which zero-rates certain video streaming
           | services. And part of that was even under the old net
           | neutrality laws.
        
             | burkaman wrote:
             | Net neutrality is the law in California, but T-Mobile says
             | Binge On is ok because any video streaming service can
             | participate for free. It sounds reasonable to me and
             | apparently the California regulators are fine with it.
        
               | hot_gril wrote:
               | I'm fine with it, but that also clearly violates net
               | neutrality, so it doesn't seem to be the law here.
        
               | burkaman wrote:
               | Here's the California law: https://en.wikipedia.org/wiki/
               | California_Internet_Consumer_P.... T-Mobile Binge On is
               | zero-rating. T-Mobile's claim is that they aren't getting
               | paid for it, and that any video provider can participate,
               | so they aren't only zero-rating "some content in a
               | category". It sounds like that second part isn't true, so
               | they are probably violating the law but nobody is being
               | harmed so nobody has sued.
               | 
               | I agree that allowing any form of zero-rating is not full
               | net neutrality because it isn't treating all packets the
               | same, but I don't think it's fair to say that therefore
               | there is no net neutrality in California. It's a very
               | strong and effective law and gets like 95% of the way to
               | full "dumb pipe" net neutrality.
        
             | bombcar wrote:
             | Some states implemented their own versions of net
             | neutrality.
        
               | hot_gril wrote:
               | Gotta disable in-flight messaging while flying over
               | certain states ;)
        
             | technothrasher wrote:
             | No, but the now Democratic majority at the FCC is currently
             | actively trying to bring it back.
        
             | toast0 wrote:
             | Binge On doesn't fall under strict net neutrality, but they
             | are at least publicly open to all lawful and licensed
             | content audio/video providers, and the technical
             | requirements are not very high. I don't know what the
             | actual onboarding process is like, but they've got a lot of
             | providers signed up...
        
               | hot_gril wrote:
               | https://www.t-mobile.com/tv-streaming/binge-on/apps-
               | list.htm... doesn't list all that many providers if we're
               | talking about all video streaming services worldwide. I
               | notice a large one under the gaming category missing,
               | Twitch.
        
               | toast0 wrote:
               | I think they've got to be licensed for US customers, or
               | T-Mobile USA isn't going to include them. Twitch does
               | seem to be a notable missing provider; Amazon video is on
               | the program though, so maybe there's some technical or
               | product thing on Twitch's side.
        
               | hot_gril wrote:
               | Even US-only. Broadcast networks category is especially
               | slim. They've anticipated this kind of scrutiny and claim
               | no money is exchanged, but idk. Someone should try adding
               | a random obscure service.
        
         | RandallBrown wrote:
         | Probably 10-15 years ago when wifi on airlines was still pretty
         | brand new I remember a fun hack for free Internet that involved
         | Google Translate.
         | 
         | Because the wifi landing pages used Google Analytics, they
         | allowed traffic through from many of the Google domains. You
         | could then go to Google translate and translate the website
         | from English to English and use it as sort of a proxy server to
         | get free Internet.
        
           | smegger001 wrote:
           | You could probably have used googels cache to read arbitrary
           | pages as well.
        
           | noman-land wrote:
           | This hack often works today to get around paywalls.
        
           | spike021 wrote:
           | I'll probably show my age, but around 15 years ago I was in
           | high school and they blocked most websites as well. This
           | "hack" using Google Translate was how some of us got around
           | the blocklist for many things. It was nice because it didn't
           | involve having to install anything special or try to change
           | configurations that were probably monitored by library/school
           | admin.
        
       | demondemidi wrote:
       | This is just the raw data from the in-flight GUI. Is that it?
       | What am I missing?
        
         | teacpde wrote:
         | Nothing, I believe this gets the upvotes simply because it is
         | fun.
        
       | warkdarrior wrote:
       | > I didn't know what I'd do with the data at this point, but I
       | started collecting it right away so that I'd have as much as
       | possible to play with later.
       | 
       | And people complain that everything everywhere collects data on
       | everyone.
        
         | mulmen wrote:
         | The complaint is collecting data on _others_. Specifically the
         | complaint is on others collecting data on _me_.
        
       | cph123 wrote:
       | I did something similar on an easyJet flight, I wrote a little
       | Python script to save the altitude and speed data from the free
       | WiFi. They have a cool 3D WebGL rendering of the plane in the air
       | like Flight Simulator, but the satellite imagery was really low
       | res.
        
       | ejcx wrote:
       | I have a similar program I run that does this stuff for United
       | flights: https://github.com/ejcx/uwc/blob/master/uwc.go
       | 
       | The code is horrendous but it has worked for years and I guess
       | when I wrote it originally I didn't want to use a go struct for
       | some reason?
        
       | alexellisuk wrote:
       | What did you use to create your graphics?
        
         | jamesbvaughan wrote:
         | I used chart.js [0], but I don't necessarily endorse it - it's
         | just what I knew how to use quickly. I usually try to keep my
         | posts free from javascript, and could have used a different
         | tool that gives me SVG data or images.
         | 
         | You can see the code that's generating these charts here:
         | https://github.com/jamesbvaughan/jamesbvaughan.com/blob/main...
         | 
         | [0] https://www.chartjs.org/
        
       | punnerud wrote:
       | Nice trick with the watch to download periodic: watch -n 30 "curl
       | https://getconnected.southwestwifi.com/current.json | jq -c >>
       | flight-logs"
       | 
       | I often use crontab, but this looks easier for testing. Thanks.
        
         | jamesbvaughan wrote:
         | Yeah, if this were something that I wanted to leave running for
         | more than the duration of a flight, I'd reach for cron, but a
         | bash one-liner was perfect for this use-case!
        
       | benbristow wrote:
       | I've done something similar on trains in the UK before,
       | specifically LNER (was Virgin Trains East Coast at the time but
       | don't think the Wi-Fi solution has changed) trains. The icomera
       | captive portal has an endpoint which returns the GPS coordinates
       | of the train along with the speed. And some other endpoints for
       | next stops etc.
       | 
       | Once made a little React app that showed the train on a Leaflet
       | map. Was a good waste of a few hours.
        
       | billy99k wrote:
       | I just took two delta flights in the US. The first had free Wifi
       | through Tmobile. It marginally worked. It was just fast enough to
       | view low-intensity websites and I was able to connect to my linux
       | servers back home.
        
       | userbinator wrote:
       | I was expecting an article about a LAN party aboard a flight.
        
       | notmysql_ wrote:
       | Thats funny, I discovered the same thing a few months ago and
       | built a CLI flight tracker[1] that uses the API. I've tried it
       | across a couple of airlines and it worked almost perfectly across
       | all of them, because they were all using the same in flight ISP.
       | 
       | [1]: https://github.com/NalinPlad/OuterFlightTracker
        
         | jamesbvaughan wrote:
         | That's cool! I had wanted to make something similar, but I
         | didn't have enough experience with making TUIs to build it
         | without using the internet for reference during the flight. I'm
         | glad to that it's been done though!
        
           | notmysql_ wrote:
           | Yeah, I was on a long flight home from a hackathon with some
           | fellow programmers so it was fun to work on it together
        
       | gs17 wrote:
       | Glad someone looked into the flight tracker, I was always curious
       | how real the data in it is.
       | 
       | Although it doesn't answer my curiosity about how they manage to
       | mess it up occasionally. I've had flight data from different
       | flights pop up a few times on Southwest, which is never
       | reassuring to see.
        
         | grepfru_it wrote:
         | If it's the panasonic inflight system, it receives flight data
         | from the FMS. If the system does not receive flight data from
         | the FMS then it will not be up to date. Your browser could also
         | be retrieving old cached content.
         | 
         | Basically there is nothing about this system to assure you,
         | it's entirely a secondary data-delayed system that is not
         | critical to flight operations and as such can be INOP at
         | anytime and no one will care.
        
           | flutas wrote:
           | I honestly miss having to debug the racks at pana. But there
           | were so many "what" level bugs with the systems.
           | 
           | I remember DRM breaking multiple times for the IFE because
           | they assigned the same IP to multiple devices.
        
             | [deleted]
        
             | mulmen wrote:
             | Based on the current top comment those IPs may not have
             | been _assigned_.
             | 
             | https://news.ycombinator.com/item?id=37693293
        
           | gs17 wrote:
           | > Your browser could also be retrieving old cached content.
           | 
           | No, these are flights I couldn't physically have been on.
           | Sometimes it _is_ old content, but it 's for the flight the
           | plane took previously and doesn't update.
           | 
           | Here's an example of it happening to someone else:
           | https://community.southwest.com/t5/Inflight-
           | Experience/Fligh...
        
       | luc_ wrote:
       | this is such a wholesome nerd post. i love it.
        
       | pjot wrote:
       | I have an American Airlines flight in a few hours. Looking
       | forward to see what kind of data I can find now
        
       | cirrus3 wrote:
       | Fun story =)
       | 
       | Anyone else freaked out by that "time" format though? Seems like
       | a strange choice, would have expected something more standard
       | like ISO 8601 with timezone offset. "time": "Sun Sep 24 22:02:19
       | 2023"
        
         | jamesbvaughan wrote:
         | I felt similar!
         | 
         | My best guess is that whoever designed this system preferred to
         | transform the time into a localized (based on the flight's
         | location, I guess?) representation on the server so that they
         | could drop it directly into the web UI without much client-side
         | logic.
        
         | hughes wrote:
         | It looks like the default formatting used by `ctime`. Could be
         | a clue about the underlying backend.
         | 
         | https://cplusplus.com/reference/ctime/ctime/
        
       | kristopolous wrote:
       | On redeye international flights with exorbitant WiFi fees I'll
       | admit to scanning for MAC addresses, get the top talkers, then
       | come back later when ones been idle for like 15 minutes,
       | presuming the person is asleep and change my mac to take the
       | address and get online.
       | 
       | I just did it for fun, ok fine.
        
       | commandlinefan wrote:
       | When my son was younger - maybe 9 or 10 or so, we were on a plane
       | and he was using his phone and I looked over his shoulder and
       | realized he was on the internet... but I hadn't paid for an
       | internet plan. I said, "son, how are you using the internet?" He
       | said, "oh, a kid at school showed me - if you go here" (he opened
       | up the wifi settings where the DHCP assigned IP address is) "and
       | start changing the numbers, eventually the internet will work."
       | Apparently, at the time, on American Airlines, when somebody
       | bought and paid for an internet plan, it gave them an IP address
       | and authorized it to use the internet... if somebody else guessed
       | your IP address (which was pretty easy, it was a 192.168 address)
       | and spoofed it, they could take over your internet connection
       | with no further authorization.
       | 
       | I had to tell him not to do that, but I was kind of proud of him
       | for having the temerity to go for it.
        
         | iancmceachern wrote:
         | Legend, your kid is a legend
        
         | 1vuio0pswjnm7 wrote:
         | The LAN here seems relatively small and fixed, i.e., the number
         | of passengers on a flight is known and does not change during
         | flight. The airline could easily assign a unique IP address to
         | each seat (ticket) without using DHCP.
         | 
         | This is in contrast to other instances of public Wifi.
        
           | groby_b wrote:
           | Good luck finding out which seat that _wireless_ connection
           | is coming from, though :)
        
         | quickthrower2 wrote:
         | And probably 2 more simple steps to the credit card number of
         | that paying customer.
        
         | babypuncher wrote:
         | A slightly more ethical solution, for those wondering, is SSH
         | tunneling. A lot of gated wifi networks allow SSH traffic
         | through without payment.
         | 
         | I used to spend a lot of time at JFK back when they still
         | charged for WiFi. I watched a lot of Netflix for free by just
         | tunneling to my home network and connecting to my VPN server.
        
         | logeist wrote:
         | What does your son do now, if you don't mind me asking? That's
         | the kind of stuff I was poking around with then add a year or
         | two.
        
           | commandlinefan wrote:
           | Ha, he's a CS major at UT.
        
         | pak9rabid wrote:
         | lol, I used to do this all the time at non-free wifi hotspot
         | locations, only I'd start off with a ping sweep of the entire
         | subnet (nmap -sP) in order to get my ARP cache filled with a
         | bunch of potential usable IP/mac addresses on the network. From
         | there, I'd iterate through each one and set the IP & mac
         | address until I found one that would let me through the
         | firewall.
         | 
         | Granted, being a NOC engineer at Wayport (now AT&T WiFi)
         | certainly helped me understand how it all works.
        
           | zikohh wrote:
           | Recommended any blog posts?
        
           | aeternum wrote:
           | Yes the key to doing this more seamlessly is to spoof both
           | the IP and the MAC so your machines are not constantly
           | fighting with the other person over the ARP table entry.
        
             | colanderman wrote:
             | Aren't you then fighting the switch's port learning? Or
             | RSTing each other's TCP connections?
        
               | withinboredom wrote:
               | Its wifi. You both just pick up the same frame when it is
               | broadcast, then it sees two stations (a level below IP)
               | with the same MAC. Most routers just don't care about
               | that. (it's technically a valid edge case that two
               | stations have the same mac address. It should be
               | vanishingly rare in the wild ... but this is a practical
               | example of why it isn't).
        
               | richardwhiuk wrote:
               | If there's multiple hotspots behind the same controller,
               | you may well get switch port fighting.
        
               | withinboredom wrote:
               | If STP[1] is enabled, but that is unlikely since you'd
               | have dropped connections when roaming for the reasons you
               | just gave. Most likely, STP is not enabled on these
               | networks.
               | 
               | [1]: https://en.wikipedia.org/wiki/Spanning_Tree_Protocol
        
               | londons_explore wrote:
               | Usually doesn't matter... The other person will get
               | frustrated and disconnect and reconnect a few times, and
               | finally give up and read a book...
        
           | shredprez wrote:
           | I typically just praise with upvotes, but I'm feeling
           | grateful today: anecdotes like this one and gp are why I love
           | hn
        
         | sprokolopolis wrote:
         | I used to do this on airplanes and in hotels. I had more
         | success in hotels, because there was less chance the other
         | person was using it at the time and less chance of getting
         | kicked off.
         | 
         | There was another little hack that I used as a little kid.
         | Remember when airlines would sell or rent special headphones to
         | watch inflight movies? The port was just two holes beside each
         | other and the plug was two tubes. Before a flight, I would stop
         | by one of the fast food places in the terminal and grab a
         | handful of straws (preferably ones with a bendy joint). When I
         | was on the plane I would connect the straws by fitting them
         | into each other to create a long straw. Put one end into the
         | port on and the other into your ear and you got free movies
         | with audio!
        
         | josh_carterPDX wrote:
         | There used to be an app that would scan the ip and mac
         | addresses on the network that were already connected to the
         | internet. You could then change your settings to one of the mac
         | addresses and when they were done you'd get the connection to
         | yourself.
         | 
         | I used to travel a lot for work and just refused to pay for
         | WiFi. This was good in airports and coffeeshops when you still
         | had to pay to connect.
         | 
         | Now it's hardly needed, but I could see how it would be helpful
         | where there's still a cost to connect.
        
         | lukas099 wrote:
         | Expect cops on your doorstep for CFAA violations by the morrow.
        
           | lukas099 wrote:
           | It was a joke.
        
         | Eumenes wrote:
         | 9-10 seems young to have a phone, smart kid though
        
         | wferrell wrote:
         | This is an amazing story. Thanks for posting.
        
         | afterburner wrote:
         | > for having the temerity to go for it
         | 
         | Well, if he doesn't know there's anything wrong with it, it's
         | not really temerity.
        
         | kxrm wrote:
         | A few years ago I was on a Southwest flight and had OpenVPN
         | running because I forgot to turn it off. I was able to access
         | the Internet through my tunnel without paying for access. I
         | guess at the time they were only port blocking common ports
         | (80, 443, 53 etc) if you didn't pay. They have since closed
         | that hole.
        
           | chankstein38 wrote:
           | For this same reason you used to be able to send messages via
           | platforms like whatsapp without internet as well! I don't
           | remember the airline I just remember I hadn't paid for
           | internet but I could message and do a few other things but I
           | couldn't browse the internet.
        
             | thedanbob wrote:
             | That was probably deliberate. I flew United recently and
             | they advertised free wifi for certain messaging apps, or
             | you could pay to access more apps or the general internet.
        
               | MostlyStable wrote:
               | I also flew united recently and, in addition to the free
               | messaging access, they also provided free access to the
               | inflight entertainment, in case you wanted to watch it on
               | your device instead of on the screen.
               | 
               | I would have loved to take advantage of this since my
               | wireless earbuds were significantly better than the wired
               | pair I had. Unfortunately, a little pop-up warned me that
               | this was not available on Android 13 devices. I was more
               | than a little annoyed, but also curious as to why this
               | might have been the case.
        
               | xattt wrote:
               | There was a report in the early to mid-2000s where
               | someone got iChat AV to work, partly because it was
               | fairly obscure and likely the network engineers didn't
               | consider blocking it.
        
               | alwayslikethis wrote:
               | I flew United recently, and I was able to use the free
               | messaging service for basically everything without any
               | intervention from my part. It's just a tad slow. Not sure
               | if it was intended or not.
        
           | Kikawala wrote:
           | It also worked on Alaska Airlines and American Airlines.
        
         | smfjaw wrote:
         | Love stuff like this, it's how kids get into computers. I used
         | to make minecraft servers for my friends and I to play on when
         | I was 12, which lead to a software engineering career. Sounds
         | like you've got something similar on your hands
        
         | KMnO4 wrote:
         | I used to do the same thing at hotels. Still often works.
         | nmap -sn 192.168.0.1-255
         | 
         | To find everyone on the network, then start spoofing each of
         | their MACs until you find one that works
        
           | savrajsingh wrote:
           | I should probably know the answer, but what happens when two
           | devices have the same MAC address?
        
             | commandlinefan wrote:
             | No way to tell for sure, but I can only assume that he had
             | actually hijacked somebody else's connection and the other
             | person's device stopped working for them. I sure wasn't
             | going to stand up and ask the plane if anybody had had
             | their internet plan hacked...
        
               | ahoka wrote:
               | That's not how it works, but probably made someones
               | browsing experience worse.
        
               | _joel wrote:
               | Buy a plan then clone the mac of that device, white hat
               | it. Might have killed a bit of time (unless you needed
               | sleep) :)
        
             | AdamJacobMuller wrote:
             | "it depends, nothing good"
             | 
             | Network devices forward (switch, more technically) packets
             | to and end device based on an internal MAC table (send
             | packets for DE:AD:BE:EF to interface ge-0/0/0.0) and most
             | devices populate their MAC table simply by looking at input
             | packets and sending the "next" packet for that MAC address
             | out the "last" received interface.
             | 
             | If two devices in a network have the same MAC address, they
             | will effectively "fight" for control of the packet flow.
             | You can win that fight by sending a lot of packets.
             | 
             | In practice, the other person is going to get annoyed and
             | give up.
             | 
             | There are lots of technology which avoid this issue now,
             | but the two primary ones are 802.1x (used in
             | corporate/government environments) and DHCP snooping which
             | can be much more broadly deployed. 802.1x is very
             | complicated and I won't go into it, but, DHCP snooping
             | works by limiting L2 forwarding (MAC table population) to
             | only what the DHCP server says the end device should have
             | and it does this just by inspecting the DHCP replies (no
             | custom protocol) with some vendor specific extensions on
             | the DHCP server side for complex scenarios (you can even do
             | things like put ports in a specific VLAN based on the DHCP
             | reply).
             | 
             | This works fine on a physical layer and most hotels are
             | probably using something similar now (less for malicious
             | abusive reasons, though that's a thing) but also just to
             | work around poorly behaving devices and to reduce customer
             | complaints. If you care (and have a modest amount of money)
             | MAC and IP spoofing are dead on the physical layer.
             | 
             | For the wifi layer, very similar stuff exists in high-end
             | gear (Rukus/Cisco) and is starting to trickle down to
             | prosumer level gear like unifi. If you care (and have
             | serious cash for Rukus) MAC and IP spoofing are also dead
             | on the wifi layer.
        
               | EvanAnderson wrote:
               | > "it depends, nothing good"
               | 
               | Fun anecdote from the early 2000's re: duplicate MACs:
               | 
               | Embedded IP time clock kept intermittently barfing out
               | frames with the source MAC addresses of other devices on
               | the network. The switch would update its MAC table and
               | direct packets to this device. The Customer's AS/400
               | would kill all remote terminal sessions when the clock
               | ended up w/ the AS/400's MAC. (They were doing a layer
               | 2-based connection to the AS/400-- APPN, I believe it was
               | called... Ugh, it was temperamental and didn't like any
               | layer 2 "hiccups".)
               | 
               | MAC addresses flapping between ports is one of those
               | "breaking the laws of physics" kind of problems that
               | teaches you to question your assumptions. Gear with a
               | crazy brain can do anything it wants to and it doesn't
               | care about your assumptions.
        
               | AdamJacobMuller wrote:
               | > it was temperamental and didn't like any layer 2
               | "hiccups"
               | 
               | The clock was probably doing the "correct" thing when it
               | got a TCP packet for a connection which it didn't
               | recognize and sent back an RST, which caused the client
               | to abort.
               | 
               | > kind of problems that teaches you to question your
               | assumptions
               | 
               | Yep. I learned a lot from dealing with large layer-2
               | networks (commonly running on hardware not suited for the
               | task). Mostly I learned to never run large L2 networks.
        
             | spmurrayzzz wrote:
             | It more or less turns into an ARP cache race, only one
             | device is gonna win. You can do some tricks with gratuitous
             | ARPs as well for "dumber" networks, but more sophisticated
             | setups usually have some broadcast ARP filters that are
             | tied to an auth layer (radius, 802.1x. etc) and will drop
             | broadcast frames from un-authed hosts.
        
             | sznio wrote:
             | Since Wi-Fi is a broadcast medium, shouldn't it not matter?
             | With a switch it would break things because MAC tables, but
             | a Wi-Fi AP is a hub. Each device will receive packets for
             | both devices, sure, but will that break things?
             | 
             | I know Windows gets upset when that happens but the network
             | seems to still work.
        
             | Cpoll wrote:
             | I should probably know this too, but I'll speculate wildly
             | instead.
             | 
             | MAC is Layer 2, IP address is Layer 3. One way or another,
             | the packet destined for the person you're spoofing will end
             | up at your computer and work its way through the layers.
             | From there, if it's a TCP/IP packet, I think it'll get
             | filtered out at Layer 4 (transport) because your computer
             | wasn't one of the parties that initiated the TCP connection
             | (the sequence numbers won't line up, etc).
             | 
             | Packets being broadcast to multiple machines is common
             | enough in various network setups, it's up to the individual
             | machine to decide whether to process or drop the packet.
        
             | angry_octet wrote:
             | That greatly depends on whether the medium is broadcast
             | (like a radio) or broadcast-like (a shared copper wire) and
             | if it has CSMA/CD logic. Many of the replies are losing
             | that detail and thinking of how it would effect a
             | 1000base-T network, which maps MAC addresses to specific
             | ports.
             | 
             | For a broadcast network, the answer could be 'nothing' in
             | the sense that both receivers would get the same traffic.
             | The IP stack would then throw away packets destined for the
             | other computer unless they were UDP broadcast or multicast,
             | and even then it would only notice if someone was running
             | Wireshark.
             | 
             | Advanced wifi devices/meshes will use beam forming and mesh
             | allocation and might degrade if there were MAC duplicates,
             | but I think they will generally operate in a non-exclusive
             | basis due to end point movement and fading, so both
             | computers will get a good data rate.
             | 
             | In summary: it's fine.
        
               | colanderman wrote:
               | Can't this often result in the two machines RSTing each
               | others' TCP connections, depending on firewall settings?
        
             | queuebert wrote:
             | Only one way to find out.
        
             | _joel wrote:
             | ARP entered the chat
        
             | rolph wrote:
             | this seems to be a decent answer written up ready to go.
             | 
             | https://serverfault.com/questions/462178/duplicate-mac-
             | addre...
             | 
             | what happens depends on your LAN setup, but generally its a
             | fail.
        
           | lupire wrote:
           | Does that work if both of you are trying to send/receive
           | packets at the same time?
        
             | system2 wrote:
             | WiFi signal is received by both. Packages are ignored if
             | they are not requested by either one of the systems. You
             | can also receive anyone else's packages while you are using
             | your internet but ignoring the ones you don't need. (If
             | interested try aircrack-ng.)
        
               | ahoka wrote:
               | Only if it's unencrypted, of course. Rarely the case
               | nowadays.
        
               | ruune wrote:
               | If it's important but you got time, you could always save
               | the packets and crack them when quantum computing comes
               | out for consumers. You have to wait a couple of decades
               | probably, but maybe it's worth it
        
               | pests wrote:
               | NSA is already taking care of that in Utah.
        
               | angry_octet wrote:
               | Your computer will still receive the packets from the
               | radio layer, it just won't have the right key to decode
               | the other recipient's traffic.
        
             | fragmede wrote:
             | Yeah, the client OS will reject the "bad" packets destined
             | for the other device as unknown.
        
           | louison11 wrote:
           | This is what I did about 7-8 years ago on flights when I was
           | still a reckless teenager. Would just wait for people to buy
           | the plan, then spoof their Mac address. There was also a
           | specific airline, although I can't remember which one, which
           | let me in for free without MAC spoofing - by using a Google
           | Cloud VPN I had previously set up. The paywall was
           | essentially blocking all IP ranges except for Google servers
           | for Google Analytics.
        
             | ApolloFortyNine wrote:
             | Similar is probably possible on cruise ships, I noticed on
             | Carnival you could still get notifications from discord (I
             | assume because most android notifications go through cloud
             | messaging and it's required for their own app to work
             | without internet).
        
             | Scoundreller wrote:
             | Took an airline that required an app to pay to connect...
             | but also opened up a window of a few minutes of open access
             | to let you download said app from the iStore.
             | 
             | I always wondered if there was a way to further exploit
             | that.
        
               | withinboredom wrote:
               | IIRC (assuming it was the same airline), it didn't close
               | existing connections once the time ran out, so you'd just
               | ssh to a server and proxy through that. When/if the
               | connection dropped, you'd just change your mac address
               | and start over.
        
           | pantalaimon wrote:
           | I've never been at a hotel that charged for WiFi - is that a
           | US thing?
        
             | lukas099 wrote:
             | It's not unheard of but it's probably been a decade since
             | I've been to one personally. Some have free WiFi just for
             | guests (probably good since the bandwidth is so saturated
             | already).
        
               | brewdad wrote:
               | The last couple of hotels I stayed in had free "basic"
               | wifi for guests. Elite status could get higher speeds for
               | free or anyone else could pay something like
               | $10/day/device to get higher speeds.
               | 
               | I just switched to my cell phone data if the wifi was too
               | slow.
        
             | louison11 wrote:
             | Yes. You often also have to pay for parking in many places.
             | The price you see online is rarely what you pay for. But
             | that's part of the culture, it's the same for restaurants,
             | online purchases etc.
        
               | lukas099 wrote:
               | The sticker price is almost never what you pay, since tax
               | is almost never included. Not sure how or when that norm
               | diverged from the Euro one.
        
               | xp84 wrote:
               | I suspect the "how" is that we just never got the
               | regulation that would prevent it because the 'small-
               | government and low taxes' are aligned perfectly with the
               | large business interests which tend to fund all
               | campaigns. The "low taxes" types want to maximize the
               | sting of all forms of tax and this is a great way to do
               | that. And the businesses appreciate the psychological
               | benefits of being able to show the minimum possible
               | number. Even if a "display only the final price" rule
               | applied to all a consumer's options, we probably just buy
               | things more when they're labeled as "$99.99" instead of
               | "$109.99."
               | 
               | For extra fun, consider how phone bills attempt to "pass
               | through" their own tax obligations, which have little to
               | do with your own incremental usage, in the form of
               | 'recovery fees' tacked onto bills. I suspect we'll
               | eventually see those creep into all kinds of
               | transactions, especially among other
               | monopolistic/oligopoly businesses where you have little
               | if any choice.
        
               | sokoloff wrote:
               | > we probably just buy things more when they're labeled
               | as "$99.99" instead of "$109.99."
               | 
               | That's basic price elasticity of demand and entirely
               | unsurprising. When something costs 10% more, people buy
               | less of it in general.
               | 
               | We also buy more things priced at $99.99 than at $100.00,
               | which is more of the psychological trick than it is
               | rational price elasticity.
        
               | ericjmorey wrote:
               | The 2 largest retailers on earth have discovered that the
               | x.99 prices make you less money than pricing at x.99 plus
               | some arbitrary number between .99 and .01.
        
             | havnagiggle wrote:
             | Dialup speeds is free, but if you want to taste those
             | megabytes, you better fork over those megabucks.
        
             | ApolloFortyNine wrote:
             | It's a business hotel thing, oddly all the cheap chains
             | will have free breakfast and wifi, but often something like
             | the Hilton will be pay for both, likely because the
             | clientele they're targeting is business employees who will
             | just expense the whole thing.
        
             | Spooky23 wrote:
             | Conference hotels often soak the companies with booths for
             | internet access. One place I did for my company demanded
             | $1500 for 3 days of internet access for up to 5 devices.
             | 
             | In-room, you get free internet access, but in the
             | windowless ballroom with spotty cell-service, there's
             | nothing available for free.
        
               | rootbear wrote:
               | I've also seen the opposite, where in-room Wi-Fi was
               | charged, but in the hotel's function spaces, it was free.
               | The economics of this are confusing, at best. I have also
               | had the situation where the in-room wi-fi was so slow
               | that using my phone as a hot spot was faster!
        
             | OkayPhysicist wrote:
             | It used to be more common about 10 years ago, but
             | especially so among hotels catering to business travel.
             | Your Motel 6 would probably have free wifi, the Hilton
             | wanted an extra $20 a night.
        
         | lxgr wrote:
         | That's an amazing anecdote!
         | 
         | The state of "open Wi-Fi" security is actually really sad. I'm
         | not aware of an easy way for the airline to actually do better
         | than this!
         | 
         | I suppose they could use Opportunistic Wireless Encryption [1]
         | and bind session authentication to that (i.e. authenticate a
         | given OWE session, not a given MAC address) if the device
         | supports it, as at least modern Apple devices do? But I have no
         | idea how stable an OWE session is; it would be very
         | inconvenient to have to login again every time my device
         | switches between access points.
         | 
         | In any case, I'm sad that this isn't a solved problem yet, and
         | paid Wi-Fi (as well as securing free Wi-Fi) still requires
         | custom and clunky solutions like unreliable captive portals
         | that need to pass through selective traffic (e.g. for 3DS, for
         | payments, sometimes emails for password reset codes etc and
         | more).
         | 
         | A standardized endpoint and API would also be nice, i.e.
         | something to tell the client whether it's connected, restricted
         | (i.e. able to only access a limited set of hosts such as the
         | in-flight map as described in the article), or needs to
         | pay/authenticate (and if so, at which URL). This could then
         | yield an authentication token, to be provided for seamless
         | reconnections for the same session.
         | 
         | There's "Hotspot 2.0" and WPA-EAP (i.e. WPA Enterprise), but
         | these don't really have a good story for "pay via web portal"
         | style usages and are more geared towards wireless carrier
         | operated hotspot networks and corporate scenarios,
         | respectively.
         | 
         | [1]
         | https://en.wikipedia.org/wiki/Opportunistic_Wireless_Encrypt...
        
           | dangus wrote:
           | Isn't this data meant to be exposed? You can get all this
           | flight status on the Southwest intranet when you're connected
           | to WiFi as part of the flight status page.
           | 
           | This hack just goes a step further to plot the data over
           | time.
        
           | vezuchyy wrote:
           | You can always use an open network to generate passwords for
           | the proper internet connected WPA-EAP network (along with
           | some in-flight multimedia like some carriers do). Extra step
           | for sure but it solves the problem.
           | 
           | PS: I'm a couch expert so I have no idea if there's a problem
           | with this idea.
        
           | Nextgrid wrote:
           | In cases where the Wi-Fi is provided as a value-add or is
           | bought via another channel than the Wi-Fi network itself, I
           | think you can just generate one-time WPA Enterprise
           | credentials, with a QR code to facilitate data entry?
           | 
           | In case of in-flight Wi-Fi, the credentials/QR code can be
           | printed on the boarding pass, or available in the app (the
           | app caches it in advance while it's still on the ground, so
           | when in the air you can use those credentials to connect).
           | 
           | This doesn't cover 100% of use-cases but it would at least
           | cover a big one (a significant amount of public Wi-Fi is
           | "value add" to another service - whether restaurants, hotels,
           | flights, etc where there's an existing channel to provide
           | one-off wi-Fi credentials over), it's a shame nobody deploys
           | this.
        
             | labcomputer wrote:
             | I think you could even take this one step further: Have a
             | captive portal on an unencrypted channel (using TLS
             | obviously) to do the vending, so that the credentials don't
             | need to be purchased before the flight.
        
           | cxcorp wrote:
           | What if the captive portal just had a link (or on an IFE
           | screen, a QR code) that connected your phone to a different,
           | WPA2/WPA3 protected, hidden WiFi SSID that was generated
           | exclusively for you? Phones nowadays support joining a
           | passphrase protected WiFi AP via a QR code, so I'd imagine
           | that's doable. The hard part would be finding routers that
           | support >300 different hidden SSIDs, but honestly I would
           | hope that that is technically feasible nowadays.
           | 
           | That way you'd at least have the protection of the WPA GTK.
        
             | tharkun__ wrote:
             | This. And even if the >300 is not available, how many
             | people _actually_ buy Wi-Fi on the plane? _That_ is the
             | number of clients that need to be supported. And if that 's
             | still a problem (or you don't want to guess), the SSID can
             | be hidden and static and the only thing non-static is the
             | password that works for just the duration of the flight you
             | are on.
        
       | 1B05H1N wrote:
       | Did you have permission to do that ? Sounds pretty risky to be
       | probing the network of a flight imo.
        
         | Etheryte wrote:
         | Are you aware what the website you're currently on is called?
        
           | WendyTheWillow wrote:
           | Hackers talk about ethics and legality all the time!
        
         | margalabargala wrote:
         | Does one generally require permission to read a sign that
         | someone else posts in a public place?
        
         | system2 wrote:
         | The signal is already reaching your computer. You are not
         | modifying it. It is the same as listening to radio.
        
         | jamesbvaughan wrote:
         | No permission - just curiosity :)
         | 
         | I'm not too concerned about the risk associated with fetching a
         | JSON file that their flight status page is already fetching on
         | a loop. That said, I'm curious what risks you have in mind.
        
           | mulmen wrote:
           | > That said, I'm curious what risks you have in mind.
           | 
           | Overzealous prosecutors.
        
         | fouc wrote:
         | There's no "probing the network" involved here.
         | 
         | The in-flight webpage was continuously fetching a specific end-
         | point from the in-flight web server.
         | 
         | This end-point is basically public data.
         | 
         | All he did was duplicate what the webpage was already doing,
         | and then do some basic analysis on the data the end-point was
         | returning.
        
           | mulmen wrote:
           | Tell it to the judge.
        
           | mcast wrote:
           | Cybersecurity and internet crime laws are notoriously
           | outdated (created in the 80s). I could see a bad lawyer
           | arguing that cURLing an API repeatedly is "hacking".
        
       | soupfordummies wrote:
       | Fun read! Reminds me of the type of articles I would find in
       | 2600. The hacker spirit at work :)
        
       | dekhn wrote:
       | Wait, doesn't everybody set up a prometheus/grafana dashboard for
       | each flight to show the telemetry?
        
         | system2 wrote:
         | I usually connect to the cockpit directly with rj45 to keep it
         | stable. Sometimes even talk to the pilot with the encrypted
         | coms.
        
       | benced wrote:
       | Another thing to notice: they use the highly nonstandard time
       | zone abbreviation "PDT". This works because they're a US-only
       | airline but if an international airline did this, they'd be in
       | for a world of hurt.
        
         | everly wrote:
         | Is it really "highly nonstandard"? I thought it referred to
         | Pacific Time during daylight savings. The rest of the time
         | being PST (Pacific Standard Time).
        
         | wil421 wrote:
         | > Specifically, time in this zone is referred to as Pacific
         | Standard Time (PST) when standard time is being observed (early
         | November to mid-March), and Pacific Daylight Time (PDT) when
         | daylight saving time (mid-March to early November) is being
         | observed.
         | 
         | https://en.m.wikipedia.org/wiki/Pacific_Time_Zone#:~:text=Sp...
         | .
         | 
         | What do you think is the correct format?
        
         | kube-system wrote:
         | Southwest has international routes now to popular vacation
         | destinations south of the US.
        
         | jdminhbg wrote:
         | > This works because they're a US-only airline
         | 
         | They're not US-only (note that the response included a value
         | for whether it was a non-US-including flight), but they are
         | North/Central America/Caribbean-only.
        
         | recursive wrote:
         | How much more standard can it get?
         | 
         | https://en.wikipedia.org/wiki/Pacific_Time_Zone#
         | https://www.timeanddate.com/time/zones/
        
         | xxpor wrote:
         | PDT is extremely standard?
         | 
         | http://www.timezoneconverter.com/cgi-bin/zoneinfo.tzc?s=defa...
         | 
         | Granted, I think everything should always be a UTC offset, but
         | I'm also weird.
        
       | aplusbi wrote:
       | The `ac` in `actime24` probably means `arrival city`.
        
       | xhkkffbf wrote:
       | On one of the earlier flights with wifi, I found that my Google
       | docs were saving correctly even though I didn't pay for the wifi
       | upcharge. The router wasn't blocking those ports. It seems like
       | this has changed recently. Too bad.
        
       | paul7986 wrote:
       | If you travel lite with clothes in a book bag(wash clothes if
       | extended stay)... I don't see why anyone would fly United,
       | Southwest, American Airlines, etc VS.the budget Airlines like
       | Spirit.
       | 
       | Maybe if you have points with those airlines... Otherwise, save
       | hundreds of dollars using budget airlines which the planes are
       | newer in my experience, and never had a bad experience versus my
       | recent bad experiences with Delta and the others in which I paid
       | a lot more for. Almost all airlines I've had to pay for Internet
       | access, including Spirit so for me, I don't understand why I
       | would fly all the more expensive airlines versus using Spirit.
       | 
       | There's a lot of negative marketing out there about Spirit...
       | After my 10 positive flights experiences in the last six months
       | with them I don't believe the hype.
        
         | paul7986 wrote:
         | Sure for me I fly out of a major hub (Baltimore Washington
         | International) and Spirit flies pretty much to every US city
         | from there.
         | 
         | One thing bad about spirit is their extremely horrible refund
         | policy .. their seats are a bit smaller but not by much.
         | 
         | Thus far in my ten recent experiences flying Spirit with
         | clothes & travel necessities in my book bag has saved me lots
         | of money and my flight experiences have been the same to even
         | better compared to Dekta, United, Alaska or Southwest. Thus the
         | first place I now go to book a flight is spirit due to my
         | experiences and flying out of a major hub.
         | 
         | I hope JetBlue doesn't get the chance to buy them out ...
         | Spirit allows a lot of ppl who couldnt afford to fly enjoy a
         | benefit all should be able too and for me i like saving money!
        
         | dboreham wrote:
         | > I don't see why anyone would fly United, Southwest, American
         | Airlines, etc VS.the budget Airlines like Spirit.
         | 
         | I'm on a spoke (not a hub) and just don't have the service
         | available to use budget airlines even if I wanted to. We have
         | JetBlue -- they fly to Boston and that's it. We have Allegiant
         | and they fly to Phoenix (not really Phoenix -- Mesa), and we
         | have Avelo they they fly to LA (not really LA: Burbank). All
         | these airlines fly one flight per day, and often not every day
         | of the week. When I'm traveling somewhere that works for the
         | budget airlines, I'm still leery because if their plane breaks
         | down or there is "weather in Cincinnati", I'm screwed. They
         | don't have a second plane available.
         | 
         | otoh we have United, Delta, American, Alaska, Southwest with
         | flights to several hubs each, multiple flights per day, through
         | international ticketing, first class sometimes open... Plus I
         | don't pay for luggage on the major carriers due to credit card
         | membership/status.
        
         | itslennysfault wrote:
         | You must have buns of steel. I flew Spirit exactly once (well,
         | twice, it was round-trip), and it was such a miserable
         | experience I swore to never do it again. Their seats are made
         | of concrete as far as I can tell.
         | 
         | For domestic flights I pretty much always sit in the window and
         | never get up during the flight. On spirit I had to get up and
         | walk around after about 3 hours 'cause my ass was sore. Never
         | again.
        
           | paul7986 wrote:
           | Did you have a negative view of Spirit before flying with
           | them?
           | 
           | Not sure about my backside.. don't do squats lol ... 5'10 170
        
             | itslennysfault wrote:
             | Not terribly negative, but yeah I always assumed it was
             | cheap for a reason. I think I'd probably do a 1-2 hour
             | flight on spirit if it was a good deal. Past that I'll
             | spend a little money for a more comfortable flight... Guess
             | I could also just bring a cushion on board with me lol
        
         | cityofdelusion wrote:
         | Just to clarify, Southwest is classified as a budget airline,
         | especially compared to the "big 3". Spirit and airlines like
         | them are in their own class called ULCC (ultra low cost
         | carrier) to differentiate them from the existing budget
         | airlines.
        
         | technothrasher wrote:
         | Sometimes the budget airlines don't fly to where I'm going, or
         | do so by long multi connecting routes. I'm currently sitting on
         | an AA flight because it was the cheapest option with a
         | reasonable travel time. Honestly, it kind of sucks for all the
         | usual reasons, but I've at least got free wifi on my phone
         | through some deal with T-Mobile.
        
       | sswaner wrote:
       | On many United flights you can connect to onboard wifi without
       | buying the plan and have internet access on port 22 and
       | apparently unrestricted UDP. This allows me to connect to an EC2
       | instance running mosh. Coding in vim is a great way to pass the
       | time on a flight.
        
         | system2 wrote:
         | Can't you create an SSH tunnel to a machine and RDP with it?
         | Then you'd have fully functioning internet.
        
       | TrackerFF wrote:
       | Yes, that's standard data which is broadcasted to the passengers
       | via the plane app/website. Usually the apps will have some "show
       | position" feature where you can see position, speed, altitude,
       | ETA, etc.
        
       | ern wrote:
       | Airlines have a moving map on their captive wifi portals. Didn't
       | know it was rendered client side though. Something to try when I
       | next fly.
        
       | latchkey wrote:
       | I was just thinking that you could take a picture from the window
       | and then tie the GPS coordinates to the image with the output
       | from that JSON. Kind of handy.
        
         | jonah wrote:
         | If you have location permissions enabled in your camera app,
         | the image's exif data will have the coordinates in it.
         | 
         | (US Civilian GPS units are prohibited from working above 60,000
         | ft above sea level and 1,000 knots due to ITAR munitions export
         | restrictions.)
        
           | pklausler wrote:
           | Stupid question: how do civilian GPS units know that they're
           | above 60,000' or faster than 1000 knots without, um, working?
        
             | comprev wrote:
             | Maybe they read 60,000 even when at 62,000?
        
             | 0x457 wrote:
             | Well, they work internally, just don't expose information
             | to the outside.
        
           | latchkey wrote:
           | I have pictures from my camera (with location permissions
           | enabled) that don't have any GPS data in it, or at least the
           | data is extremely wrong.
        
             | jonah wrote:
             | I can't help diagnose that for you. There are other ways to
             | get your current location, etc from your phone though.
             | 
             | I have GPS Test[1] on my Android - it's pretty neat to
             | launch it while on a flight - seeing the speed in realtime
             | is pretty fun.
             | 
             | [1] https://play.google.com/store/apps/details?id=com.chart
             | cross...
        
       | dramm wrote:
       | "According to this data, the plane's altitude was only
       | fluctuating by about 20-30 feet. This is more stable than I
       | expected!"
       | 
       | Autopilots are very good and they are servoing to the pressure
       | altitude.
       | 
       | Many pressure altitude encoders used in modern aircraft (for
       | example to drive altitudes that transponders report to SSR radar
       | or via ADS-B) have 25 ft encoding resolution. That 25ft
       | resolution is likely what is being seen here. Other encoders have
       | 10 ft resolution but 25 ft is very common.
        
         | cragfar wrote:
         | No idea how true it is, but I overheard someone on a flight say
         | that whenever you feel a real sudden jolt on a plan it's really
         | only moving like 2-3ft.
        
         | jfim wrote:
         | A plane going up and down 20-30 feet seems like it would be
         | very unpleasant. Considering that there's longitude and
         | latitude, isn't it more likely that the altitude is coming from
         | GPS, which is notoriously inaccurate with regards to elevation?
        
           | altgoogler wrote:
           | When you take off, you're going up at a rate of 500 fpm to
           | 2000 fpm. Even if you go from +1000 fpm to -1000 fpm over the
           | course of several seconds, you aren't going to feel much.
           | 
           | At cruise altitude, you're moving along at 500 mph, which is
           | 777 feet per second. So going from +30 feet to -30 feet in a
           | minute is just an adjustment of only about 5 degrees. You'd
           | barely feel it, even walking down the isle. An acceleration
           | of 33 ft/sec per sec is 1 g.
           | 
           | You experience greater changes in vertical motion on any
           | flight you go on.
           | 
           | *edit: units
        
             | sokoloff wrote:
             | > So going from +30 feet to -30 feet in a minute is just an
             | adjustment of only about 5 degrees. You'd barely feel it,
             | even walking down the isle.
             | 
             | You would pretty obviously feel a change in pitch of 5deg
             | walking down the aisle.
             | 
             | You mixed feet per second and feet per minute. 60 feet of
             | change across 777 feet of run is about 4.5deg (inverse
             | sin(60/777)), such as you'd experience if the change was in
             | 1 second instead of in 1 minute.
             | 
             | Calculating 60' change in 777*60 feet, inverse sin
             | (60/(777*60)) is 0.07deg, which is why you don't feel that
             | change in inclination of the aisle.
        
           | chatmasta wrote:
           | Maybe the plane is staying level but the ground is variable
           | terrain.
        
             | momirlan wrote:
             | it's the Earth vibrating ...
        
             | rockostrich wrote:
             | Elevation is relative to sea level, not the ground.
        
               | funnyflywheel wrote:
               | This only holds true if you're flying at or above the
               | transition altitude. The transition altitude depends on
               | where you're flying: for example, in the USA and Canada
               | it's 18_000 feet MSL.
        
               | danbtl wrote:
               | It's still sea-level. The transition altitude just
               | changes the altimeter setting from one that matches the
               | current air pressure to a standard pressure setting.
        
               | twothamendment wrote:
               | Yes, the elevation is based on sea level. I don't fly
               | much and recently landed in Denver and was watching the
               | altitude on the screen in front of me. As we were
               | descending we landed well before I was thinking we would,
               | about a mile in elevation above sea level.. it was "duh"
               | obvious when it happened, but I was tired and clearly not
               | thinking about it!
        
               | chatmasta wrote:
               | The plane is measuring _altitude_ , which is relative to
               | a reference point, unlike elevation which is relative to
               | sea level. And if the altitude is determined by pressure
               | sensor, musn't it be relative to the ground directly
               | below the plane, anyway?
               | 
               | (Although personally, I agree with the sibling comment
               | that the variability is likely an artifact of the sensor
               | resolution.)
        
               | victortroz wrote:
               | It's relative to sea level. After transition altitude
               | (18k feet in most places) the pressure setting to the
               | altimeter is changed to standard (iirc 1013 hPa) so all
               | aircrafts are in the same reference regardless of
               | terrain.
        
               | epse wrote:
               | Most places in the US, but accurate
        
               | adastra22 wrote:
               | Planes dont measure height relative to the ground. How
               | would that even work? Their sensor is air pressure, which
               | is treated as a function of elevation.
        
               | jjwiseman wrote:
               | They do sometimes! Via radar altimeters, when relatively
               | close to the ground. And sometimes to keep autopilots
               | from freaking out, we have to build radar reflectors to
               | make the ground look level to radar even when it's really
               | not. https://lustublog.com/2017/02/17/artificiel-mais-
               | pas-superfi...
        
               | jjwiseman wrote:
               | When you climb to the top of Mt. Everest, the air
               | pressure is about 1/3 of what it is at sea level even
               | though you're standing on the ground.
        
               | chatmasta wrote:
               | Yeah, you make a very good point. Fortunately the blast
               | radius of my scientific hubris is limited to whatever
               | code I manage to deploy to the internet, and I'm not
               | involved in designing or building aircraft.
               | 
               | btw: Aren't you the guy who tracks planes flying in
               | circles? I follow you on Twitter. Such a cool project!
        
               | quickthrower2 wrote:
               | And using the ground proximity to guide a landing instead
               | of altitude has lead to some crashes I have read.
        
           | danbtl wrote:
           | Planes report pressure altitude via their transponders. 20-30
           | feet up and down is very normal for an autopilot.
           | 
           | GPS altitude is used for vertical guidance for certain types
           | of GPS approaches (i.e. "LPV" approaches[1]) and requires the
           | airplane's avionics to be equipped with a WAAS[2] receiver
           | that provides accurate altitude information.
           | 
           | [1] https://en.wikipedia.org/wiki/Localizer_performance_with_
           | ver...
           | 
           | [2]
           | https://en.wikipedia.org/wiki/Wide_Area_Augmentation_System
        
           | dhritzkiv wrote:
           | 20-30 feet change over what timeframe? The resolution of the
           | chart data in the article is about 30 seconds. While I think
           | the fluctuation is due to the accuracy of instrumentation,
           | 20-30 feet change over the course of a minute seems like
           | nothing.
        
             | xvedejas wrote:
             | That's significantly slower than a typical elevator, in
             | fact. Slow elevators run at about 200 feet per minute.
        
         | jjwiseman wrote:
         | I don't know what sensors are feeding the API from the post,
         | but most passenger jets do broadcast information about the
         | accuracy of their sensed position, including vertical
         | position/altitude. If you click on an aircraft on the map at
         | https://globe.adsbexchange.com/, and scroll the left sidebar
         | all the way to the bottom you'll see a section labeled
         | "Accuracy". ADS-B Exchange doesn't show Rc/v, the vertical
         | position accuracy, but it does show other values. See
         | https://mode-s.org/decode/content/ads-b/7-uncertainty.html for
         | more information.
        
           | ssaannmmaann wrote:
           | I went down a rabbit hole by clicking on
           | globe.adsbexchange.com :)
        
         | yread wrote:
         | I guess they got a lot more precise with implementation of
         | Reduced Vertical Separation Minimum (RVSM) - planes had to be
         | separated by 2000 ft and this was reduced in early 2000s to
         | 1000ft
        
           | ceejayoz wrote:
           | It was probably fairly precise already. To get their license,
           | a private pilot must demonstrate via a checkride the ability
           | to stay within 100 feet of an assigned altitude, even in a
           | steep turn.
        
             | wkipling wrote:
             | Not quite how it works.
             | 
             | These are the instruments we are referring to not the
             | ability of pilots. In fact in RVSM airspace the autopilot
             | must be used.
             | 
             | Instruments must be very accurate given the reduced
             | separation in RVSM airspace. Often on modern aircraft
             | multiple altimeters are compared and voted to provide a
             | single output provided to the displays and autopilot.
        
               | ceejayoz wrote:
               | That's missing the point.
               | 
               | If a human can manage to keep it within 100 feet of a
               | desired altitude, an autopilot most certainly can; it
               | didn't require new technology in the 2000s. Autopilots in
               | the 1960s/1970s weren't seesawing all over the skies.
        
               | sokoloff wrote:
               | RVSM is overwhelmingly about instrumentation accuracy and
               | precision, not pilot capability. [0]
               | 
               | The pressure difference between 5K MSL and 10K MSL at
               | standard conditions is 14.6 kPa.
               | 
               | The pressure difference between 30K MSL and 35K MSL at
               | ISA is 6.3 kPa.
               | 
               | For a given amount of aircraft-to-aircraft variability in
               | their precision altitude sensing equipment, the resulting
               | difference in actual altitude is more than double in RVSM
               | airspace than in the lower altitude range above.
               | 
               |  _That 's the reason for RVSM_: there is less change in
               | pressure with change in altitude, coupled with a very
               | busy altitude range (such that controllers would have an
               | operational need to pass traffic overhead with only
               | vertical separation rather than being able to use
               | vectoring to achieve lateral separation between
               | aircraft).
               | 
               | It's not a linear relationship, but if I take an airplane
               | with a 0.75 kPa absolute error in one direction and pass
               | traffic with a 0.75 kPa absolute error in the other
               | direction 1000' indicated above them, at low altitude,
               | that 1.5 kPa total error is a little over 500 feet while
               | IFR-IFR separation is 1000 feet minimum outside of RVSM.
               | (These aircraft would likely be right on the border of
               | passing a non-RVSM static system check.)
               | 
               | If I take those same two aircraft into the mid flight
               | levels and pass one over the other at 30K and 31K feet,
               | the total error is around 1200 feet, which is why non-
               | RVSM aircraft cannot be separated by 1000 feet in RVSM
               | airspace, because you don't know that they'll miss each
               | other.
               | 
               | Improve the accuracy and precision of the static system
               | and improve the examination criteria, making the airplane
               | RVSM-capable, and now you can pass that traffic over each
               | other at 1000' of indicated separation and be sure
               | they'll miss.
               | 
               | [0] - There is a pilot training requirement, which is
               | focused on knowing the rules for RVSM and does not
               | involve a checkride.
        
               | ceejayoz wrote:
               | Still missing the point.
               | 
               | You're talking about getting different aircraft to agree
               | between each other.
               | 
               | The post upthread expressed surprise at an aircraft
               | maintaining a steady altitude to within tens of feet.
               | That's been a thing for many decades.
        
         | GuB-42 wrote:
         | I have read somewhere that so much precision could actually be
         | dangerous in some circumstances.
         | 
         | This is because this way, if a pilot goes 3000 ft for instance,
         | it will be exactly 3000 ft, if another pilot also wants to go
         | 3000 ft on a collision trajectory, it will be a guaranteed
         | collision. When altitudes are not that accurate, there is a
         | higher chance it being just a near miss. The solution, I think,
         | was to simply avoid round numbers. So now, it is 2950 ft, 3050
         | ft,...
         | 
         | I may have the details wrong, but I am quite sure about that
         | problem being seriously considered.
        
       | wesapien wrote:
       | What software did you use to do the visuals? I want to try this
       | out.
        
         | jamesbvaughan wrote:
         | I used chart.js [0], but I don't necessarily endorse it - it's
         | just what I knew how to use quickly. I usually try to keep my
         | posts free from javascript, and could have used a different
         | tool that gives me SVG data or images.
         | 
         | You can see the code that's generating these charts here:
         | https://github.com/jamesbvaughan/jamesbvaughan.com/blob/main...
         | 
         | [0] https://www.chartjs.org/
        
       | fer wrote:
       | I belive this is OPs flight if anyone wants to compare plane data
       | with ADS-B one.
       | 
       | https://www.flightaware.com/live/flight/SWA2340/history/2023...
        
         | schoen wrote:
         | Conceivably, the ADS-B data source might be the same as the
         | data source for this API, at least in that they might be
         | calculated from the same instruments and flight systems.
        
         | jamesbvaughan wrote:
         | That is the flight. This is a cool idea - I wish I had thought
         | of it!
        
       | hocuspocus wrote:
       | The speed unit looks more like knots than mph.
        
         | jamesbvaughan wrote:
         | Good catch! I'm not very familiar with knots - what
         | specifically makes the speeds here look like knots to you?
         | 
         | edit: Updated the article. Thanks!
        
           | KolmogorovComp wrote:
           | Airline planes never use mph but only knots.
        
             | capableweb wrote:
             | Well, most airlines. I think both China and Russia already
             | switched to SI units (so km/h), and supposedly ICAO
             | recommends using km/h but there is exception for using
             | knots and there is also no end date to stop using knots, so
             | everyone just continues to use knots.
        
               | seabass-labrax wrote:
               | It's not that they 'already switched', but rather that
               | early Russian aircraft had used the metric system for
               | instruments and China acquired much of their early
               | aircraft from the USSR.
               | 
               | In the West, it was well into the 50s before knots became
               | conventional. Many (but not all) British and American
               | aircraft used miles per hour, and most of non-communist
               | mainland Europe used the metric system. I am not aware of
               | whether there was some agreement to choose knots, but by
               | the 60s almost all western aircraft had instruments in
               | knots and nautical miles.
        
             | [deleted]
        
             | jamesbvaughan wrote:
             | That makes sense.
             | 
             | One reason I think it could be MPH despite that is because
             | some of the other data seems like it's been processed so
             | that it doesn't need to be transformed any further on the
             | client side before using it in the UI, and the UI displays
             | the speed in MPH.
             | 
             | If I were still on the flight, I could just compare the
             | numbers in these payloads to the MPH number in the UI and
             | confirm.
        
               | mulmen wrote:
               | Based on the lat/long of your destination and the
               | coordinates of the plane I believe the distance and speed
               | actually are in miles and mph:
               | https://news.ycombinator.com/item?id=37694487
        
           | hocuspocus wrote:
           | Your ground speed plot hovering around 500 mph would be ~800
           | km/h which is oddly slow for an airliner, unless you were
           | facing strong headwinds the entire way.
           | 
           | The nautical mile is historically the common unit for marine
           | and air navigation.
        
             | scatters wrote:
             | Clarification: a knot is one nautical mile per hour.
        
               | JoeAltmaier wrote:
               | Isn't it 1.15mph?
               | 
               | https://www.metric-conversions.org/speed/knots-to-miles-
               | per-...
        
               | jdsnape wrote:
               | Yes for statute miles, but it is also one nautical mile
               | per hour
        
               | toyg wrote:
               | nautical mile is 1.15 land mile.
        
           | chx wrote:
           | 487 miles per hour would only be 0.63 Mach which is very
           | slow.
           | 
           | 487 knots would be 0.73 Mach which is much closer to the rule
           | of thumb 0.78 Mach cruise speed expected.
           | 
           | https://krepelka.com/fsweb/learningcenter/aircraft/flightnot.
           | .. (and yes, it's a simulator but it's still good for real
           | world)
        
             | mulmen wrote:
             | Mach is a product of altitude and we only have ground speed
             | so we'd need weather information and heading to compare.
        
           | hocuspocus wrote:
           | Sorry it seems I was completely wrong, it's MPH, your ground
           | speed was on the slow end:
           | 
           | https://www.flightradar24.com/data/flights/wn2340#322ad9f6
        
           | kvmet wrote:
           | Knots are typically used for aviation. Also different planes
           | have their own optimal speeds for efficiency that the
           | airlines aim for so if you know the airframe you can derive
           | what they are most likely targeting. You can also compare the
           | value to the filed flight plan and see if it is similar.
        
             | dclowd9901 wrote:
             | Knots are used for aviation, but this data looks like it's
             | being consumed by the in-flight UI, and most _people_ are
             | not familiar with knots in terms of speed. Indeed, using
             | the UI shows MPH vs. knots. My money is this speed being
             | mph.
        
         | dclowd9901 wrote:
         | I don't think so. When you use the portal, it displays speed in
         | MPH -- I highly doubt there's some knots->mph converter in the
         | frontend code.
        
           | mulmen wrote:
           | I have been on (international?) flights where the in-flight
           | display gave me a choice. It may still be done on the backend
           | but doing that kind of conversion in the UI is at least
           | arguable.
        
         | jandrese wrote:
         | I'm not so sure. The same data packet claims that the flight
         | has 2h 25m of flight time left to cover 1167 miles. That works
         | out to 483 mph, which is pretty close to the stated 487 and
         | might be explained by some padding added to the time to account
         | for taxiing.
         | 
         | Unless that 1167 figure is in a different unit it doesn't even
         | come close to working out at 487 knots ground speed.
        
           | mulmen wrote:
           | Coming at this another way:
           | 
           | The blog says the destination was Oakland. The Oakland
           | International Airport is at 37deg43'17''N 122deg13'15''W. The
           | data packet also contains the current lat and long of the
           | flight as 40.201 and -100.755 respectively. Plugging that in
           | to a distance calculator [2] gives 1163 miles, 1010.6
           | nautical miles, or 1871.6km. So the distance value of 1167
           | appears to be miles.
           | 
           | At 487mph covering 1163 miles would take 2.3963039014 hours
           | or ~2h23m. If the speed is knots then it would be
           | 2.08233112598 hours or ~2h5m at 560.4296mph. So mph makes the
           | most sense given an estimated time of arrival of 2h25m.
           | 
           | So I think you are right, the distance appears to be miles
           | and the speed MPH. This makes sense for an in-flight
           | infotainment system on a US domestic flight.
           | 
           | The difference between 1167 and 1163 can probably be
           | explained by the fact that the plane is 6.5 miles in the air
           | traveling at 8 miles per minute and we don't know update
           | interval or if the distance is in the air or on the ground.
           | 
           | [1]: https://geohack.toolforge.org/geohack.php?pagename=Oakla
           | nd_I...
           | 
           | [2]: https://www.omnicalculator.com/other/latitude-longitude-
           | dist...
        
             | [deleted]
        
           | hocuspocus wrote:
           | My bad, you're right
           | https://www.flightradar24.com/data/flights/wn2340#322ad9f6
        
           | apendleton wrote:
           | ... I mean, it could be in nautical miles, no?
        
           | [deleted]
        
       | jackconsidine wrote:
       | Love the spirit of this article. The author could have Git-
       | scraped [0] this info!
       | 
       | https://simonwillison.net/2020/Oct/9/git-scraping/
        
         | jamesbvaughan wrote:
         | This is cool - thanks for sharing
        
       | TheHappyOddish wrote:
       | For those not in (I presume) the US, "Southwest" appears to be
       | the name of an airline. I was disappointed to find out this
       | wasn't a puzzle to solve when only travelling in a specific
       | direction, but still an interesting read.
        
       | Thaxll wrote:
       | Reminds me how old and unsecure those system used to be, years
       | ago they would perform DNS queries but block most traffic,
       | meaning that you could get free internet by using DNS tunneling.
       | 
       | Same for the movies on board, if they have some apps and not just
       | movies in front seat, you can use vlc, ffmpeg to download / watch
       | the movie without ads / interruption.
       | 
       | When I was doing some digging they used a lot of Panasonic
       | solution and open source stuff such as squid cache, apache http.
       | 
       | https://na.panasonic.com/ca/industries/avionics
        
       | amacalac wrote:
       | Reminds me of the time I dumped CANbus data off a Yamaha R1 bike,
       | made sense of the data, and displayed it on a bunch of charts.
       | 
       | Interesting data like Accelerator Handle position, you can figure
       | out how much a rider is really cranking it, and how aggressive
       | they are riding.
        
         | jasonjayr wrote:
         | ... Which is precisely the data those data loggers you plug in
         | from insurance companies track to adjust/refine your rates
         | .....
        
           | mikepurvis wrote:
           | Honestly, it seems pretty fair to me. If I'm a careful,
           | occasional driver, and the insurance company otherwise has no
           | way of knowing that, then they have to bill me like I'm
           | commuting every day in stop and go traffic, distracted by
           | podcasts and who knows what else.
           | 
           | There will probably always be a "premium" market for no-
           | questions-asked insurance, but if the company can give me a
           | break on my rate based on my driving behaviours correlating
           | to a lower incident likelihood, I'll happily take that break.
           | Even better if such measures correspond to drivers across the
           | board adjusting their habits now that it hits them directly
           | in the wallet.
        
             | jasonjayr wrote:
             | At it's face, yea, it sounds fair, and the more data you
             | feed to the actuarial tables, the more accurately they can
             | identify the specific cost of insuring that driver.
             | 
             | My concern is that it's a tragedy of the commons type
             | situation: this normalizes data surveillance. We have no
             | idea exactly what data the device is transmitting, and what
             | the insurance company will do with that data. Regulations
             | protecting this data are weak-to-non existent.
             | 
             | With everyone's budget being stressed, people are quick to
             | trade a few dollars to sacrifice privacy, and then this
             | technology is being mandated everywhere.
        
               | mikepurvis wrote:
               | Fair, though given that manufacturers are already doing
               | this stuff anyway, it feels like a problem to be solved
               | with broader privacy legislation than by making good
               | drivers pay for the cost of bad drivers.
               | 
               | On the other hand, I suppose I'm a bad person to make
               | this argument since I actually dislike personal
               | automobiles for a whole host of reasons, so I'd just as
               | soon get back my privacy by walking, cycling, and using
               | mass transit.
        
           | LesZedCB wrote:
           | I did one of those once and tried for three months to drive
           | really carefully.
           | 
           | in Boston.
           | 
           | it basically broke me and my driving sanity for 6+ months and
           | made me a really worse driver for a while, maybe
           | permanently?? and my rate basically didn't change at all.
        
       | mvkel wrote:
       | Love this kind of stuff.
        
       | MayeulC wrote:
       | Ah, interesting. I guess this could be used by UnifiedNLP:
       | https://f-droid.org/en/packages/de.sorunome.unifiednlp.train...
       | 
       | Also, KDE Itinerary:
       | https://invent.kde.org/pim/itinerary/-/blob/master/src/app/S...
       | 
       | I'm off pinging the relevant projects :)
        
       | bowsamic wrote:
       | What a waste of time
        
       | mavili wrote:
       | Almost a duplicate, but actually not:
       | https://news.ycombinator.com/item?id=37692832
        
       | sciencerobot wrote:
       | Just make sure to never send a PATCH request
        
         | jamesbvaughan wrote:
         | Considering how delayed that flight was, I'd have loved to be
         | able to PATCH the `dist_remain` field.
        
       | hackmiester wrote:
       | Here is how to get the equivalent data on a Delta flight.
       | $ curl https://wifi.delta.com/api/flight-data | jq           %
       | Total    % Received % Xferd  Average Speed   Time    Time
       | Time  Current                                          Dload
       | Upload   Total   Spent    Left  Speed         100   448  100
       | 448    0     0   5600      0 --:--:-- --:--:-- --:--:--  5743
       | {           "timestamp": "2023-07-11T14:54:41Z",           "eta":
       | "17:48",           "flightDuration": 278,
       | "flightNumber": "DAL786",           "latitude":
       | 39.723472595214844,           "longitude": -97.1514205932617,
       | "noseId": "3879",           "paState": false,
       | "vehicleId": "N879DN",           "destination": "KPDX",
       | "origin": "KATL",           "flightId":
       | "N879DN_SF_20230711121358",           "airspeed": null,
       | "airTemperature": 24,           "altitude": 33922,
       | "distanceToGo": 179,           "doorState": "Closed",
       | "groundspeed": 442,           "heading": -73,
       | "timeToGo": 174,           "wheelWeightState": "Off"         }
       | 
       | And a fun snippet for you.                   $ curl -s
       | https://wifi.delta.com/api/flight-data | jq -r
       | '"https://maps.google.com/?q=", .latitude, ",", .longitude' | tr
       | -d '\n'; echo
       | https://maps.google.com/?q=40.5615234375,-101.2824478149414
        
         | denvaar wrote:
         | What makes it so that you can only resolve the host
         | wifi.delta.com during a flight?
        
           | gsk22 wrote:
           | I assume the DNS server on the in-flight router is programmed
           | to resolve that hostname to some local device.
           | 
           | Similar to how I can log into my ASUS router from my home
           | wifi by visiting asusrouter.com.
        
         | c7DJTLrn wrote:
         | It would be nice if you could send a POST request to open the
         | door if you want some fresh air.
        
           | hackmiester wrote:
           | I tried to change the flight level by PATCHing altitude, but
           | it seemed to require authentication. Oh well.
        
             | CamperBob2 wrote:
             | This sounds like a good way to meet some upset people with
             | expensive sunglasses shortly after you land.
        
               | [deleted]
        
               | jmharvey wrote:
               | It's not like that at all. The sunglasses aren't that
               | expensive.
        
               | hackernewds wrote:
               | after you land also open to interpretation
        
             | ComputerGuru wrote:
             | Maybe you can take risks like that, but I certainly can't.
             | I don't think anyone with my name or skin color would be
             | given the benefit of the doubt for even a moment.
        
               | thomashop wrote:
               | Your comment made my day. Eye opening
        
           | queuebert wrote:
           | You probably can. I suspect airliner software is appallingly
           | insecure.
        
             | epse wrote:
             | Relies very strongly on simple airgapping. Can't do
             | anything to it if there's no wires in the direction you
             | want. Can't remotely hack if there's nothing antenna
             | connected that can talk to flight control. It has the
             | luxury of not needing to do the "limited RCE" that is a
             | modern web request
        
           | hk1337 wrote:
           | Someone will probably figure out how to send a request to
           | disable auto-pilot or turn off the fasten seat belt sign.
        
             | naikrovek wrote:
             | the airline industry is nowhere nearly as stupid as the
             | software industry with things like this.
             | 
             | the communication between plane and wifi/entertainment
             | system, if there is any, is _almost certainly_ one-way.
             | likely, the wifi system providing this info is receiving
             | data from the flight systems and repeating it or
             | transforming it a bit and providing that.
             | 
             | it would not surprise me at all if the flight attendants
             | have to program everything about the flight into the system
             | prior to departure each flight, and there is no
             | communication from the aircraft at all.
        
               | jpalomaki wrote:
               | "The computer network in the Dreamliner's passenger
               | compartment, designed to give passengers in-flight
               | internet access, is connected to the plane's control,
               | navigation and communication systems, an FAA report
               | reveals." [1]
               | 
               | (I guess there's some kind of firewall, but we know that
               | those are not always perfect)
               | 
               | [1] https://www.wired.com/2008/01/dreamliner-security/
        
               | eep_social wrote:
               | IIRC the in-flight infotainment systems are entirely
               | separate from the avionics control systems at the data
               | layer. I recall being told that in some cases even the
               | flight status is actually pulled from a 3p api service
               | rather than hooked into the onboard avionics.
               | 
               | There could be some fuckery via shared power or other
               | non-data systems but that's probably beyond someone
               | sitting in a seat with standard laptop hardware.
        
               | hackmiester wrote:
               | If the latter was true, then "wheelWeightState" (and
               | others) would not work. But, they do work.
        
               | chaps wrote:
               | Might be one way, but that doesn't mean you can't DDoS it
               | (by accident or otherwise).
        
           | pwillia7 wrote:
           | DELTE
        
           | fnord77 wrote:
           | Please stand by, a DHS agent will be with you shortly
        
         | remram wrote:
         | You can use jq's string interpolation feature to simplify this:
         | $ curl -s https://wifi.delta.com/api/flight-data | jq -r
         | '"https://maps.google.com/?q=\(.latitude),\(.longitude)"'
        
           | hackmiester wrote:
           | Thanks! I was trying to figure this out but I didn't have
           | great Internet access (for some reason...) so I just hacked
           | it instead.
        
         | [deleted]
        
         | bunabhucan wrote:
         | > "airspeed": null
         | 
         | [nervously looks out window]
        
         | PNWChris wrote:
         | I have nothing insightful to add, I just want to say thanks for
         | posting this!
         | 
         | I'm on a flight right now and just went to this URL. Sure
         | enough, it works!
         | 
         | I know this information is available via the wifi portal's UI,
         | but a JSON blob just hits different.
         | 
         | ```
         | 
         | {"timestamp":"2023-09-28T21:57:39Z","eta":"23:45","flightDurati
         | on":164,"flightNumber":"DAL992","latitude":47.4557876586914,"lo
         | ngitude":-111.73490905761719,"noseId":"3883","paState":false,"v
         | ehicleId":"N883DN","destination":"KMSP","origin":"KSEA","flight
         | Id":"N883DN_SF_20230928195737","airspeed":null,"airTemperature"
         | :null,"altitude":35273,"distanceToGo":13,"doorState":"Closed","
         | groundspeed":499,"heading":95,"timeToGo":107,"wheelWeightState"
         | :"Off"}
         | 
         | ```
         | 
         | Apologies for the JSON formatting, I'm on mobile.
        
         | eddieroger wrote:
         | Interesting how they chose to make more general `vehicleId`
         | instead of `planeId` or `tailNumber` or something. I wonder if
         | Delta's fleet includes other things that have matching APIs to
         | this one. I also wonder how much of their internal system
         | structure one could learn from the `flightId` if they knew
         | about other systems. It doesn't look like much beyond a
         | composite key of otherwise knowable data, but still
         | interesting.
        
           | blcknight wrote:
           | I doubt Delta made this. It's an official the shelf product
           | that can do ships, trains, planes, etc.
        
             | eddieroger wrote:
             | Valid point. It makes a lot of sense in that light instead.
        
             | mulmen wrote:
             | But they also have airplane/flight specific identifiers
             | like "flightNumber", "flightId", "noseId(?)" and
             | "airSpeed". Maybe vehicleId is part of a base class or
             | primary key somewhere and that abstraction is leaking.
        
               | hackmiester wrote:
               | Hey, a train has airspeed. :)
        
               | mulmen wrote:
               | Heh, true. I deliberately left out altitude because this
               | is HN but you caught me anyway.
               | 
               | Presumably a train's groundSpeed and airSpeed are the
               | same. If they diverge you have bigger problems than a
               | JSON schema.
               | 
               | Is there a variant of this for ships? surfaceSpeed vs
               | seaFloorSpeed?
        
               | wasmitnetzen wrote:
               | A train can easily run in a head- or tailwind in the same
               | order of magnitude as its groundspeed.
        
         | CommieBobDole wrote:
         | As always, there's a relevant XKCD:
         | 
         | https://xkcd.com/2170/
        
       | not2b wrote:
       | But SouthWest will give you a much prettier display of that same
       | data (track your flight, see the current altitude and ETA, and a
       | lot more, like the plane's position on the map) without paying
       | for their WiFi. My guess is that they are using the same data
       | that article writer wrote a program to process. Essentially there
       | is one site you can visit for free and that's where it is.
        
         | jamesbvaughan wrote:
         | Yep, that's exactly right! They have a nice status page that
         | you can visit free of charge that visualizes this data.
         | 
         | I chose to scrape it for a couple reasons:
         | 
         | 1. I wanted see all of the data for the entire flight - that
         | status page only visualizes the current values.
         | 
         | 2. It was fun!
        
           | fragmede wrote:
           | Plus there's no Internet. What're you going to do, read a
           | book?
        
         | coffeebeqn wrote:
         | I was on some US flight recently - maybe Alaskan airlines - and
         | they basically had a LAN box with movies and shows accessible
         | on wifi without internet access
        
       ___________________________________________________________________
       (page generated 2023-09-28 23:00 UTC)