22

Bug Report

Summary

For some reason Ubuntu loses track of the IP address associated with the router URL that processes the login to the router. I posted an answer that addresses this. Look for the IP address of the router on your phone and put that in /etc/hosts under the name that is attempting to process your router login. That solved it for me. There are other answers as well in case the SB setup is different where you are at.

Details

One post I found on my phone said to add the host IP of the connection service to /etc/hosts. The url displayed in the browser address bar is:

https://sbux-portal.globalreachtech.com/check?cmd=login&mac=a0:88:39:65:f0:cc&essid=Google%20Starbucks&ip=172.31.98.108&apname=24%3Ade%3Ac6%3Ace%3A49%3Af6&apmac=24%3Ade%3Ac6%3Ace%3A49%3Af6&vcname=S17730-VC&switchip=aruba.odyssys.net&url=http%3A%2F%2Fdetectportal.firefox.com%2Fsuccess.txt

So I did that, but the result is the same. Any ideas? Starbucks is the only WIFI I cannot connect to.

Please update us if you know when Google WIFI / Starbucks has fixed this issue.

I tried using a different mac address using macchanger:

Permanent MAC: a0:88:69:15:f0:cc (Intel Corporate)
New MAC:       00:11:22:33:44:55 (CIMSYS Inc)

However that did not work.

Today April 18 I tried a completely different laptop and I'm still getting the same hangup. The message says:

 Error resolving "aruba.odyssys.net": Name or service not known.

So so far nothing is working for me. Been on contact with both Starbucks WIFI support and their general customer support and so far no one can provide an estimate on when or if ever this will be fixed. Starbucks support gave me this reference number:

 180413-010073 

They said to call Wifi support and give the the number and they will fix this. When I did Wifi Support said they don't need the number and there's nothing they can do. For a company that goes out of it's way to provide great customer experiences this is pretty sad. It's been over a month since they rolled this out and still no fix.

error resolving message

When attempting to connect in a browser this is the url it redirects to and hangs https://aruba.odyssys.net/cgi-bin/login.

Update

Also tried using my phone MAC address today. It did not work. The Starbucks Wifi thought I was a new laptop, and so it opened the initial splash page signup again, but after completing the entries it still hangs on https://aruba.odyssys.net/cgi-bin/login.

3
  • 1
    This affects 18.04 bionic beaver, too. May 9, 2018 at 19:03
  • the accepted work-around has worked for me in the past, but now on 19.10, the same problem occurred, but it seemed to be because chrome didn't open the captive portal login page, however, if I launched firefox, it did give me the notice that the network required login and I was then able to continue. (ymmv)
    – michael
    Jan 12, 2020 at 2:28
  • I would post that on the same bug report.
    – Ole
    Jan 12, 2020 at 2:52

6 Answers 6

22

The problem in my case is that Ubuntu does not know how to access https://aruba.odyssys.net/cgi-bin/login. The host aruba.odyssys.net is the WIFI router.

The Work Around

  • Find the IP address of that router and add it to /etc/hosts.
  • In some situations you might need to also add a line to /etc/resolv.conf.

Detailed Steps

  1. Find the router ip - in a terminal run:

    ip route
    

    (Example output: default via 172.31.98.1)

  2. Edit the file by running sudo nano /etc/hosts to add the line:

    172.31.98.1 aruba.odyssys.net
    
  3. Optional? sudo nano /etc/resolv.conf to add the line before any other nameserver entries:

    nameserver 172.31.98.1
    

After that the connection goes through without a hitch.

Bug Report

The problem seems to be bug report: 1766969.

7
  • 1
    This worked for me, good catch Apr 25, 2018 at 19:25
  • 2
    It looks like the hotspot uses Google's DNS for DNS, which is no surprise. This is what 8.8.8.8 responds for aruba.odyssys.net: host aruba.odyssys.net 8.8.8.8 Using domain server: Name: 8.8.8.8 Address: 8.8.8.8#53 Aliases: aruba.odyssys.net has address 172.31.98.1 So it should resolve, regardless of this change, however this change to the /etc/hosts file fixes the problem. Apr 25, 2018 at 19:33
  • 2
    It's important to realize that the 172.31.98.1 address is an internal network WIFI router address. So it's accessible from inside the starbucks store only and there is no DNS for it that Ubuntu can see apparently.
    – Ole
    Apr 25, 2018 at 22:41
  • 2
    One can find the WiFi router IP address from Ubuntu directly (no need to go to a separate device like a phone) — while connected (yet not able to get to the “you’re connected” webpage), just go to your (Ubuntu) WiFi settings for this connection, and it shows your IP address & DNS ignore these) and your “Default Route”, typically ending in “.1”, which also happened to be 172.31.98.1 for me (Note again: this is the router, and hence not public, not returned via DNS servers).
    – michael
    May 11, 2018 at 2:47
  • 1
    Seems to be bug 1766969 which is stalled, probably because few people have clicked that it affects them (at the top of that page). May 11, 2018 at 17:30
