无法连接到星巴克 wifi

Bra*_*sen 9 wireless networking 17.10

机器:

Ubuntu 17.10 内核 4.14(用于 XPS 9560 上的电池)

重新创建的步骤:

  • 连接到网络 (RED_STB)
  • 输入用户名和密码
  • 当我按回车键时,它会将我重定向到另一个页面 (wifiinstant.netsecure.pe),该页面表示无法访问,使我无法连接。

我试过什么:

  • 手动将 DNS 添加到 IPv4 NM 设置
  • 向 NetworkManager.conf 添加连接
  • 重新配置 resolvconf ( sudo dpkg-reconfigure resolvconf)

几个关键点:

  • 它适用于 Windows
  • 我可以连接到其他网络没问题

硬件:

$ lspci | grep Net
02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
Run Code Online (Sandbox Code Playgroud)

网络管理器配置:

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

[device]
wifi.scan-rand-mac-address=no

[connectvitiy]
url=http://nmcheck.gnome.org/check_network_status.txt
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

小智 10

现在坐在星巴克,看起来我已经找到了解决方法。在我的情况下,错误在引号中显示主机名:

解析“secure.datavalet.io”时出错:名称或服务未知

解决

  1. 在终端中,找出 的 IP 地址secure.datavalet.io

      ip route
    
    Run Code Online (Sandbox Code Playgroud)

    (实施例的输出:default via 172.31.98.1

  2. 运行sudo nano /etc/hosts以将 IP 地址和主机名(来自错误)添加为系统hosts文件中的新行。

    172.31.98.1 secure.datavalet.io
    
    Run Code Online (Sandbox Code Playgroud)
  3. 通常是可选的,但在您之前已连接的某些情况下,您可能还需要运行sudo nano /etc/resolv.conf并为第一个nameserver包含 IP 地址的行插入一行:

    nameserver 172.31.98.1
    
    Run Code Online (Sandbox Code Playgroud)
  4. 再次尝试连接到 WI-FI(例如,通过具有请求网络登录页面功能的 Firefox)。

解释

问题似乎是在正常的 DNS 查找过程中找不到热点服务器名称(又名 WiFi 路由器)。这是由于常见的超出规范的路由器配置,并且 systemd 根据 RFC 规范运行的事实。

有一个错误报告:1766969,它似乎通过酒店 WiFi、咖啡店和其他适用于 Windows 或 Apple 但不适用于 systemd 的公共 WiFi 配置的 WiFi 热点来识别此问题。希望该解决方案将允许它回退到旧功能以修复这个常见用例。在顶部的错误报告中,您可以选择分享此错误也会影响您,和/或在解决时收到通知。