[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware

  • 215 Risposte
  • 9570 Visite

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline gacchu

  • Membro Giovane
  • **
  • 67
Questa guida, non essendo nata per approfondire come è strutturata la rete Vodafone, si concentrerà esclusivamente sui passaggi da eseguire per portare a termine una corretta configurazione del vostro router. Per chiunque voglia capirne meglio o approfondirne il funzionamento, consiglio vivamente di consultare l’esaustivo articolo che ha scritto LukePicci qui https://www.hwupgrade.it/forum/showthread.php?t=2812168.

COSA SERVE:
1) Un router con accesso root Homeware >= 16.3 o OpenWRT >= 15.05
2) I dati di autenticazione VOIP (sono consultabili nell’area personale oppure è possibile richiederli direttamente a Vodafone)
3) I proxy a cui collegarsi utilizzati dalla vostra Vodafone Station
4) Il seriale della vostra Vodafone Station

1 – ESTRARRE I PROXY DALLA CONFIGURAZIONE DELLA VODAFONE STATION
Se avete una Vodafone Station 2 o una Vodafone Station Revolution, mentre è collegata con fonia funzionante, dovete entrare nella pagina di amministrazione, aprire una console Javascript (su chrome/firefox premete F12), incollare il seguente codice e dare invio:

Codice: [Seleziona]
function cwmp_get_values(target) {
var my_soap_obj=new SOAPObject("ParameterNames").val("<string>"+target+"</string>");
var my_next_level=new SOAPObject("NextLevel").val("1");
invoke_rpc("cwmp:GetParameterValues", new Array(my_soap_obj,my_next_level), function(xml){console.log(new XMLSerializer().serializeToString(xml))});
}

cwmp_get_values("InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.")

dall’output che ne esce, prendete gli indirizzi di proxy primario, proxy secondario, registrar primario e registrar secondario. Dovreste trovarli scritti nella forma proxy1.****.vodafone.it e proxy2.****.vodafone.it. Mettete da parte questi 4 indirizzi (nel caso proxy e registrar coincidessero, saranno solo 2 diversi indirizzi proxy1/proxy2).

2 – SERIALE DELLA VODAFONE STATION E HOST-UNIQ
Sul retro della Vodafone Station è presente un’etichetta che riporta il seriale, lo trovate scritto nella forma X123456789, dove il primo carattere indica il produttore della station mentre la parte finale è un codice numerico. Segnatevi il seriale e mettetelo da parte.
Ora dovete calcolare l’host_uniq facendo una conversione stringa-esadecimale del seriale che avete appena preso.

Per farlo, potete dare il seguente comando direttamente sul vostro router da una sessione SSH inserendo il vostro seriale al posto di X123456789:
Codice: [Seleziona]
echo -n X12345678912345  | hexdump -ve '/1 "%02X"'
Se avete a disposizione un computer con Linux installato, potete eseguire questo comando:
Codice: [Seleziona]
echo -n X12345678912345 |xxd -ps”
In alternativa potete usare un convertitore online come quello che trovate in questa pagina:
https://codebeautify.org/string-hex-converter

Il risultato dovrà essere una stringa numerica di 30 caratteri. Mettete da parte anche l’host_uniq.

3 – CONFIGURAZIONE DELLA CONNESSIONE PPPOE DATI E VOCE
Ora dobbiamo sistemare la configurazione della connessione dati e creare un’atra connessione su vlan id 1035 per la voce.

Aprite il file /etc/config/network.
Nella sezione wan, modificate username/password e aggiungete il tag host_uniq:

Codice: [Seleziona]
config interface 'wan'
...
option password 'vodafone'
option username 'D-X12345678912345' # al posto di X123… inserite il seriale della vostra Vodafone Station
option host_uniq '583132333435363738393132333435' # inserite il vostro host_uniq di 30 caratteri (alfa)numerici
...

Salvate il file e riavviate il servizio network con “/etc/init.d/network restart”. A riavvio completato, verificate di avere ancora accesso ad internet, in caso contrario fermatevi e risolvete. Dobbiamo ora occuparci della creazione della seconda connessione pppoe per la voce. Per farlo, avrete bisogno di specificare un MAC ADDRESS; ne va bene uno qualsiasi purché diverso da quello dell'interfaccia wan, consiglio di usare lo stesso che avete nella sezione wan sommando un +0x01 sull'ultimo byte.
Esempio:
Mac Address wan = A4:91:B1:34:5D:9A
Mac Address wan+1 = A4:91:B1:34:5D:9B