6

Spoke to google Wifi support about this. There is a known problem with the Starbucks splash page if you register more than one device with the same email address. The first device you register will work but not the second one. If you can use a cloned MAC address on your wireless card you can get to the registration page again and use a different email address.

4
  • Did they mention whether they have any plans to fix this?
    – Ole
    Apr 9, 2018 at 21:29
  • Is using a cloned MAC address an easy thing to do? I saw some articles, but they are pretty dated, so I don't know whether that's something that's now easy to do or something that's usually impossible ...?
    – Ole
    Apr 9, 2018 at 22:18
  • I tried using a different mac address with macchanger but that did not work.
    – Ole
    Apr 13, 2018 at 21:37
  • Tried using a brand new ubuntu laptop, and registering a random email address and the problem is still the same.
    – Ole
    Apr 20, 2018 at 13:23
3

whois is not the right tool to lookup addresses, and it mostly deals with domain names anyway. To find IPs, use nslookup or dig or even ping:

>dig sbux-portal.globalreachtech.com

; <<>> DiG 9.10.3-P4-Ubuntu <<>> sbux-portal.globalreachtech.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36541
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 4, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;sbux-portal.globalreachtech.com. IN    A

;; ANSWER SECTION:
sbux-portal.globalreachtech.com. 14121 IN CNAME sbux-portal.odyssys.net.
sbux-portal.odyssys.net. 1521   IN      CNAME   wlb1.us-east-1.sbux-portal.globalreachtech.com.
wlb1.us-east-1.sbux-portal.globalreachtech.com. 14121 IN CNAME wlb1-1579773356.us-east-1.elb.amazonaws.com.
wlb1-1579773356.us-east-1.elb.amazonaws.com. 1521 IN A 52.55.178.64
wlb1-1579773356.us-east-1.elb.amazonaws.com. 1521 IN A 34.233.215.66

;; AUTHORITY SECTION:
us-east-1.elb.amazonaws.com. 1214 IN    NS      ns-1119.awsdns-11.org.
us-east-1.elb.amazonaws.com. 1214 IN    NS      ns-1793.awsdns-32.co.uk.
us-east-1.elb.amazonaws.com. 1214 IN    NS      ns-235.awsdns-29.com.
us-east-1.elb.amazonaws.com. 1214 IN    NS      ns-934.awsdns-52.net.

;; Query time: 59 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Mon Apr 09 21:50:10 CEST 2018
;; MSG SIZE  rcvd: 346

>nslookup sbux-portal.globalreachtech.com
Server:         127.0.1.1
Address:        127.0.1.1#53

Non-authoritative answer:
sbux-portal.globalreachtech.com canonical name = sbux-portal.odyssys.net.
sbux-portal.odyssys.net canonical name = wlb1.us-east-1.sbux-portal.globalreachtech.com.
wlb1.us-east-1.sbux-portal.globalreachtech.com  canonical name = wlb1-1579773356.us-east-1.elb.amazonaws.com.
Name:   wlb1-1579773356.us-east-1.elb.amazonaws.com
Address: 52.55.178.64
Name:   wlb1-1579773356.us-east-1.elb.amazonaws.com
Address: 34.233.215.66

>ping -c 1 sbux-portal.globalreachtech.com
PING wlb1-1579773356.us-east-1.elb.amazonaws.com (34.233.215.66) 56(84) bytes of data.
^C
--- wlb1-1579773356.us-east-1.elb.amazonaws.com ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

