Impostare a mano interfaccia di rete

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Impostare a mano interfaccia di rete

Messaggio da joe »

Ultimamente sto cercando di far funzionare una chiavetta Olicard 300 particolarmente rognosa, attraverso la sua funzionalità MBIM.
Riesco in pratica a connettermi al mio ISP (Tim) usando le libmbim (mbimcli/mbim-network), ma a quanto pare questa chiavetta non supporta il DHCP, così quando la connessione all'ISP è instaurata non riesco comunque ad utilizzarla perchè l'interfaccia wwan1 associata alla connessione va inizializzata in qualche altro modo.

Tanto per capirci qualcosa vorrei chiedervi una mano nell'inizializzazione corretta dell'interfaccia, perchè io ho sempre avuto a che fare con interfaccie PPP che facevano tutto loro.. E non ho assolutamente dimestichezza con le connessioni di rete locali ecc...

Quindi mi servirebbe una mano per capire come usare i vari "ip address" "ip link" e "ip route".
Capisco che ci sia il manuale, e su internet si trovi un sacco di roba, ma sinceramente ho provato e riprovato diverse volte ma senza successo:

Codice: Seleziona tutto

RTNETLINK answers: Invalid argument

Codice: Seleziona tutto

RTNETLINK answers: Network is unreachable

Codice: Seleziona tutto

RTNETLINK answers: Network is down
ecc.ecc..

e quando non ottengo nessun errore tipo quelli sopra ecco che ottengo una bellissima interfaccia inizializzata (correttamente non credo...) che non mi permette però di scambiare alcun dato con internet.

Abiao i seguenti dati di partenza:
Interrfaccia di rete: wwan1

IP e altri dati ottenuti dall'ISP alla connessione:

Codice: Seleziona tutto

[/dev/cdc-wdm1] Successfully connected

[/dev/cdc-wdm1] Connection status:
              Session ID: '0'   
        Activation state: 'activated'
        Voice call state: 'none'
                 IP type: 'ipv4'
            Context type: 'internet'
           Network error: 'unknown'

[/dev/cdc-wdm1] IPv4 configuration available: 'address, gateway, dns, mtu'
     IP [0]: '10.189.103.52/29' 
    Gateway: '10.189.103.49'
    DNS [0]: '10.207.43.46'
        MTU: '1500'
Ora vi chiedo, come configurereste voi l'interfaccia wwan1 sapendo qui dati lì sopra: IP / network gateway ecc..???
Sono dati reali... alla faccia della privacy, ma tanto sono indirizzi privati...

Poi capito il meccanismo vedrò di automatizzare il tutto con uno script.
Grazie in anticipo!


PS.
L'output sopra (con ip network gateway ecc in bella vista) non si ottiene usando la versione attuale di libmbim, bisogna applicare una patch che gentilissimamente gli sviluppatori (Dan Williams) hanno messo a disposizione...

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Codice: Seleziona tutto

ifconfig wwan1 10.189.103.52/29 up

route add default gw 10.189.103.49 wwan1

echo "nameserver 10.207.43.46" > /etc/resolv.conf
PS
Unico dubbio: il server DNS.
Riuscirà a contattarlo?

Non so se ci vuole una route statica - e qui passo alla grande, ma penso facciano loro - ma se non va mettine uno pubblico - es: 8.8.8.8

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

No no i DNS loro li forniscono ma io non li ho mai usati... tengo il mio /etc/resolv.conf così com'è con la cache locale e gli opendns. In effetti hai ragione, l'indirizzo del DNS stà su una rete sempre privata ma differente... quindi come caspita si raggiungano no lo so.
Ad ogni modo provo la tua soluzione.
Vediamo se riesco....

Funziona! :D

Codice: Seleziona tutto