Modificate (se già esistenti) o create ora queste due sezioni di configurazione:

Codice: [Seleziona]
config device 'voipptm0' # o voipeth4 con ONT o modem ethernet esterno
option type '8021q'
option name 'voipptm0' # o voipeth4 con ONT o modem ethernet esterno
option macaddr 'mac_address' # inserite il MA generato precedentemente
option ifname 'ptm0' # o eth4 con ONT o modem ethernet esterno
option ipv6 '0'
option vid '1035'

config interface 'voip'
option auto '1'
option proto 'pppoe'
option demand '0'
option macaddr 'mac_address' # inserite lo stesso MA di voipptm0
option ipv6 '0'
option keepalive_adaptive '0'
option ifname 'voipptm0' # o voipeth4 con ONT o modem ethernet esterno
option password 'vodafone'
option username 'V-X12345678912345' # al posto di X123… inserite il seriale della vostra Vodafone Station
option host_uniq '583132333435363738393132333435' # inserite il vostro host_uniq di 30 caratteri (alfa)numerici
option keepalive '4,20'
option defaultroute '0'

Salvate il file e riavviate il servizio network con “/etc/init.d/network restart”. Ora vi serve trovare il gateway della nuova connessione voip. Per farlo scrivete “route |grep voip”. L’output che ne uscirà sarà qualcosa tipo:
123.123.123.123       *               255.255.255.255 UH    0      0        0 pppoe-voip

L’IP della prima colonna è il vostro gateway (dovrebbe finire per .1), mettetelo da parte. Aprite ora nuovamente il file /etc/config/network e, subito dopo la sezione “wan”, inserite la seguente regola di route:

Codice: [Seleziona]
config route 'voip_private'
option interface 'voip'
option netmask '255.0.0.0'
option metric '1'
option target '10.0.0.0/8'
option gateway '123.123.123.123' # inserite qui il vostro gateway

Salvate il file e riavviate nuovamente il network con “/etc/init.d/network restart”. Se tutto è andato bene, dando nuovamente il comando “route |grep voip”, dovreste avere un output di questo tipo (naturalmente al posto di 123... avrete il vostro gateway):
123.123.123.123       *               255.255.255.255 UH    0      0        0 pppoe-voip
10.0.0.0        123.123.123.123       255.0.0.0       UG    1      0        0 pppoe-voip

4– REGOLE DEL FIREWALL
Aprite il file /etc/config/firewall individuate la config zone ‘wan’ ed aggiungete il network voip.

Codice: [Seleziona]
config zone 'wan'
option name 'wan'
list network 'wan'
list network 'wan6'
list network 'wwan'
list network 'voip'
option input 'DROP'
option output 'ACCEPT'
option forward 'DROP'
option masq '1'
option conntrack '1'
option mtu_fix '1'
option wan '1'

Potreste avere la configurazione di una zona per il voip che dovrete commentare. Verificate se avete un “config zone 'z_if1'” e un “config forwarding 'for_if1'” o una zona che contenga regole per l’interfaccia “voip”. Se le trovate, commentate le sezioni. Salvate il file.

Aprite ora il file /etc/config/mwan e nella policy if1_mwan cambiate interfaccia inserendo voip:

Codice: [Seleziona]
config policy 'if1_mwan'
option interface 'voip'

Salvate il file e riavviate il firewall con  “/etc/init.d/firewall restart”.

Potrebbe essere che sia già presente l’interfaccia voip, se così fosse non dovete fare nulla.
E’ possibile anche che il file mwan sia vuoto o inesistente, anche in questo caso non dovete fare nulla.

5– DNS REBIND PROTECTION ED ECCEZIONE PER LA RISOLUZIONE DEI PROXY
Affinché i proxy siano risolti correttamente, bisogna modificare la sezione dnsmasq del file /etc/config/dhcp. Riporto di seguito le righe da modificare/aggiungere per una corretta configurazione, sono solo quelle commentate:

Codice: [Seleziona]
config dnsmasq 'dnsmasq'
option domainneeded '...'
option boguspriv '...'
option filterwin2k '...'
option localise_queries '...'
option rebind_protection '1' # abilitazione rebind protection
option rebind_localhost '1' # abilitazione rebind protection
option local '...'
option domain '...'
option expandhosts '...'
option nonegcache '...'
option authoritative '...'
option cachelocal '1' # attiva
option cachesize '200' # abbastanza grande
option readethers '...'
option leasefile '...'
option resolvfile '...'
option strictorder '...'
option dhcpscript '...'
list hostname '...'
option allservers '...'
option addmac '...'
list server '/proxy.dsl.vodafone.it/91.80.35.167' #risolvi i proxy voip tramite dns vodafone/primario
list server '/proxy.dsl.vodafone.it/91.80.35.134' #risolvi i proxy voip tramite dns vodafone/secondario
list rebind_domain '/proxy.dsl.vodafone.it/' #ammetti rebind per nomi proxy voip
list dhcp_option_force '...'
list dhcp_option_force '...'
list dhcp_option_force '...'

6– CONFIGURAZIONE DI MMPBX
Resta ora l’ultimo passaggio, la configurazione di mmpbxd, il servizio che si occupa della gestione delle linee VOIP.
Aprite il file /etc/config/mmpbxrvsipnet. Se non avete cambiato i nomi della sezione “network” e delle sezioni “profile”, valgono i nomi che riporto di seguito, altrimenti dovrete adeguare i seguenti snippet inserendo i nomi che avete cambiato.

Nella sezione config network 'sip_net', effettuate queste variazioni, inserendo in primary proxy, primary registrar, secondary proxy e secondary registrar quelli che avete ottenuto in precedenza. Su Vodafone, gli indirizzi dei vostri registrar dovrebbero coincidere con quelli dei proxy, se così non fosse, specificate gli indirizzi che avete preso nella sezione 1)

Codice: [Seleziona]
option interface 'voip'
option local_port '5060'
option primary_registrar_port '5060'
option secondary_proxy_port '5060'
option transport_type 'UDP'
option session_timer 'disabled'
option primary_registrar 'proxy1-*****.vodafone.it'
option primary_proxy 'proxy1-*****.vodafone.it'
option domain_name 'ims.vodafone.it'

queste voci vanno invece aggiunte, inserendo al posto di “proxy2-*****.vodafone.it” gli indirizzi dei vostri proxy e registrar secondari. Di nuovo, su Vodafone, gli indirizzi dei vostri registrar dovrebbero coincidere con quelli dei proxy, se così non fosse, specificate gli indirizzi che avete preso nella sezione 1):

Codice: [Seleziona]
option secondary_proxy 'proxy2-*****.vodafone.it'
option secondary_registrar ' proxy2-*****.vodafone.it'
option secondary_registrar_port '5060'

La sezione config profile 'sip_profile_0' va compilata come segue, inserendo al posto di “tuonumero” il vostro numero di telefono e al posto di 'tuapassword' la password per la configurazione del VOIP che vi ha mandato Vodafone o che avete preso dalla vostra area riservata:

Codice: [Seleziona]
config profile 'sip_profile_0'
option network 'sip_net'
option user_name '[email protected]'
option uri '+39tuonumero'
option display_name '+39tuonumero'
option enabled '1'
option password 'tuapassword'

Salvate il file e riavviate il router. Entrate nell’interfaccia grafica di gestione ed aprite la scheda “Telefonia”. Andate in “Mappatura ingresso/uscita” e mettete le due spunte su FXS 1 sia in ingresso che in uscita.
Andate ora in “Codec” e verificate che nell’”Assegnazione codec a FXS 1” lo stato di PCMA, G729 e G722 sia impostato su “Abilitato”. Andando ora su “linee telefoniche” dovreste vedere il “sip_profile_0” attivo e funzionante (pallino verde su Registrato e Stati chiamate).

7- INDIVIDUAZIONE EVENTUALI ERRORI
Nel caso in cui si presentassero problemi, scrivo di seguito dei suggerimenti per verificare la corretta configurazione del sistema:

1) Verifica connessione voip
Controllate in ifconfig che siano presenti le seguenti interfacce:

Codice: [Seleziona]
voipptm0  Link encap:Ethernet  HWaddr E4:8F:34:3A:04:2B
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:278 errors:0 dropped:0 overruns:0 frame:0
          TX packets:276 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:17303 (16.8 KiB)  TX bytes:17548 (17.1 KiB)

pppoe-voip Link encap:Point-to-Point Protocol
          inet addr:123.123.123.231  P-t-P:123.123.123.1  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:5943 (5.8 KiB)  TX bytes:9299 (9.0 KiB)

Se non avete un inet addr assegnato o se P-t-P non riporta il valore del gateway trovato nella sezione 3, verificate la vostra configurazione, avete sbagliato qualcosa.

2) Verifica corretto instradamento connessione voip:
Eseguite il comando “route”, se non avete due righe riferite all’interfaccia voip come di seguito, avete sbagliato qualcosa nella configurazione delle regole di routing nella sezione 3 (naturalmente al posto di 123... avrete il vostro gateway):

123.123.123.123       *               255.255.255.255 UH    0      0        0 pppoe-voip
10.0.0.0        123.123.123.123       255.0.0.0       UG    1      0        0 pppoe-voip

Se il gateway appartiene alla classe 1.255 è probabile che abbiate sbagliato a generare ed impostare l’host_uniq in wan o voip, o che qualora wan fosse già stata connessa con lo stesso mac address ma con host_uniq errato/non impostato ora non sia possibile connettersi sulla rete voip. Ritornate alle sezioni 2 e 3, e verificate di aver fatto tutto correttamente. Se i problemi persistono, date a wan e voip dei nuovi mac address (ad esempio incrementateli entrambi di +0x0F).

3) Verifica risoluzione DNS dei proxy e risposta al ping
Provate a risolvere l’host del proxy con “nslookup proxy1-****.vodafone.it” (naturalmente inserite l’indirizzo del vostro proxy) . L’host deve essere risolto in un indirizzo del tipo 10.123.123.123, di seguito l’output di esempio di una risoluzione host corretta:

Codice: [Seleziona]
Server:    127.0.0.1
Address 1: 127.0.0.1 localhost.homenet.telecomitalia.it
Name:      proxy1-****.vodafone.it
Address 1: 10.174.0.32

Se il vostro proxy non viene risolto, avete sbagliato qualcosa nella configurazione del file dhcp, verificate la sezione 5.

Se la risoluzione è corretta, effettuate un ping al proxy: “ping proxy1-****.vodafone.it”
Se non avete risposta al ping, la causa più probabile è che l’host_uniq in wan o voip sia errato e che quindi vi sia stato assegnato un gateway sbagliato. Verificate di aver generato correttamente l’host_uniq, ritornate nella sezione 2 e verificate di aver fatto tutto correttamente.

4) Regole del firewall e configurazione mmpbxd
Se le verifiche precedenti funzionano, il problema potrebbe essere nella configurazione del firewall o in quella di mmpbxd. Verificate le configurazioni nelle sezioni 4 e 6.



Perché queste indicazioni non combaciano con quelle ufficiali Vodafone?
Questa guida nasce per un semplice motivo: provando a configurare la fonia su un router basato su OpenWRT con i parametri forniti da Vodafone si presenta un problema nelle chiamate in ingresso, che funzionano per circa un minuto, passato il quale la linea diventa non raggiungibile dall’esterno.
A quanto pare questo problema è dovuto ad una incompatibilità tra il gestore dei servizi VOIP (mmpbxd) e la soluzione alternativa creata da Vodafone per le persone che hanno intenzione di non usare una Vodafone Station.

Poiché i dati di autenticazione forniti per la soluzione alternativa di Vodafone funzionano anche con la soluzione standard (quella usata dalla Vodafone Station), è possibile configurare il router in modo tale che funzioni con tale soluzione.
In parole povere, è possibile collegarsi ai proxy utilizzati dalla Vodafone Station tramite una seconda connessione pppoe sul vlan id 1035 opportunamente configurata.

Ringraziamenti
Non sarebbe stato possibile creare questa guida senza il supporto e la revisione di @LuKePicci
« Ultima modifica: 14 Marzo 2020, 11:51 da LuKePicci »

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #1 il: 27 Dicembre 2019, 19:54 »
Provo a riassumere, sul modem non ho trovato ne xxd ne od per fare in automatico la conversione del seriale in HOST_UNIQ, quindi bisogna valorizzare a mano.

Può sembrare ovvio: e' richiesto che valorizziate con i vostri valori le prime righe dello script e che il modem sia fisicamente connesso alla linea vodafone prima di lanciarlo


Se non avete mai connesso prima il router alla linea Vodafone, non fatelo finchè lo script non si ferma su "Waiting..."

Codice: [Seleziona]
SERIALE="X123456789"
MAC_VOIP="A4:91:B1:34:5D:9B"
NUMERO_VOIP="0123456789"
PASSWORD_VOIP="aaaaaaaaaaaaaa"
INTERFACE="ptm0" #ptm0 per VDSL via modem integrato, eth4 per FTTH/PON o altro via ethernet WAN

REGISTRAR1_VOIP="proxy1-*****.vodafone.it"
PROXY1_VOIP="proxy1-*****.vodafone.it"
REGISTRAR2_VOIP="proxy2-*****.vodafone.it"
PROXY2_VOIP="proxy2-*****.vodafone.it"

#DA QUI IN POI NON C'E BISOGNO DI MODIFICARE

HOST_UNIQ="`echo -n $SERIALE | hexdump -ve '/1 "%02X"'`"

uci set network.wan.username=D-"$SERIALE"
uci set network.wan.password='vodafone'
uci set network.wan.host_uniq="$HOST_UNIQ"
uci commit network
ifdown wan && ifup wan
echo "Waiting for wan pppoe…"
while ! (ifconfig | grep pppoe-wan); do sleep 1; done

uci -q show network.voip${INTERFACE} >/dev/null && (
  uci -q delete network.old_voip${INTERFACE}
  uci rename network.voip${INTERFACE}=old_voip${INTERFACE}
  uci set network_old_voip${INTERFACE}.enabled=0
  uci add network device
  uci rename [email protected][-1]=voip${INTERFACE}
)

uci set network.voip"$INTERFACE"=device
uci set network.voip"$INTERFACE".type='8021q'
uci set network.voip"$INTERFACE".name=voip"$INTERFACE"
uci set network.voip"$INTERFACE".macaddr="$MAC_VOIP"
uci set network.voip"$INTERFACE".ifname="$INTERFACE"
uci set network.voip"$INTERFACE".ipv6='0'
uci set network.voip"$INTERFACE".vid='1035'
uci set network.voip"$INTERFACE".enabled='1'

uci -q show network.voip >/dev/null && (
  uci -q delete network.old_voip
  uci rename network.voip=old_voip
  uci set network_old_voip.auto=0
  uci add network interface
  uci rename [email protected][-1]=voip
)

uci set network.voip=interface
uci set network.voip.auto='1'
uci set network.voip.proto='pppoe'
uci set network.voip.demand='0'
uci set network.voip.macaddr="$MAC_VOIP"
uci set network.voip.ipv6='0'
uci set network.voip.keepalive_adaptive='0'
uci set network.voip.ifname=voip"$INTERFACE"
uci set network.voip.password='vodafone'
uci set network.voip.username=V-"$SERIALE"
uci set network.voip.host_uniq="$HOST_UNIQ"
uci set network.voip.keepalive='4,20'
uci set network.voip.defaultroute='0'
uci commit network
/etc/init.d/network reload
echo "Waiting for voip pppoe…"
while ! (ifconfig | grep pppoe-voip); do sleep 1; done

GATEWAY="`route | grep voip | cut -d' ' -f1`"

uci -q show network.voip_private >/dev/null && (
  uci -q delete network.old_voip_private
  uci rename network.voip_private=old_voip_private
  uci set network.old_voip_private=disabled_route
  uci add network route
  uci rename [email protected][-1]=voip_private
)

uci set network.voip_private=route
uci set network.voip_private.interface='voip'
uci set network.voip_private.netmask='255.0.0.0'
uci set network.voip_private.metric='1'
uci set network.voip_private.target='10.0.0.0/8'
uci set network.voip_private.gateway="$GATEWAY"

uci add_list firewall.wan.network='voip'

uci set mwan.if1_mwan.interface='voip'

uci set [email protected][0].rebind_protection='1'
uci set [email protected][0].rebind_localhost='1'
uci set [email protected][0].cachelocal='1'
uci set [email protected][0].cachesize='200'
uci add_list [email protected][0].server='/proxy.dsl.vodafone.it/91.80.35.167'
uci add_list [email protected][0].server='/proxy.dsl.vodafone.it/91.80.35.134'
uci add_list [email protected][0].rebind_domain='/proxy.dsl.vodafone.it/'

uci set [email protected][0].interface='voip'
uci set [email protected][0].local_port='5060'
uci set [email protected][0].transport_type='UDP'
uci set [email protected][0].domain_name='ims.vodafone.it'
uci set [email protected][0].primary_registrar="$REGISTRAR1_VOIP"
uci set [email protected][0].primary_proxy="$PROXY1_VOIP"
uci set [email protected][0].primary_registrar_port='5060'
uci set [email protected][0].secondary_registrar="$REGISTRAR2_VOIP"
uci set [email protected][0].secondary_proxy="$PROXY2_VOIP"
uci set [email protected][0].secondary_proxy_port='5060'
uci set [email protected][0].session_timer='disabled'

uci set [email protected][0].user_name=+39"$NUMERO_VOIP"@ims.vodafone.it
uci set [email protected][0].uri=+39"$NUMERO_VOIP"
uci set [email protected][0].display_name=+39"$NUMERO_VOIP"
uci set [email protected][0].enabled='1'
uci set [email protected][0].password="$PASSWORD_VOIP"

uci commit

/etc/init.d/network reload
/etc/init.d/dnsmasq restart
/etc/init.d/firewall reload
if /etc/init.d/mwan enabled; then /etc/init.d/mwan reload; fi

/etc/init.d/mmpbxd enable
/etc/init.d/mmpbxd restart

echo "Trying to ping voip proxies…"
if ! (ping -W 2 -c 1 $PROXY1_VOIP || ping -W 2 -c 1 $PROXY2_VOIP) >/dev/null; then echo ping test failed; fi
# END
« Ultima modifica: 14 Marzo 2020, 11:37 da LuKePicci »

Offline milan100

  • Membro Anziano
  • ***
  • 128
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #2 il: 27 Dicembre 2019, 20:19 »
@gacchu ottimo lavoro! Ti consiglio di farti mettere il thread in evidenza da un moderatore.
« Ultima modifica: 27 Dicembre 2019, 20:24 da milan100 »

Offline gacchu

  • Membro Giovane
  • **
  • 67
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #3 il: 27 Dicembre 2019, 21:48 »
@milan100 grazie, era proprio necessario mettere un po' d'ordine nel casino che abbiamo creato nell'altro thread. Se i moderatori lo riterranno opportuno, metteranno questo thread in evidenza.
@FrancYescO grazie per il contributo, sicuramente impostare tutto tramite uci è comodo, ma dato che la guida è generica e può essere utilizzata su diversi apparati, credo che almeno durante la prima configurazione sia importante modificare i file a mano, almeno si ha più controllo su ciò che si sta facendo (verificare l'esistenza di mwan e controllarne il contenuto, verificare eventuali regole del firewall in conflitto con l'interfaccia voip etc.).
Successivamente effettuando le eventuali modifiche al tuo lavoro adeguandole alla situazione che si trova nei vari file di configurazione, diventa più rapido e conveniente impostare tutto tramite uci.
So di essere stato prolisso, ma ci tenevo a descrivere tutto nel modo più chiaro possibile. Tutto sommato, alla fine,  bisogna modificare 4 file di configurazione.
« Ultima modifica: 27 Dicembre 2019, 22:05 da gacchu »

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #4 il: 27 Dicembre 2019, 23:54 »
Figurati lo so che e' meglio impostare tutto a mano e controllando quello che si fa, ma se si riesce a scriptare il tutto e' tanto meglio, ho solo colto l'occasione per fare (una parte di) quello che volevo fare da tempo: una lista di script da richiamare per poter configurare, per lo meno i router technicolor con i vari operatori senza tante grane dandogli solo i parametri di input di cui si ha strettamente bisogno (in alcuni casi basterebbe numero di telefono e password del voip, il resto e' ricavabile) ... solo che servirebbe qualcuno che si mette di impegno come hai fatto tu a capire come orchestrare tutte le componenti

nel caso specifico, se il file mwan non esiste ci si becca un semplice "uci path not found" ma almeno da come hai scritto tutto dovrebbe funzionare ugualmente, poi se qualcuno avra' voglia di provarlo lo miglioro con il tempo e con i problemi che si presentano, per ora e' da considerare come "prova lo script se non funziona segui passo passo la guida"
« Ultima modifica: 04 Gennaio 2020, 18:18 da FrancYescO »

Offline kitt1997

  • Nuovo Iscritto
  • *
  • 38
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #5 il: 04 Gennaio 2020, 18:08 »
Ragazzi scusate ho un paio di problemi nella configurazione.
Prima di tutto volevo dirvi che questa guida è fantastica visto anche che attualmente è l'unico modo per far funzionare il voip Vodafone su router che non siano i Fritz!, complimenti davvero!!  :clap:

Io ho un TG789vac v2 della TIM, sbloccato con il firmware UNO. Ho provato a far funzionare il VoIP su questo modem usando direttamente lo script di @FrancYescO in modo da evitare eventuali errori, ma purtroppo non ci riesco.
Mi vengono fuori due problemi che non so se dipendano dal modello del modem che non supporta determinate cose (se non sbaglio questa guida è fatta ad hoc per il TIM Hub):

  • Il mio file /etc/config/mwan è vuoto e quindi anche il comando uci set mwan.if1_mwan.interface='voip' fallisce. Può influenzare?
  • Il gateway che mi viene fuori è della classe 1.255 e ho letto che se viene fuori un gateway così c'è qualcosa che non va nell'unique_id. Ho controllato almeno 5 volte che fosse presente sia nell'interfaccia wan che nell'interfaccia voip. L'ho ricalcolato in due modi diversi e viene sempre lo stesso. Non so davvero dove sbaglio. Non vorrei che questo modem non supportasse il tag host_uniq...

Internet funziona normalmente anche con il tag host_uniq inserito nell'interfaccia wan, solo il VoIP non funziona visto che il gateway che mi esce è sbagliato (non è nemmeno pingabile).
Grazie a chi vorrà aiutarmi  :)

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #6 il: 04 Gennaio 2020, 18:22 »
Il primo sicuramente dipende dal modello (o meglio dal firmware) ma stando alla guida: E’ possibile anche che il file mwan sia vuoto o inesistente, anche in questo caso non dovete fare nulla.

per il secondo non saprei aiutarti ma e' sicuramente quello bloccante... forse dipende dal MAC usato? intanto mi confermi che lo script procede con tutta la configuarazione impostando quel gateway anche se sbagliato?

Offline milan100

  • Membro Anziano
  • ***
  • 128
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #7 il: 04 Gennaio 2020, 18:49 »
@FrancYescO  il mac non influisce in alcun modo. Basta semplicemente cambiare gli ultimi due valori rispetto a quello del modem che si sta usando,e va uguale.

@kitt1997 esegui da shell il comando route e postaci il risultato. Esegui poi il comando ifconfig e fai la stessa cosa.

ps l'host uniq ce l'hai da 30 numeri?
ps2 no il modem supporta il tag host uniq.
« Ultima modifica: 04 Gennaio 2020, 19:07 da milan100 »

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #8 il: 04 Gennaio 2020, 18:52 »
si puo' utilizzare anche lo stesso MAC dell'interfaccia WAN?

Offline milan100

  • Membro Anziano
  • ***
  • 128
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #9 il: 04 Gennaio 2020, 18:54 »
@FrancYescO no quello non si può fare. Devono pur essere distinti.
« Ultima modifica: 04 Gennaio 2020, 18:57 da milan100 »

Offline kitt1997

  • Nuovo Iscritto
  • *
  • 38
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #10 il: 04 Gennaio 2020, 21:10 »
@FrancYescO Nello script c'è solo da aumentare il tempo di sleep perchè, almeno con il mio router, ci mette più di 5 secondi a riavviare il processo network e quindi la variabile GATEWAY mi era rimasta vuota. Infatti poi ho dovuto manualmente rieseguire uci set network.voip_private.gateway="1.255.xxx.xxx". Direi che 15-20 secondi potrebbero andare bene. Per il resto è andato tutto bene

@milan100 Io non avevo nessun MAC presente in tutto il file network, a differenza di quello che diceva la guida. Ho preso quello scritto sull'etichetta e ho fatto +1. Va bene?
Il risultato dei due comandi ve lo posto domani in giornata perchè ora non ho il modem sotto mano.
L'host uniq è di 30 numeri: 43313930xxxxxxxxxxxxxxxxxx3532. Questo il seriale: C190xxxxxxxxx52
« Ultima modifica: 04 Gennaio 2020, 22:05 da kitt1997 »

Offline milan100

  • Membro Anziano
  • ***
  • 128
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #11 il: 04 Gennaio 2020, 21:40 »
@kitt1997   Premettendo che non sò come sia possibile che tu non abbia alcun riferimento mac nel file network,ti posto il codice così lo confronti,ed eventualmente lo copi con le opportune modifiche.

Codice: [Seleziona]
config device 'voipptm0'
option type '8021q'
option name 'voipptm0'
option macaddr 'xx:xx:xx:xx:xx:xx' 
option ifname 'ptm0'
option ipv6 '0'
option vid '1035'

config interface 'voip2'
option auto '1'
option proto 'pppoe'
option demand '0'
option macaddr 'xx:xx:xx:xx:xx:xx'
option ipv6 '0'
option keepalive_adaptive '0'
option ifname 'voipptm0'
option password 'vodafone'
option username 'V-SERIALE VSR'
option host_uniq 'STRINGA'
option keepalive '4,20'
option defaultroute '0'

config device 'wanptm0'
option type '8021q'
option name 'wanptm0'
option macaddr 'xx:xx:xx:xx:xx:xx'
option ifname 'ptm0'
option ipv6 '0'
option vid '1036'

config interface 'wan'
option auto '1'
option proto 'pppoe'
option demand '0'
option macaddr 'xx:xx:xx:xx:xx:xx'
option ipv6 '0'
option peerdns '1'
option reqopts '1 3 6 15 26 33 42 51 121 249'
option keepalive_adaptive '0'
option dns_metric '0'
option ifname 'wanptm0'
option password 'vodafone'
option username 'D-SERIALE VSR'
option host_uniq 'STRINGA'


In wanptm0 e wan,metti il mac del modem TG789vac v2,mentre in voipptm0 e voip2 (mettilo così per il momento) metti il mac della station ma con gli ultimi due valori differenti. Oppure se vuoi ti affidi ad un generatore di mac casuali,e metti quelli.

voip2 va sostituito anche nel file firewall,come da guida. Nel file network stessa cosa,esattamente in questa parte di codice:

Codice: [Seleziona]
config route 'voip_private'
option interface 'voip2'
option netmask '255.0.0.0'
option metric '1'
option target '10.0.0.0/8'
option gateway 'x.xxx.xxx.x'

Dopodichè riavvii il modem. Successivamente esegui i due comandi che ti dicevo.


Partiamo da qui,e poi man mano vediamo cosa correggere.
« Ultima modifica: 04 Gennaio 2020, 22:37 da milan100 »

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #12 il: 05 Gennaio 2020, 08:36 »
le option macaddr non sono obbligatorie, semplicemente se non ci sono viene utilizzato il MAC reale del dispositivo

Offline kitt1997

  • Nuovo Iscritto
  • *
  • 38
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #13 il: 05 Gennaio 2020, 16:53 »
Allora, dopo aver ripristinato la configurazione del router da un backup che mi ero creato prima di metterci le mani, ho rieseguito tutto lo script.
Rispetto a ieri però ho inserito come MAC_VOIP il MAC della VSR (tanto la metto in una scatola, non devo riusarla). Inoltre alla fine ho riavviato il router, cosa che stupidamente non avevo fatto ieri.
Adesso FUNZIONA ALLA GRANDE!!
Grazie mille a tutti, davvero! :)

Aggiungo anche che il voip si è correttamente configurato pur non avendo il gateway nella route voip_private. Avevo infatti utilizzato lo script originale con sleep 5 e la variabile era rimasta vuota. Io in ogni caso l'ho aggiunto successivamente a mano, non si sa mai.
Un'ultima cosa: il router mi ha aggiunto automaticamente questa riga in config route 'voip_private':
Codice: [Seleziona]
option _key '29C407C3XXXXXXXXXXXXXXXXB91B398E'

Offline FrancYescO

  • Esperto
  • ****
  • 1942
Re:[GUIDA] Configurazione VoIP Vodafone su OpenWrt e Homeware
« Risposta #14 il: 05 Gennaio 2020, 17:52 »
puoi ignorare la _key roba che viene aggiunta in automatico da uci o chi per lui

piuttosto se il MAC della VSR e' necessario penso sia giusto darci un peso adeguato, perche' dalla guida sembra sia indifferente