# [RISOLTO] WiFi e NetworkManager

## Realnot

Salve, oggi sono quasi impazzito con questo wifi, dopo l'aggiornamento di udev mi son ritrovato con qualcosa tipo "eth0 is renamed to ..." ed inizio a mettermi le mani nei capelli. Sto provando gnome 3.8 con network manager, ho fatto l'errore di mantenere le interfacce abilitate al runlevel dopo aver emerso NetworkManager (che ovviamente si arrabbia, ci pensa lui a tirarle su). In /etc/rc.conf avevo settato rc_hotplug="*" che mi ha dato qualche problema. di conseguenza ho ricommentato, ho aggiunto networkmanager al runlevel  ed ho fatto il reboot.

Durante l'avvio con il cavo rj45 inserito non ho problemi, NetworkManager lavora bene, udev mi rinomina l'interfaccia ed e' tutto ok:

```
enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.1.104  netmask 255.255.255.0  broadcast 192.168.1.255

        inet6 fe80::21f:16ff:fe17:a0d8  prefixlen 64  scopeid 0x20<link>

        ether 00:1f:16:17:a0:d8  txqueuelen 1000  (Ethernet)

        RX packets 1156  bytes 359054 (350.6 KiB)

        RX errors 0  dropped 3  overruns 0  frame 0

        TX packets 1210  bytes 180031 (175.8 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        device interrupt 20  memory 0xf2600000-f2620000 
```

Questo pero' disabilitando il wifi dal menu a tendina di NetworkManager.

Ora faccio una prova, disabilito il wired e provo ad attivare il wifi e networkmanager prova a connettersi.

```
venus realnot # ping www.google.com

PING www.google.com (173.194.40.49) 56(84) bytes of data.

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=1 ttl=54 time=50.9 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=2 ttl=54 time=52.7 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=3 ttl=54 time=52.6 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=4 ttl=54 time=52.2 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=5 ttl=54 time=53.2 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=6 ttl=54 time=52.5 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=7 ttl=54 time=53.0 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=8 ttl=54 time=51.9 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=9 ttl=54 time=52.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=10 ttl=54 time=58.4 ms

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=25 ttl=54 time=52.4 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=26 ttl=54 time=52.3 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=27 ttl=54 time=51.7 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=28 ttl=54 time=53.3 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=29 ttl=54 time=52.4 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=30 ttl=54 time=52.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=31 ttl=54 time=51.8 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=32 ttl=54 time=51.0 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=33 ttl=54 time=52.6 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=34 ttl=54 time=52.8 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=35 ttl=54 time=51.9 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=36 ttl=54 time=52.5 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=37 ttl=54 time=52.3 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=38 ttl=54 time=51.9 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=39 ttl=54 time=51.8 ms

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=49 ttl=54 time=55.4 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=50 ttl=54 time=53.0 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=51 ttl=54 time=52.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=52 ttl=54 time=51.8 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=53 ttl=54 time=53.2 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=54 ttl=54 time=53.5 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=55 ttl=54 time=52.5 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=56 ttl=54 time=52.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=57 ttl=54 time=52.2 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=58 ttl=54 time=53.5 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=59 ttl=54 time=51.7 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=60 ttl=54 time=53.0 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=61 ttl=54 time=76.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=62 ttl=54 time=52.6 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=63 ttl=54 time=52.1 ms

64 bytes from zrh04s05-in-f17.1e100.net (173.194.40.49): icmp_seq=64 ttl=54 time=52.1 ms

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable

ping: sendmsg: Network is unreachable
```

Lui ci prova... ma dopo un po si stanca e si arrende

```
 :[realnot@venus ~ $ dmesg | grep wlp

[    3.441128] systemd-udevd[1289]: renamed network interface wlan0 to wlp3s0

[    5.995968] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready

[   13.700852] wlp3s0: authenticate with 00:1d:8b:34:ba:70

[   13.701696] wlp3s0: send auth to 00:1d:8b:34:ba:70 (try 1/3)

[   13.704420] wlp3s0: authenticated

[   13.704523] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   13.704528] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   13.705039] wlp3s0: associate with 00:1d:8b:34:ba:70 (try 1/3)

[   13.707481] wlp3s0: RX AssocResp from 00:1d:8b:34:ba:70 (capab=0x411 status=0 aid=1)

[   13.712469] wlp3s0: associated

[   13.712492] IPv6: ADDRCONF(NETDEV_CHANGE): wlp3s0: link becomes ready

[   34.002113] wlp3s0: deauthenticating from 00:1d:8b:34:ba:70 by local choice (reason=3)

[   38.400505] wlp3s0: authenticate with 00:1d:8b:34:ba:70

[   38.401312] wlp3s0: send auth to 00:1d:8b:34:ba:70 (try 1/3)

[   38.404020] wlp3s0: authenticated

[   38.404114] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   38.404118] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   38.405031] wlp3s0: associate with 00:1d:8b:34:ba:70 (try 1/3)

[   38.407422] wlp3s0: RX AssocResp from 00:1d:8b:34:ba:70 (capab=0x411 status=0 aid=1)

[   38.413421] wlp3s0: associated

[   59.002850] wlp3s0: deauthenticating from 00:1d:8b:34:ba:70 by local choice (reason=3)

[   63.397141] wlp3s0: authenticate with 00:1d:8b:34:ba:70

[   63.397862] wlp3s0: send auth to 00:1d:8b:34:ba:70 (try 1/3)

[   63.400714] wlp3s0: authenticated

[   63.400818] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   63.400823] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   63.401027] wlp3s0: associate with 00:1d:8b:34:ba:70 (try 1/3)

[   63.403541] wlp3s0: RX AssocResp from 00:1d:8b:34:ba:70 (capab=0x411 status=0 aid=1)

[   63.410113] wlp3s0: associated

[   83.969419] wlp3s0: deauthenticating from 00:1d:8b:34:ba:70 by local choice (reason=3)

```