# ifconfig wwan1
wwan1: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.188.25.124  netmask 255.255.255.248  broadcast 10.188.25.127
        inet6 fe80::2ca2:32ff:fea5:584c  prefixlen 64  scopeid 0x20<link>
        ether 2e:a2:32:a5:58:4c  txqueuelen 1000  (Ethernet)
        RX packets 5623  bytes 4933002 (4.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6716  bytes 4434477 (4.2 MiB)
        TX errors 836  dropped 0 overruns 0  carrier 0  collisions 0

Codice: Seleziona tutto

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.188.25.121   0.0.0.0         UG    0      0        0 wwan1
0.0.0.0         10.188.155.113  0.0.0.0         UG    203    0        0 wwan0
10.188.25.120   0.0.0.0         255.255.255.248 U     0      0        0 wwan1
10.188.155.112  0.0.0.0         255.255.255.240 U     0      0        0 wwan0
10.188.155.112  0.0.0.0         255.255.255.240 U     203    0        0 wwan0
127.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 lo
Bene...
Allora alla fine sono quasi arrivato alla conclusione dell'impresa....
Non mi resta che automatizzare la procedura di connessione.
Peccato, il DHCP era una comodità! :lol:

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Spetta, dall'output di route sembra che abbia due interfacce attive contemporaneamente.

Testata la connessione solo con wwan1?

Altrimenti butta giù la prima con

Codice: Seleziona tutto

ip addr flush wwan0
e verifica che la rete funzioni.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

No no sono proprio due interfaccie attive entrambe...
Cioè sto testando due chiavette, la mia (wwan0 - Huawei-E353) e quella di un amico (wwan1-Olicard-300).
La prima sfrutta "libqmi" e supporta DHCP, quindi si autoconfigura... dopo averla impostata in /etc/rc.d/rc.inet1.conf.

La seconda invece è meno linux-friendly e ha richiesto parecchi sbattimenti in più, dal riconoscimento driver all'utilizzo pratico con vari tools basati su libmbim. E come detto non supporta DHCP..

Per il momento ho tradotto i tuoi comandi in direttive che utilizzino iproute2.
Ne è uscito un piccolo script di fortuna temporaneo:

Codice: Seleziona tutto

# cat wwanup 
#!/bin/sh

DEV=$1
IP=$2
GW=$3

ip a f dev $DEV
ip a a $IP dev $DEV
ip l s $DEV up
ip r a default via $GW dev $DEV
utilizzo:

Codice: Seleziona tutto

wwanup <device> <ip/net> <gateway>
Sembra funzionare...
Per ora gli indirizzi e il device vanno passti a mano che vuol dire copiarli dall'output di mbimcli e incollarli al posto giusto come argomenti dello script.

Il prossimo passo sarà estrapolare dall'output di mbimcli gli indirizzi IP/Network e il Gateway e passarli poi ai vari comandi "ip" per tirare su l'interfaccia wwan e instradare correttamente i traffico...

Mi sei stato utilissimo, come sempre! Ti ringrazio! :)
Tanto per completezza posterò i progressi appena possibile...

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Ok, come non detto.

Una cosa:
vedevo dall'altro topic il tentativo di ottenere l'indirizzo IP via DHCP.
Incollo l'output:

Codice: Seleziona tutto

    # /etc/rc.d/rc.inet1 wwan1_start
    Polling for DHCP server on interface wwan1:
    dhcpcd[2636]: version 5.5.6 starting
    dhcpcd[2636]: wwan1: sending IPv6 Router Solicitation
    dhcpcd[2636]: wwan1: broadcasting for a lease
    dhcpcd[2636]: wwan1: sending IPv6 Router Solicitation
    dhcpcd[2636]: wwan1: sending IPv6 Router Solicitation
    dhcpcd[2636]: timed out
    dhcpcd[2636]: allowing 8 seconds for IPv4LL timeout
    dhcpcd[2636]: wwan1: sending IPv6 Router Solicitation
    dhcpcd[2636]: wwan1: no IPv6 Routers available
    dhcpcd[2636]: timed out
A occhio eh, dunque senza nessuna pretesa scientifica, mi pare che tenti di ottenere un indirizo ipv6 anziché ipv4.

Lasciando stare rc.inet1, se dai:

Codice: Seleziona tutto

dhclient -4 -v wwan1
che salta fuori?

Occhio che se per caso dovesse ottenere l'IP ti va ad aggiungere il nameserver in /etc/resolv.conf.

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

Parto dal fondo:
Sì dhclient di suo ti và a sovrascrivere il resolv.conf.
Però lo si può anche forzare a non adottare questo comportamento:

Codice: Seleziona tutto

# cat /etc/dhclient-enter-hooks 
make_resolv_conf()
{
exit 0
}
Aggiungendo quel file di configurazione, con quella funzione che non fà nulla, praticamente si và a sostituire la funzione "make_resolv_conf()" di default, che invece di suo sovrascriverebbe il nostro resolv.conf.
L'ho letto dopo qualche ricerca in rete ed è accenato anche nel:

Codice: Seleziona tutto

man dhclient-script
Ok, veniamo al problema.
Se io faccio partire la connessione via MBIM e dopo lancio il comando di cui sopra, che ho già provato più volte, praticamente il dhclient và in timeout:

Codice: Seleziona tutto

# mbimcli -d /dev/cdc-wdm1 --connect=ibox.tim.it --no-close --no-open 0

(mbimcli:16140): GLib-GObject-WARNING **: value "0" of type `guint' is invalid or out of range for property `device-transaction-id' of type `guint'
[/dev/cdc-wdm1] Successfully connected

[/dev/cdc-wdm1] Connection status:
              Session ID: '0'
        Activation state: 'activated'
        Voice call state: 'none'
                 IP type: 'ipv4'
            Context type: 'internet'
           Network error: 'unknown'

[/dev/cdc-wdm1] IPv4 configuration available: 'address, gateway, dns, mtu'
     IP [0]: '10.188.9.110/30'
    Gateway: '10.188.9.109'
    DNS [0]: '10.207.43.46'
        MTU: '1500'

[/dev/cdc-wdm1] IPv6 configuration available: 'none'
[/dev/cdc-wdm1] Session not closed:
            TRID: '3'

Codice: Seleziona tutto

# dhclient -4 -v wwan1
Internet Systems Consortium DHCP Client 4.2.5-P1
Copyright 2004-2013 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/wwan1/2e:a2:32:a5:58:4c
Sending on   LPF/wwan1/2e:a2:32:a5:58:4c
Sending on   Socket/fallback
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 3
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 19
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 20
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 5
No DHCPOFFERS received.  
No working leases in persistent database - sleeping.
In pratica non ottengo alcun indirizzo IPv4 via DHCP.
Non penso ci si possa fare nulla, anche se non ci metto mano sul fuoco...
Ma da come ho capito dipende proprio dalle funzionalità della chiavetta.

Invece manualmente conl o scriptino cui ho accennato sopra funziona tutto...

Codice: Seleziona tutto

# wwanup wwan1 10.188.9.110/30 10.188.9.109
# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=51 time=60.2 ms
^C
--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 60.242/60.242/60.242/0.000 ms

Codice: Seleziona tutto

# ifconfig wwan1
wwan1: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.188.9.110  netmask 255.255.255.252  broadcast 0.0.0.0
        ether 2e:a2:32:a5:58:4c  txqueuelen 1000  (Ethernet)
        RX packets 1473  bytes 584454 (570.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2132  bytes 224203 (218.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
...Funizona tutto oqquasi.
Infatti mentre il comando "ifconfig wwan0 IP/NET up" andava anche ad impostare l'indirizzo di broadcast il comando "ip" non lo fà di default.
Da quanto ho letto per replicare il risultato che si otteneva con ifconfg basta aggiungere "broadcast +" o più conciso "b +" quando si imposta l'indirizzo dell'interfaccia.
Già che ci sono aggiungo anche il down dell'interfaccia prima di impostarla...
Ecco come diventa lo script...

Codice: Seleziona tutto

# cat wwanup 
#!/bin/sh

DEV=$1
IP=$2
GW=$3

ip l s dev $DEV down
ip a f dev $DEV
ip a a $IP dev $DEV b +
ip l s $DEV up
ip r a default via $GW dev $DEV
Ed ecco cosa ritorna ora ifconfig:

Codice: Seleziona tutto

# ifconfig wwan1
wwan1: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.188.9.110  netmask 255.255.255.252  broadcast 10.188.9.111
        ether 2e:a2:32:a5:58:4c  txqueuelen 1000  (Ethernet)
        RX packets 5523  bytes 3055303 (2.9 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6995  bytes 702492 (686.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
Tornando al tuo intervento circa DHCP.
Se ti viene qualche idea in merito e ti pare che possa in qualche modo funzionare, e che quindi non fallisca a causa di un mancato supporto da parte dell'interfaccia MBIM della Olicard-300.... Bè non esitare a proporre vari test.
Finchè ho la chiavetta sottomano sarò ben felice di fare qualche prova.

Questo vale per qualsiasi altro particolare ti venga in mente, non solo inerente al dhcp...

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Dai test che hai effettuato hai ragione tu: sembra nmanchi il supporto al DHCP - e infatti dhclient risponde picche.
Il dubbio era sorto dall'output di rc.inet1.

Per il resto leggo con interesse ciò che scrivi, perché non ne so nulla 8)

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

:lol: Se ti riferisci a queste "nuove" interfacce "wwan" e vari protocolli per gestire MBIM/QMI ti garantisco che brancolo abbastanza nel buio anche io...
Sto appena iniziando a capirci qualcosa di più...
Devo dire che si sono rivelati molto disponibili sia sul forum di "usb_modeswitch" che sulla mailing list del progetto libmbim.
Sommato questo alla solita puntualità di Slacky.eu, ecco che sono (anzi diciamo, siamo và... visto che ho rotto i coiones in ogni dove :lol:) riuscito a far funzionare la chiavetta come avrei voluto/avrebbe dovuto...

Ma tutto ciò ha richiesto:
1- comprensione di usb_modeswitch
2- aggiornamento kernel
3- patch del modulo 'option.ko' (il che è abbastanza comico viste le mie modestissime referenze in materia!)
4- aggiornamento pacchetti libmbim e libqmi
5- proposta e applicazione patch a libmbim
6- il tutto condito con una rispolverata a concetti base tipo configurazione interfacce di rete, compilazione kernel, applicazione patch ecc ecc. come in questo topic tanto per dire...

Un'ultima curiosità, sull'impostazione dell'indirizzo di broadcast ad un'interfaccia:
come ho accennato sopra il comando:

Codice: Seleziona tutto

ip a a $IP dev $DEV
Aggiunge l'indirizzo IP/subnet all'interfaccia, ma non ne imposta automaticamente il broadcast che risulta "0.0.0.0".
Per aggiungere l'impostazione del broadcast autocalcolato dobbiamo aggiungere la direttiva "broadcast +" (o più conciso "b +").

Codice: Seleziona tutto

ip a a $IP dev $DEV b +
Da quando ho capito l'indirizzo di broadcast serve per poter far comunicare interfacce/nodi appartenenti alla stessa subnet.
Non so se ho capito bene, ma un esempio potrebbe essere far comunicare l'interfaccia wwan0 di indirizzo:

Codice: Seleziona tutto

10.188.155.129/30
con il relativo gateway che magari ha indirizzo:

Codice: Seleziona tutto

10.188.155.130
Nell'esempio sopra avremo i seguenti indirizzi in gioco:

Codice: Seleziona tutto

Indirizzo interfaccia:   10.188.155.129
Netmask:   255.255.255.252 - 30
Network:   10.188.155.128/30
Broadcast: 10.188.155.131
HostMin:   10.188.155.129
HostMax:   10.188.155.130
Hosts/Net: 2
Quello che vorrei capire è a cosa serva impostare sull'interfaccia l'indirizzo di broadcast a 10.188.155.131 piuttosto che lasciarlo a 0.0.0.0.
Cosa accadrebbe se lo lasciassi a 0.0.0.0 ???

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

joe ha scritto:Cosa accadrebbe se lo lasciassi a 0.0.0.0 ???
Che utilizza qualsiasi indirizzo di broadcast, quindi la rete dovrebbe funzionare ugualmente. Che implicazioni possa avere - sicurezza? - però non ne ho la minima idea.

Per curiosità:
per scoprire quali ip/gw/dns puoi usare che comando usi?

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

In generale dipende da come è fatta la rete di cui stiamo parlando: se siamo in una LAN e tu ne sei l'amministratore, semplicemente saprai quale nodo ti fà da gateway (ad esempio un router) e ne conoscerai il suo indirizzo... Per i dns anche lì se li hai impostati nel router penso che metti l'indirizzo del router e via. Soluzione non testata perchè non ho mai avuto un router su cui smanettare tanto, solo qualche impostazione base presso routers di amici in panne...

Se invece ti riferisci al caso specifico della connessione via Mobile Broadband Interface allora il discorso cambia.
Non usando DHCP può essere un problema.
Anzi è il nodo della questione con cui mi sono confrontato...

Per capire la questione bisogna partire dal tool che si utilizza per connettersi.
In rete ho letto di:

1- mbimcli o (qmicli a seconda di quale protocollo supporta l'interfaccia della nostra chiavetta, interfaccia del device usb intendo, non interfaccia di rete...)
2- mbim-network (o qmi-network)
3- modem manager
4- network manager

Dico subito che personalmente non sono riuscito a far funzionare modem manager con la Olicard-300 forse non è supportata...
Inoltre Network Manager l'avevo disabilitato a suo tempo quindi non ho testato il suo funzionamento. Potrebbe essere anche la soluzione più facile se tutto andasse come ci si augura... ma spesso non è così, comunque non l'ho testato.
In ogni caso entrambi questi tools dovrebbero essere in grado di gestire le interfacce di rete WWAN e di instaurare la connessione ad internet impostando tutto automaticamente, penso anche senza la necessità di DHCP.

Il metodo più terra terra per testare la connessione è però l'utilizzo dei tool più semplici ovvero mbimcli (o qmicli).
praticamente è un programmino che utilizza diverse direttive, funzioni ecc presenti nelle "libmbim".
In pratica mbimcli è parte del pacchetto libmbim.

i dati di cui chiedi, cioè IP/GW ecc....
si ottengono in output eseguendo la connessione ad internet attravero l'APN appropriato del proprio operatore mobile:

Codice: Seleziona tutto

[root@darkstar ~]# mbimcli -p -d /dev/cdc-wdm1 --set-radio-state=on
[/dev/cdc-wdm1] Radio state retrieved:
             Hardware Radio State: 'on'
             Software Radio State: 'on'

Codice: Seleziona tutto

[root@darkstar ~]# mbimcli -p -d /dev/cdc-wdm1 --register-automatic
[/dev/cdc-wdm1] Successfully launched automatic registration

[/dev/cdc-wdm1] Registration status:
                 Network error: 'unknown'
                Register state: 'home'
                 Register mode: 'automatic'
        Available data classes: 'hsdpa, hsupa'
        Current cellular class: 'gsm'
                   Provider ID: '22201'
                 Provider name: '22201'
                  Roaming text: 'unknown'
            Registration flags: 'packet-service-automatic-attach'

Codice: Seleziona tutto

[root@darkstar ~]# mbimcli -p -d /dev/cdc-wdm1 --connect=ibox.tim.it --no-close --no-open 1
[/dev/cdc-wdm1] Successfully connected

[/dev/cdc-wdm1] Connection status:
              Session ID: '0'
        Activation state: 'activated'
        Voice call state: 'none'
                 IP type: 'ipv4'
            Context type: 'internet'
           Network error: 'unknown'

[/dev/cdc-wdm1] IPv4 configuration available: 'address, gateway, dns, mtu'
     IP [0]: '10.188.21.222/30'
    Gateway: '10.188.21.221'
    DNS [0]: '10.207.43.46'
        MTU: '1500'

[/dev/cdc-wdm1] IPv6 configuration available: 'none'
[/dev/cdc-wdm1] Session not closed:
            TRID: '4'
Quello sopra è un esempio di connessione ad internet via MBIM usando mbimcli.
Praticamente accendo la funzionalità radio della chiavetta (necessario per il modello Olicard 300), setto la registrazione automatica sulla rete mobile TIM, e infine lancio la connessione.
Quello che riguarda la tua domanda è nell'output di quest'ultimo comando:

Codice: Seleziona tutto

[/dev/cdc-wdm1] IPv4 configuration available: 'address, gateway, dns, mtu'
     IP [0]: '10.188.21.222/30'
    Gateway: '10.188.21.221'
    DNS [0]: '10.207.43.46'
        MTU: '1500'
Una nota:
Di fatto è un'ip privato ma appartenente ad una subnet composta da solo 4 nodi e tenuto conto che gli indirizzi più basso e più alto sono riservati per la definizione della subnet e per il broadcast, ne restano due: quello da assegnare all'interfaccia e quello del gateway.
- l'ip assegnato alla mia interfaccia wwan1: 10.188.21.222
- che appartiene alla subnet 10.188.21.220 di netmask 255.255.255.252 (/30)
- e avrà broadcast: 10.188.21.223
- non resta che l'indirizzo del gateway che per esclusione è 10.188.21.221

Fino all'altro giorno però il comando di connessione di mbimcli non restituiva in output i dati di cui chiedevi... Sebbene si riuscisse a connettersi all'ISP, non ci era dato di sapere quale fosse nè l'IP che vorrebbe assegnarci, nè tantomento gateway ecc...Quindi non vi era modo di collegare l'interfaccia wwan ad internet perchè come detto il device non supporta DHCP.

Forse network manager o modem manager potrebbero farlo in qualche modo ma non sono riuscito a testarli.
non so neanche come si usano...

Dopo che ho sollevato la questione gli sviluppatori hanno postato una patch sulla mailing list.
Fai conto che non sapevo neanche come si applicasse, perchè è basata su git... Mi sono fatto spiegare anche quello alla fine...
In conclusione dopo aver ricompilato tutto e aggiornato il pacchetto ecco che adesso mbimcli mi mostra in output IP/GW ecc.
E quindi è possibile configurare a mano l'interfaccia wwan e definire l'instradamento dei pacchetti in modo corretto.

Spero di aver interpretato bene la tua domanda...

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Hai interpretato benissimo, grazie.

Quindi, non solo ti sei buttato su uan coasa nuova, ma hai pure contribuito a migliorare il software. Di questo devi esserne fiero: bravo, è così che si fa 8)

In ultimo, tornando sulla faccenda del DNS: prendendo questo come riferimento

Codice: Seleziona tutto

DNS [0]: '10.207.43.46'
se dai

Codice: Seleziona tutto

dig slacky.eu +short @10.207.43.46
salta fuori qualcosa?

Avatar utente
joe
Iper Master
Iper Master
Messaggi: 3288
Iscritto il: ven 27 apr 2007, 11:21
Slackware: 14.2
Kernel: 4.4.38
Desktop: KDE-4.14.21

Re: Impostare a mano interfaccia di rete

Messaggio da joe »

In effetti sembra funzionare...

Codice: Seleziona tutto

# dig slacky.eu +short @10.207.43.46
151.1.182.109
come mi sia possibile raggiungere il DNS dalla mia interfaccia che ha un IP appartenente ad un'altra subnet non lo so...

rik70
Iper Master
Iper Master
Messaggi: 2207
Iscritto il: gio 10 mar 2011, 9:21
Slackware: 64-current
Kernel: 5.4.x
Desktop: Xfce 4.14
Distribuzione: Arch Linux

Re: Impostare a mano interfaccia di rete

Messaggio da rik70 »

Evidentemente l'instradamento lo fanno loro lato router.
Tanto se stiamo dicendo fesserie qualcuno ce lo farà notare :)

Rispondi