Não é possível acessar o portal cativo no FreeBSD 12-CURRENT

2

Problema

Estou tentando conectar-me a um WiFi aberto com uma máquina executando o FreeBSD 12-CURRENT.


Normalmente, executo wifi-start.sh (veja abaixo) sempre que eu quiser conectar-me à Internet. Funciona com redes WPA, mas estou tendo muitos problemas com redes abertas. O dhclient é capaz de se conectar à rede aberta em /etc/wpa_supplicant.conf e recebe um endereço IP pelo DHCP. Mais tarde, no entanto, não consigo acessar o portal cativo para efetuar login.

Às vezes, é suficiente abrir o link em um navegador, mas nem sempre funciona.

Configuração

  • /boot/loader.conf:

    if_iwm_load="YES"
    iwm3160fw_load="YES"
    
  • /etc/rc.conf

    local_unbound_enable="YES"
    
  • /etc/resolvconf.conf

    # This file was generated by local-unbound-setup.
    # Modifications will be overwritten.
    resolv_conf="/dev/null" # prevent updating /etc/resolv.conf
    unbound_conf="/var/unbound/forward.conf"
    unbound_pid="/var/run/local_unbound.pid"
    unbound_service="local_unbound"
    unbound_restart="service local_unbound reload"
    
  • /etc/wpa_supplicant.conf:

    ctrl_interface=/var/run/wpa_supplicant
    ctrl_interface_group=wheel
    network={
    ssid="Open Network"
    key_mgmt=NONE
    }
    
  • wifi-start.sh:

    wlandev="${wlandev:-${1:-wlan0}}"
    device="${device:-${2:-iwm0}}"
    
    if ! ifconfig "$wlandev" 1>&2 2>/dev/null; then
        sudo ifconfig "$wlandev" create wlandev "$device"
    else
        sudo service netif restart
    fi
    
    sudo ifconfig "$wlandev" up
    sudo wpa_supplicant -B -i "$wlandev" -c /etc/wpa_supplicant.conf
    sudo dhclient "$wlandev"
    

    Script que uso para configurar o dispositivo e conectar-se à rede

Detalhes

  1. A configuração é livre de problemas no Ubuntu e no MacOS, então:

    1. provavelmente não é o problema do roteador,
    2. deve ser possível configurar o FreeBSD corretamente.
  2. O dispositivo Wi-Fi é o Intel Corporation Dual Band Wireless-AC 3160, portanto estou usando o driver iwm (4).

  3. Erros no xconsole

    Aqui está um erro que recebi no console depois de executar wifi-start.sh - dhclient desistiu então. A segunda vez que executei o script dhclient obteve um endereço com sucesso e não houve erros em xconsole .

    No entanto, pode não estar relacionado com este problema.

    Ethernet address: 34:e6:ad:16:bf:66
    iwm_auth: failed to set multicast
    iwm_newstate: could not move to auth state: 35
    dumping device error log
    Start Error Log Dump:
    Status: 0x3, count: 6
    0x0000090A | ADVANCED_SYSASSERT
    080000B0 | trm_hw_status0
    00000000 | trm_hw_status1
    00000B30 | branchlink2
    000148E0 | interruptlink1
    00000000 | interruptlink2
    DEADBEEF | data1
    DEADBEEF | data2
    DEADBEEF | data3
    001CA815 | beacon time
    002362E3 | tsf low
    00000000 | tsf hi
    00000000 | time gp1
    002362E4 | time gp2
    00000000 | uCode revision type
    00000011 | uCode version major
    000561E2 | uCode version minor
    00000164 | hw version
    00809004 | board version
    0000001C | hcmd
    00022002 | isr0
    00000000 | isr1
    00000002 | isr2
    00417C81 | isr3
    00000000 | isr4
    00004110 | last cmd Id
    00000000 | wait_event
    00000080 | l2p_control
    00450020 | l2p_duration
    0000003F | l2p_mhvalid
    00000000 | l2p_addr_match
    00000007 | lmpm_pmg_sel
    15061432 | timestamp
    00003038 | flow_handler
    driver status:
      tx ring  0: qid=0  cur=1   queued=1
      tx ring  1: qid=1  cur=0   queued=0
      tx ring  2: qid=2  cur=0   queued=0
      tx ring  3: qid=3  cur=0   queued=0
      tx ring  4: qid=4  cur=0   queued=0
      tx ring  5: qid=5  cur=0   queued=0
      tx ring  6: qid=6  cur=0   queued=0
      tx ring  7: qid=7  cur=0   queued=0
      tx ring  8: qid=8  cur=0   queued=0
      tx ring  9: qid=9  cur=33  queued=1
      tx ring 10: qid=10 cur=0   queued=0
      tx ring 11: qid=11 cur=0   queued=0
      tx ring 12: qid=12 cur=0   queued=0
      tx ring 13: qid=13 cur=0   queued=0
      tx ring 14: qid=14 cur=0   queued=0
      tx ring 15: qid=15 cur=0   queued=0
      tx ring 16: qid=16 cur=0   queued=0
      tx ring 17: qid=17 cur=0   queued=0
      tx ring 18: qid=18 cur=0   queued=0
      tx ring 19: qid=19 cur=0   queued=0
      tx ring 20: qid=20 cur=0   queued=0
      tx ring 21: qid=21 cur=0   queued=0
      tx ring 22: qid=22 cur=0   queued=0
      tx ring 23: qid=23 cur=0   queued=0
      tx ring 24: qid=24 cur=0   iwm_newstate: Failed to remove station: 35
    iwm_mvm_mac_ctxt_changed: called; uploaded = 0
    iwm_newstate: Failed to change mac context: 5
    iwm_newstate: Failed to remove channel ctx: 22
    iwm_newstate: failed to update power management
    
  4. ifconfig -v wlan0

    Veja o resultado de ifconfig -v wlan0 :

    wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
            ether 34:e6:ad:16:bf:66
            hwaddr 34:e6:ad:16:bf:66
            inet6 fe80::36e6:adff:fe16:bf66%wlan0 prefixlen 64 tentative scopeid 0x2
            inet 10.1.2.41 netmask 0xffffff00 broadcast 10.1.2.255
            nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
            media: IEEE 802.11 Wireless Ethernet OFDM/54Mbps mode 11g
            status: associated
            ssid "Open Network" channel 11 (2462 MHz 11g) bssid 4e:5e:0c:eb:8e:ad
            regdomain FCC country US anywhere -ecm authmode OPEN -wps -tsn
            privacy OFF deftxkey UNDEF powersavemode OFF powersavesleep 100
            txpower 30 txpowmax 50.0 -dotd rtsthreshold 2346 fragthreshold 2346
            bmiss 10
            11a     ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            11b     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            11g     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            turboA  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            turboG  ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            sturbo  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            11na    ucast NONE    mgmt 12 MCS  mcast 12 MCS  maxretry 6
            11ng    ucast NONE    mgmt  2 MCS  mcast  2 MCS  maxretry 6
            half    ucast NONE    mgmt  3 Mb/s mcast  3 Mb/s maxretry 6
            quarter ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            11acg   ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
            11ac    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
            scanvalid 60 -bgscan bgscanintvl 300 bgscanidle 250
            roam:11a     rssi    7dBm rate 12 Mb/s
            roam:11b     rssi    7dBm rate  1 Mb/s
            roam:11g     rssi    7dBm rate  5 Mb/s
            roam:turboA  rssi    7dBm rate 12 Mb/s
            roam:turboG  rssi    7dBm rate 12 Mb/s
            roam:sturbo  rssi    7dBm rate 12 Mb/s
            roam:11na    rssi    7dBm  MCS  1
            roam:11ng    rssi    7dBm  MCS  1
            roam:half    rssi    7dBm rate  6 Mb/s
            roam:quarter rssi    7dBm rate  3 Mb/s
            roam:11acg   rssi    7dBm rate 64 Mb/s
            roam:11ac    rssi    7dBm rate 64 Mb/s
            -pureg protmode CTS -ht -htcompat -ampdu ampdulimit 64k
            ampdudensity NA -amsdu -shortgi htprotmode RTSCTS -puren -smps -rifs
            -stbc -ldpc -vht -vht40 -vht80 -vht80p80 -vht160 wme -burst -dwds
            roaming MANUAL bintval 100
            AC_BE cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm ack
                  cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
            AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
                  cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
            AC_VI cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm ack
                  cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
            AC_VO cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm ack
                  cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
            groups: wlan
    
  5. link XML

    Além disso, recebi uma resposta XML interessante do link quando fiz as seguintes etapas:

    • Conecte-se à Rede aberta ( dhclient recebeu um endereço com êxito).
    • Tente abrir o link . Apenas enforcou tentando carregar.
    • Reconecte-se a outro Wi-Fi que realmente funcione.
    • Olhe para a guia link e veja o seguinte:

    This XML file does not appear to have any style information associated with it. The document tree is shown below.

     -<Error>
        <Code>AccessDenied</Code>
        <Message>Access Denied</Message>
        <RequestId>3FD41663CABFE8CD</RequestId>
       -<HostId>
          dsczv0lxKSFmBneOVS5nm5Ru5D3Br1bCRCqqj25WZVb1BzKI9McRR+djm9IrmgXHVIk/mdUCvfM=
        </HostId>
      </Error>
    
  6. Ajustando o /etc/resolv.conf

    Sugeriu-se que eu definisse /etc/resolv.conf e depois executasse resolvconf -i e resolvconf -l . Aqui estão os resultados:

    • Dentro de /var/db/dhclient.leases.wlan0:

      lease {
        interface "wlan0";
        fixed-address 10.1.236.56;
        next-server 10.1.236.1;
        option subnet-mask 255.255.255.255;
        option routers 10.1.236.1;
        option domain-name-servers 10.1.236.1,194.204.159.1;
        option dhcp-lease-time 900;
        option dhcp-message-type 5;
        option dhcp-server-identifier 10.1.236.1;
        renew 5 2017/7/7 16:10:15;
        rebind 5 2017/7/7 16:15:49;
        expire 5 2017/7/7 16:17:45;
      }
      
    • Saída de dhclient wlan0 :

      wlan0: no link .... got link
      DHCPREQUEST on wlan0 to 255.255.255.255 port 67
      DHCPACK from 10.1.236.1
      bound to 10.1.236.56 -- renewal in 450 seconds.
      
    • Adicionar nameserver 10.1.236.1 a /etc/resolv.conf parece não alterar nada.

    • Saída de resolvconf -i :

      wlan0
      
    • Saída de resolvconf -l :

      # resolv.conf from wlan0
      nameserver 10.1.236.1
      nameserver 194.204.159.1
      
    • Em momento algum consegui abrir o link ou o link . Eu não fui redirecionado para o portal cativo também.

    • Resultado de ifconfig -v wlan0 :

      wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
          ether 34:e6:ad:16:bf:66
          hwaddr 34:e6:ad:16:bf:66
          inet6 fe80::36e6:adff:fe16:bf66%wlan0 prefixlen 64 tentative scopeid 0x2
          inet 10.1.236.56 netmask 0xffffffff broadcast 10.1.236.56
          nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
          media: IEEE 802.11 Wireless Ethernet OFDM/36Mbps mode 11g
          status: associated
          ssid "Open Hotspot" channel 6 (2437 MHz 11g) bssid 9c:1c:12:0b:10:73
          regdomain FCC country US anywhere -ecm authmode OPEN -wps -tsn
          privacy OFF deftxkey UNDEF powersavemode OFF powersavesleep 100
          txpower 30 txpowmax 50.0 -dotd rtsthreshold 2346 fragthreshold 2346
          bmiss 10
          11a     ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
          11b     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
          11g     ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
          turboA  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
          turboG  ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
          sturbo  ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
          11na    ucast NONE    mgmt 12 MCS  mcast 12 MCS  maxretry 6
          11ng    ucast NONE    mgmt  2 MCS  mcast  2 MCS  maxretry 6
          half    ucast NONE    mgmt  3 Mb/s mcast  3 Mb/s maxretry 6
          quarter ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
          11acg   ucast NONE    mgmt  1 Mb/s mcast  1 Mb/s maxretry 6
          11ac    ucast NONE    mgmt  6 Mb/s mcast  6 Mb/s maxretry 6
          scanvalid 60 -bgscan bgscanintvl 300 bgscanidle 250
          roam:11a     rssi    7dBm rate 12 Mb/s
          roam:11b     rssi    7dBm rate  1 Mb/s
          roam:11g     rssi    7dBm rate  5 Mb/s
          roam:turboA  rssi    7dBm rate 12 Mb/s
          roam:turboG  rssi    7dBm rate 12 Mb/s
          roam:sturbo  rssi    7dBm rate 12 Mb/s
          roam:11na    rssi    7dBm  MCS  1
          roam:11ng    rssi    7dBm  MCS  1
          roam:half    rssi    7dBm rate  6 Mb/s
          roam:quarter rssi    7dBm rate  3 Mb/s
          roam:11acg   rssi    7dBm rate 64 Mb/s
          roam:11ac    rssi    7dBm rate 64 Mb/s
          -pureg protmode CTS -ht -htcompat -ampdu ampdulimit 8k
          ampdudensity NA -amsdu -shortgi htprotmode RTSCTS -puren -smps -rifs
          -stbc -ldpc -vht -vht40 -vht80 -vht80p80 -vht160 wme -burst -dwds
          roaming MANUAL bintval 100
          AC_BE cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm ack
                cwmin  4 cwmax 10 aifs  3 txopLimit   0 -acm
          AC_BK cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm ack
                cwmin  4 cwmax 10 aifs  7 txopLimit   0 -acm
          AC_VI cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm ack
                cwmin  3 cwmax  4 aifs  2 txopLimit  94 -acm
          AC_VO cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm ack
                cwmin  2 cwmax  3 aifs  2 txopLimit  47 -acm
          groups: wlan
      
      • Também echo nameserver 10.1.236.1 | resolvconf -a wlan0 retorna:

        cp: /dev/null.bak: Operation not supported
        

Referências e amp; notas

    Os arquivos
  • /var/db/dhclient.leases.wlan* podem armazenar informações interessantes.
  • /etc/resolv.conf está vazio.
por Mateusz Piotrowski 04.07.2017 / 21:07

2 respostas

0

Explicação

O problema foi com a configuração de /etc/resolvconf.conf gerada automaticamente durante a instalação.

Acontece que, por causa da configuração de local_unbound_enable="YES" , o FreeBSD adicionou

resolv_conf="/dev/null" # prevent updating /etc/resolv.conf

para /etc/resolvconf.conf , o que impediu a modificação de /etc/resolv.conf . Como resultado, meu sistema parece sempre enviar consultas DNS para uma das raízes, em vez do servidor DNS fornecido pelo ponto de acesso.

Solução

  1. Remova resolv_conf="/dev/null" de /etc/resolvconf.conf .

    O sistema retorna automaticamente para /etc/resolv.conf .

  2. Remova local_unbound_enable="YES" de /etc/rc.conf .

  3. (Opcionalmente) execute service local_unbound stop .

por 18.09.2017 / 00:18
2

Tente abrir qualquer site no FireFox depois que sua conexão Wi-Fi for estabelecida. Ele irá abrir o portal cativo; O Firefox entende os protocolos envolvidos e apresentará a você a página de autenticação.

A partir daí, após a autenticação correta, você terá acesso aos serviços por trás do portal cativo, como de costume.

Você deve estar usando os servidores DNS fornecidos pelo DHCP e não 8.8.8.8, por exemplo.

Funciona para mim com portais cativos FON.

    
por 04.07.2017 / 23:00