Al runlevel sto messo cosi'

```
realnot@venus ~ $ rc-status

Runlevel: default

 dhcpcd                                                                                                      [  started  ]

 dbus                                                                                                        [  started  ]

 NetworkManager                                                                                              [  started  ]

 netmount                                                                                                    [  started  ]

 xdm                                                                                                         [  crashed  ]

 vixie-cron                                                                                                  [  started  ]

 local                                                                                                       [  started  ]

Dynamic Runlevel: hotplugged

Dynamic Runlevel: needed

Dynamic Runlevel: manual

 openrc-settingsd                                   
```

A parte xdm che crasha... ma questo e' un altro problema. Mi dice che il QoS non e' supportato... ma chi lo richiede??? 

Altre info utili... nel kernel per quanto riguarda iwl sto messo cosi':

```
realnot@venus ~ $ grep -i iwl /usr/src/linux/.config

CONFIG_IWLWIFI=y

CONFIG_IWLDVM=y

# CONFIG_IWLWIFI_DEBUG is not set

# CONFIG_IWLWIFI_DEVICE_TRACING is not set

CONFIG_IWLWIFI_P2P=y

# CONFIG_IWLWIFI_EXPERIMENTAL_MFP is not set

# CONFIG_IWL4965 is not set

# CONFIG_IWL3945 is not set
```

Uso iwlwifi-5000-5.ucode

```
realnot@venus ~ $ ls -l /lib/firmware/

total 336

-rw-r--r-- 1 root root 340688 Apr 19 16:23 iwlwifi-5000-5.ucode
```

Non so dove sbattere la testa.... se poi finite le prove disabilito il wifi e riattivo il wired ovviamente questo non parte, in /etc/rc.conf e' disabilitato... una macello. Qualcuno ha qualche idea?

Grazie in anticipo!!!

Edit 1:

Guardando nuovamente i log:

```
venus realnot # dmesg | grep  iwl

[    1.319516] iwlwifi 0000:03:00.0: pci_resource_len = 0x00002000

[    1.320577] iwlwifi 0000:03:00.0: pci_resource_base = ffffc90000058000

[    1.321614] iwlwifi 0000:03:00.0: HW Revision ID = 0x0

[    1.322716] iwlwifi 0000:03:00.0: irq 45 for MSI/MSI-X

[    1.322821] iwldvm: Intel(R) Wireless WiFi Link AGN driver for Linux, in-tree:

[    1.323896] iwldvm: Copyright(c) 2003-2012 Intel Corporation

[    2.548089] iwlwifi 0000:03:00.0: loaded firmware version 8.83.5.1 build 33692

[    2.548371] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUG disabled

[    2.548374] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEBUGFS disabled

[    2.548377] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEVICE_TRACING disabled

[    2.548380] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_DEVICE_TESTMODE disabled

[    2.548382] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_P2P disabled

[    2.548386] iwlwifi 0000:03:00.0: Detected Intel(R) Ultimate N WiFi Link 5300 AGN, REV=0x24

[    2.548454] iwlwifi 0000:03:00.0: L1 Disabled; Enabling L0S

[    2.567990] iwlwifi 0000:03:00.0: device EEPROM VER=0x11f, CALIB=0x4

[    2.567994] iwlwifi 0000:03:00.0: Device SKU: 0xF0

[    2.567997] iwlwifi 0000:03:00.0: Valid Tx ant: 0x7, Valid Rx ant: 0x7

[    2.568368] ieee80211 phy0: Selected rate control algorithm 'iwl-agn-rs'

[    4.276515] iwlwifi 0000:03:00.0: L1 Disabled; Enabling L0S

[    4.276902] iwlwifi 0000:03:00.0: Radio type=0x0-0x2-0x0

[    4.511188] iwlwifi 0000:03:00.0: L1 Disabled; Enabling L0S

[    4.511573] iwlwifi 0000:03:00.0: Radio type=0x0-0x2-0x0

[   12.308259] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   12.308263] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   37.428231] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   37.428236] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   62.410186] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   62.410191] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP

[   87.405264] iwlwifi 0000:03:00.0 wlp3s0: disabling HT as WMM/QoS is not supported by the AP

[   87.405269] iwlwifi 0000:03:00.0 wlp3s0: disabling VHT as WMM/QoS is not supported by the AP
```