(ping will additionally confirm if the side is reachable, but not getting an answer can also mean that the site doesn't respond to ping requests).

3
  • How does this otherwise well written answer relate to the question? I can't find anything in the history of the question that mentions using whois. Apr 20, 2018 at 21:44
  • 1
    See source of revision 1: "When I try to lookup the ip of sbux-portal.globalreachtech.com I get: ole@mki:~$ whois sbux-portal.globalreachtech.com
    – xenoid
    Apr 20, 2018 at 22:03
  • Thanks for pointing that out, I missed it when I looked at the edit revisions. Apr 20, 2018 at 22:19
3

success: 1. got my phone (android) working at Starbucks by filling out the login page.

  1. found the phone mac by using Network Info II android app.

  2. turned off the phone wifi and laptop wifi (e.g. ifconfig wlan0 down as root or via sudo)

  3. used macchanger -m ##:##... wlan0 (as root or via sudo) to set the android mac on the linux laptop.

  4. reconnected laptop to Starbucks SSID to connect laptop directly with no login page

7
  • So you used your phone's mac address to bypass the check?
    – Ole
    Apr 18, 2018 at 1:26
  • this worked for me!
    – atmelino
    Apr 18, 2018 at 2:11
  • Brought a brand new laptop to SB ... it can't connect either.
    – Ole
    Apr 18, 2018 at 22:50
  • 1
    I have now tried with the phone mac address and with an ipad mac address. When I tried to make up a mac address (Apple, following convention by manufacturer so -- macchanger -l | grep Apple | head -1 0916 - 00:03:93 - Apple , it let me set up a new user (I used a real email address) but then didn't let me connect afterwards.
    – nuer
    Apr 19, 2018 at 12:42
  • 1
    Also note that you will want to use the command line since if you use a GUI for DHCP (to get IP#) it may reset the card to the permanent mac. E.g. ifconfig wlan0 down; macchanger -m ..:..:..:... wlan0; ifconfig wlan0 up; dhclient -v wlan0 (use ifconfig to see if you're using wlan0 or wlan1 or other)
    – nuer
    Apr 19, 2018 at 12:49
2

Since this is a DNS resolution issue. I decided to take a look at what Ubuntu is doing to resolve that name:

dig aruba.odyssys.net

; <<>> DiG 9.10.3-P4-Ubuntu <<>> aruba.odyssys.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 1821
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;aruba.odyssys.net.     IN  A

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Apr 27 15:50:04 PDT 2018
;; MSG SIZE  rcvd: 46

So that failed and it is using 127.0.0.53 as nameserver. I checked my phone, which was able to connect, for the DNS server it is using. Turned out to be 8.8.8.8 followed by 8.8.4.4, which makes sense for a Google network. Sure enough:

dig @8.8.8.8 aruba.odyssys.net

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @8.8.8.8 aruba.odyssys.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 52482
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;aruba.odyssys.net.     IN  A

;; AUTHORITY SECTION:
odyssys.net.        899 IN  SOA ns-543.awsdns-03.net. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400

;; Query time: 46 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Fri Apr 27 15:49:23 PDT 2018
;; MSG SIZE  rcvd: 127

That obviously worked! So I edited my /etc/resolv.conf adding

# nameserver 127.0.0.53 # comment out the local cache.
nameserver 8.8.8.8
nameserver 8.8.4.4

And behold, I was able to connect by opening firefox and triggering the login page again.

You are specifically told not to edit /etc/resolv.conf by systemd-resolved. But I think this is its fault anyway.

2
  • 1
    Fixed my issue by following these instructions, but since my resolve.conf file says I should not manually change it I applied the nameserver changes in my dhclient.conf per this comment: askubuntu.com/a/134106/547235
    – Gerik
    May 20, 2018 at 23:23
  • It's resolv.conf, not resolve.conf. I point this out because it can easily lead to problems when editing in the terminal with nano.
    – Adam Smith
    Nov 4, 2018 at 20:55
1

I tried the advice listed in all of the other answers without success. Here is how I finally got it working:

  1. Disable your laptop's wireless card.
  2. Connect to the WiFi network via your phone and sign in.
  3. Use macchanger to set your laptop's wireless interface MAC address to your phone's MAC address:

sudo macchanger -m [your phone's MAC] [your wireless interface]

  1. Enable your laptop's wireless card.
  2. Connect to the WiFi network via your laptop. It will connect without prompting for login, but the internet connectivity will be glitchy, until you…
  3. Disconnect from the WiFi network on your phone.

You should now have a stable WiFi and internet connection on your laptop.

If you skip Step 2, the network will detect your spoofed MAC address, but, because you're not yet connected, it will take you to the relogin page instead of the login page—both of which fail to load properly. So, the trick is to first connect using your phone.

This has worked for me several times now at several different locations. I hope it helps!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .