Broken DNS when using Three UK mobile internet (17.04 zesty)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
When connected via 4G to Three/3 (UK), DNS lookups fail (though the internet is otherwise working).
The connection receives the correct DNS servers, but as far as I can work out systemd-resolve is unaware of them.
Connection info screenshot is attached.
DNS lookups time out:
$ nslookup www.bbc.co.uk
;; connection timed out; no servers could be reached
However they work when manually specifying the DNS server:
$ nslookup www.bbc.co.uk 217.171.132.0
Server: 217.171.132.0
Address: 217.171.132.0#53
Non-authoritative answer:
www.bbc.co.uk canonical name = www.bbc.net.uk.
Name: www.bbc.net.uk
Address: 212.58.246.54
Name: www.bbc.net.uk
Address: 212.58.244.26
Connections to IP addresses work (though redirect to a Three page at present):
$ curl http://
* Rebuilt URL to: http://
* Trying 212.58.246.54...
* TCP_NODELAY set
* Connected to 212.58.246.54 (212.58.246.54) port 80 (#0)
> GET / HTTP/1.1
> Host: 212.58.246.54
> User-Agent: curl/7.52.1
> Accept: */*
>
< HTTP/1.1 302 Moved Temporarily
< Location: http://
< Content-Type: text/plain; charset=UTF-8
< Content-Length: 0
<
* Curl_http_done: called premature == 0
* Connection #0 to host 212.58.246.54 left intact
Below is the output of systemd-resolve --status:
$ systemd-resolve --status
Global
DNS Servers: 8.8.8.8
DNSSEC NTA: 10.in-addr.arpa
Link 4 (wlp4s0)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: allow-downgrade
DNSSEC supported: yes
Link 3 (wwp0s20f0u6i12)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: allow-downgrade
DNSSEC supported: yes
Link 2 (enp0s31f6)
Current Scopes: none
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: allow-downgrade
DNSSEC supported: yes
Note: Everything works fine on Wi-Fi, this problem is only happening on 4G.
Note 2: I removed the automatically added UdevDb.txt and CurrentDmesg.txt attachments as they contained serial numbers of devices in my computer (such as for my SSD).
ProblemType: Bug
DistroRelease: Ubuntu 17.04
Package: systemd 232-21ubuntu2
ProcVersionSign
Uname: Linux 4.10.0-19-generic x86_64
ApportVersion: 2.20.4-0ubuntu4
Architecture: amd64
CurrentDesktop: Unity:Unity7
Date: Sat Apr 15 20:54:33 2017
InstallationDate: Installed on 2017-04-08 (7 days ago)
InstallationMedia: Ubuntu 17.04 "Zesty Zapus" - Beta amd64 (20170407)
MachineType: LENOVO 20HDCTO1WW
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: systemd
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 03/29/2017
dmi.bios.vendor: LENOVO
dmi.bios.version: N1QET53W (1.28 )
dmi.board.
dmi.board.name: 20HDCTO1WW
dmi.board.vendor: LENOVO
dmi.board.version: SDK0J40697 WIN
dmi.chassis.
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.
dmi.modalias: dmi:bvnLENOVO:
dmi.product.name: 20HDCTO1WW
dmi.product.
dmi.sys.vendor: LENOVO
Update: The ISP redirect has now gone away and the internet now works. However, if the output of systemd-resolve --status is anything to go by systemd-resolve appears to still be using Google DNS instead of my ISP's (which seems utterly bizarre).
I would surmise that while the redirect was in place, systemd-resolve was using Google DNS and access to the Google DNS servers was blocked until the SIM had been set up. This basically makes it impossible to set up the type of SIM I had (https:/ /www.three. co.uk/Free_ SIM_MBB/ Order) on Ubuntu (I had to do that on Windows). That's because the SIM requires registration, which you have to do via mobile internet while using the SIM.