Vedo che usa:

[    1.322821] iwldvm: Intel(R) Wireless WiFi Link AGN driver for Linux, in-tree:

ma non dovrebbe usare quello scaricato iwl5000-5.ucode???

Ho disabilitato pure:

[    2.548382] iwlwifi 0000:03:00.0: CONFIG_IWLWIFI_P2P disabled 

Non credo faccia al caso mio  :Razz: 

Edit 2

Dall kernel 2.6.27 iwl5000 e' stato inserito nel tree sotto iwlagn, ho semplicemente tolto dhcpcd dal runlevel di default e ho lasciato solo NetworkManager, probabilmente entravano in conflitto...

----------

## pierino_89

Andiamo con ordine:

- rc_hotplug e NetworkManager non sono correlati e non dipendono in alcun modo fra loro. Se abiliti o disabiliti rc_hotplug non vai in alcun modo a modificare la capacità di gestire la rete di NetworkManager.

- naturalmente, se abiliti l'hotplug della rete è possibile che gli script di openrc vadano in conflitto. Per evitare questo, puoi usare:

```
rc_hotplug="!net.eth0 *"
```

o come si chiama la tua interfaccia wired.

- dhcpcd e net.* (gli script di openrc) sicuramente vanno in conflitto con NetworkManager. Quindi assicurati sempre che non siano nel tuo runlevel di boot e di default.

- Per quanto riguarda il firmware, viene caricato da /lib/firmware. Se c'è solo un file, che lo chiami col suo nome o con la versione ("loaded firmware version 8.83.5.1 build 33692") più che quello non può usare.

Buona fortuna   :Wink: 

----------

## Realnot

Si' avevo risolto, comunque grazie. Ho un dubbio riguardo al caricamento di un modulo

```
realnot@venus ~/workspace/Operating Systems $ ls -l /lib/firmware/

total 336

-rw-r--r-- 1 root root 340688 Apr 19 19:06 iwlwifi-5000-5.ucode
```

Ora se volessi caricare quel modolo nel kernel, come dovrei fare? ho provato con tutti i modprobe del mondo. Tipo

modprobe iwl5000, iwl5000-5 etc.. pero' non funziona. C'e' modo di sapere il nome da usare per il caricamento di un modulo? a volte (forse sempre, ma non ricordo) quando lanci il make menuconfig per modificare il kernel e usi il "?"  per ottenere info su una certa features, nella descrizione ti dice il nome che va usato per il caricamento del modulo. E' possibile avere questo valore senza lanciare make menuconfig? 

Inoltre quel modulo e' stato inserito nel kernel sotto il nome di iwlagn, potrebbe essere che non carica il modulo perche' e' gia' presente all'interno del kernel?   :Confused:   :Confused:   :Confused: 

Per quanto riguarda dhcpcd e net.* mi sono ricordato dopo del conflitto, il che e' un male visto che ho perso del tempo  :Sad: 

Grazie per il tuo tempo   :Very Happy: 

----------

## pierino_89

 *Realnot wrote:*   

> Si' avevo risolto, comunque grazie. Ho un dubbio riguardo al caricamento di un modulo
> 
> ```
> realnot@venus ~/workspace/Operating Systems $ ls -l /lib/firmware/
> 
> ...

 

Per forza che non lo carica, è un firmware   :Razz:  il modulo si chiama iwlagn.

 *Quote:*   

> 
> 
> C'e' modo di sapere il nome da usare per il caricamento di un modulo? a volte (forse sempre, ma non ricordo) quando lanci il make menuconfig per modificare il kernel e usi il "?"  per ottenere info su una certa features, nella descrizione ti dice il nome che va usato per il caricamento del modulo. E' possibile avere questo valore senza lanciare make menuconfig? 

 

Se hai una vaga idea di come si può chiamare cerchi dentro /lib/modules, altrimenti fai prima a guardare da menuconfig.

 *Quote:*   

> 
> 
> Inoltre quel modulo e' stato inserito nel kernel sotto il nome di iwlagn, potrebbe essere che non carica il modulo perche' e' gia' presente all'interno del kernel?    
> 
> 

 

No, è proprio perché si chiama iwlagn e non iwl5000  :Very Happy: 

 *Quote:*   

> 
> 
> Per quanto riguarda dhcpcd e net.* mi sono ricordato dopo del conflitto, il che e' un male visto che ho perso del tempo 
> 
> Grazie per il tuo tempo  

 Beh, hai imparato qualcosa di nuovo   :Razz:  figurati!

----------

## Realnot

Urca che n00b che sono, quindi iwlagn nel tree esiste perche' e' presente iwl5000 in /lib/firmware?

----------

## pierino_89

No, iwlagn c'è perché l'hai compilato nel kernel  :Very Happy:  però se non hai il firmware anche se hai caricato il modulo non funzionerà.

----------

