Funzionamento Numero telefonico TIM Voip su app zoiper Android

  • 40 Risposte
  • 30365 Visite

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Enrico Menotti

  • Nuovo Iscritto
  • *
  • 14
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #15 il: 26 Giugno 2018, 00:37 »
Grazie Giulio, gentilissimo. Stavo procedendo nella direzione di guadagnare accesso root al router, ma poi sono incappato nello script Python di cui parlavi ed ho usato quello. Funziona, ma non riesco a sentire la voce dell'interlocutore esterno (mentre lui sente me). Devo indagare un po'.

Enrico


EDIT

Sto usando Zoiper su un MacBook Pro, non su uno smartphone. Mi par di aver capito che il protocollo VoIP non va molto d'accordo col NAT; ho letto in giro che si può fare un workaround con un sistema detto STUN (che non ho idea di come funzioni), ma non sempre va bene. Ho letto poi che un port forwarding sarebbe più sicuro e robusto. Mi mancano però decisamente i dettagli di come impostare la cosa.

Ad ogni modo, vi sembra verosimile che la mancanza del flusso audio entrante possa essere dovuta a pasticci del NAT?
« Ultima modifica: 26 Giugno 2018, 02:09 da Enrico Menotti »

Offline zoomx

  • Esperto
  • ****
  • 589
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #16 il: 26 Giugno 2018, 19:31 »
Non credo, la telefonata la riceve il modem che poi la instrada ai telefoni, l'app di TIM funziona su LAN.

Offline fabiobassa

  • Esperto
  • ****
  • 728
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #17 il: 26 Giugno 2018, 22:38 »
@zoomx
 Non vorrei dire una stratosferica balla ma credo che invece enrico non sia molto lontano dal reale problema parlando di NAT
Quando il modem origina la telefonata il campo "from" del pacchetto sip che va verso il server " asterisk" di TIM è l'ip della sua interfaccia vdsl/adsl  ( 95.xxx.xxx.xxx oppure 70.xxx.xxx.xxx insomma gli ip che TIM possiede e che assegna dinamicamente ai suoi routers ) .
Su questa interfaccia fibra/vdsl/adsl che sia è in ascolto sulla porta 5060 il client asterisk mmpbxd del router
Il server asterisk di tim legge il campo " from" del pacchetto sip, e sa a chi rispondere perche l'ip della interfaccia vdsl/adsl è un indirizzo pubblico e la corrispondente porta è aperta per il signalling (5060) piu' sono aperte le porte dello stream rtp ( tipicamente oltre la 10000 non so cosa usi TIM )

Quando origina zoiper ( che risiede sulla lan ) il campo from del pacchetto SIP  è 192.168.1.xxx ( ammesso che il router TIM abbia la configurazione di default) ed una serie di porte per lo stream rtp  xxx CHE SONO QUELLE DI ZOIPER STESSO e credo che all'apertura del programmino siano randomiche.
L ip viene nattato e una porta sul router viene aperta , ma purtroppo non viene nattato il campo from dello stream rtp che rimane 192.168.1.xxx
Ti cito il testo in inglese
Citazione
Media associated with SIP calls also has problems traversing NAT.
   RTP [RFC3550] runs over UDP and is one of the most common media
   transport types used in SIP signaling.  Negotiation of RTP occurs
   with a SIP session establishment using the Session Description
   Protocol (SDP) [RFC4566] and a SIP offer/answer exchange [RFC3264].
   During a SIP offer/answer exchange, an IP address and port
   combination are specified by each client in a session as a means of
   receiving media such as RTP.  The problem arises when a client
   advertises its address to receive media and it exists in a private
   network that is not accessible from outside the NAT

Dunque l'audio di ritorno NON si sente perche il pacchetto di origine dice al server tim di restituire lo stream rtp, in pratica l'audio,  ad un ip della lan interna e che ovviamente il server di tim non conosce.

@Enrico Menotti  e ovviamente per tutti coloro che sono interessati
leggiti questo che è interessante ci sono anche alcune illustrazioni di perchè i pacchetti vengono droppati

https://tools.ietf.org/html/rfc6314

e comunque credo che per ovviare a questo problema l'applicazione telefono di TIM all'interno implementi qualche sorta di STUN o che sia in grado di mappare il campo from dello stream audio con l'ip pubblico del modem, probabilmente al volo fa un reverse dns e lo mette nel campo from dell'header rtp )
Non lo so per certo ma immagino

Lo so che non ti ho risolto il problema, ma almeno  non sbatti la testa ad aprire porte sul router semplicemente perchè il problema non è quello

EDIT: forse abilitando la funzione ICE di zoiper. prova, non costa nulla e non devi mettere alcunche' solo un segno di spunta
« Ultima modifica: 26 Giugno 2018, 22:55 da fabiobassa »

Offline Enrico Menotti

  • Nuovo Iscritto
  • *
  • 14
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #18 il: 27 Giugno 2018, 20:43 »
@fabiobassa Grazie per la risposta precisa ed esauriente. Confermi completamente ciò che pensavo; si tratta ora di trovare una soluzione. Potrei usare il port mapping, ma appunto devo prima riuscire a dire a Zoiper di indicare nei pacchetti UDP l'indirizzo IP esterno del router, il quale va a sua volta letto dal router stesso. Proverò.

Un'altra possibilità sarebbe questa cosa dello STUN, ma non ho capito mica tanto bene come funziona: puoi cercare di chiarirmelo? Ho notato che Zoiper ha di default impostato (ed attivo!) lo stun "stun.zoiper.com".

Infine, un professionista IT, mio amico, mi ha suggerito che forse la TIM mette in piedi una Virtual LAN per le sue teleassistenze, e potrebbe anche essere che venga sfruttata in qualche modo questa per far funzionare l'app TIM telefono.

Buona serata!

Enrico


EDIT

Da quel che vedo, non mi pare ci sia modo semplice per dire a Zoiper di inviare i pacchetti inserendo come indirizzo del mittente l'IP pubblico del router. Sarebbe quindi forse il caso di insistere con la cosa dello STUN. Quando parli di "funzione ICE di Zoiper" ti riferisci appunto allo STUN? (Il termine "ICE" non compare nelle opzioni di Zoiper, lo STUN sì). Con lo STUN ho provato, con stun.zoiper.com, lasciando le porte di default, ma non ho combinato niente.
« Ultima modifica: 27 Giugno 2018, 20:56 da Enrico Menotti »

Offline fabiobassa

  • Esperto
  • ****
  • 728
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #19 il: 27 Giugno 2018, 21:16 »
@Enrico Menotti

volevo premettere una cosa, il voip è una mia grande passione, ma ahimè sono un auto didatta  ( figurati che ho il liceo classico ) e non un programmatore dunque a volte posso usare termini " non tecnicissimi" ma che rendono l'idea.
Queste maledizioni di rtp, audio in un senso solo  e menate varie le ho studiate bene bene e poi ti dico io come ho risolto.

Ho commesso un errore e chiedo venia, è l'applicazione csip simple che ha il campo ICE, effettivamente zoiper ha lo stun e basta. Lo stun si mette in mezzo tra te e il server tim ed è lui che cambia il campo "VIA" del pacchetto rtp , insomma è un media relais. Non so se potrebbe funzionare col proxy di TIM.

Enrico puoi fare poco:  o zoiper ha una implementazione alg veramente funzionale che cambia il campo ip , o non ci cavi un ragno dal buco.
Siccome io adoro il voip, come detto, ho tirato su un serverino asterisk casalingo... lui si occupa di nattare BENE i campi dei pacchetti rtp e i vari telefoni , telefonini ( gia' i telefonini dentro casa diventano estensioni dell'asterisk interno) , adattatori ata , vecchi agpf, router con porte fxs e chi piu ne ha piu ne metta oltre a fare e ricevere telefonate tra loro ( casa, cantina, garage, mansarda per chi ha tutte queste belle cose ) escono verso tim con l'appropriato campo " [email protected]. VIA l'ip giusto ) e dunque funziona tutto. Aggiungi a tutto cio che quando sono fuori per lavoro mi registro sull'asterisk che ho a casa ed esco col numero tim anche se in realta sto su rete mobile che voda o fast !!!



Offline natalinux

  • VIP
  • *****
  • 9304
  • Sesso: Maschio
•••─ ─ ─••• •••─ ─ ─••• •••─ ─ ─•••
TG789vac v2Ver. Mint (17.2) gui 9.6.97 (Tim)
AGTHP_2.3.5 ver. Damson (19.4) DGA4132 [DEV]9.6.97(Tim)
ZTE H388X AGZHP_1.2.3
NordVPN

Offline Enrico Menotti

  • Nuovo Iscritto
  • *
  • 14
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #21 il: 27 Giugno 2018, 23:19 »
TUTTO FALSO (vedi post sul rasoio di Occam un po' più avanti)


@fabiobassa Problem solved!

1. La porta std dello STUN è la 3478, e così è impostata su Zoiper; ma andando sul router con telnet (basta l'Administrator fornito di default dalla TIM, non serve rootarlo, certo bisogna modificare il file config abilitando telnet e poi ricaricarlo) si scopre che c'è un bind su quella porta. Precisamente, da
menu -> connection -> bindlist
si trova l'applicazione CONE(UDP), protocollo udp, bindata alla porta 3478. Non ho idea di cosa sia questa applicazione. Ho rimosso il bind (con l'unbind).

2. Sulle opzioni avanzate di Zoiper ho abilitato, sia per SIP che per RTP, l'utilizzo di una porta random sopra il 32000. Non sono sicuro che serva per l'RTP, ma per il SIP serve. A questo punto la domanda è: ma allora la 5060 che è specificata a sinistra, per il SIP, non viene usata? E perché la 5060 non va bene? Forse perché viene acchiappata dal router per il suo VoIP interno?

3. Sulle opzioni avanzate dell'account ho lasciato lo STUN predefinito (stun.zoiper.com) con la porta predefinita (3478), ma ho disabilitato rport (cercando in rete ho trovato indicazioni ufficiali di Zoiper secondo le quali l'rport va bene sostanzialmente per TCP, non tanto per UDP) ed rport media (sempre secondo Zoiper, è l'ultima spiaggia, e non ho trovato indicazioni precise sul funzionamento - dicono solo 'don't use this unless you exactly know what you're doing').

Basta, così funziona. Ora vado a nanna.

Per la cronaca, volevo testare il funzionamento dello STUN ed ho provato questo coso qui:

https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/

Vero che non avevo ancora unbindato la porta 3478, ma una volta premuto il "Gather candidates" la pagina si ferma lì. Boh.

@natalinux Bel video. Ho avuto la stessa idea, ma non mi spingerò fino al punto di installare sul router un server VPN, anche perché se non consumo minuti di telefono cellulare, consumo comunque dati di connessione cellulare. E poi non ho lo smartphone (!). Per telefonare uso ancora il mio vecchio Nokia a mattoncino GSM. 50 euri 11 anni fa e la batteria va ancora alla grande... magari ormai è un po' graffiato, ma sapete com'è...

Buona notte,

Enrico
« Ultima modifica: 01 Luglio 2018, 15:08 da Enrico Menotti »

Offline fabiobassa

  • Esperto
  • ****
  • 728
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #22 il: 28 Giugno 2018, 10:18 »
1) non ho nemmeno io la piu pallida idea di cosa sia questo CONE, forse lo stun interno del modem  rinominato in CONE ( del resto asterisk interno si chiama mmpbxd )

2) esatto la 5060 serve a mmpbxd . bastava cambiare la sip in 5061 e le rtp lasciarle cosi come erano ma se funziona ricordiamoci sempre un vecchio detto elettronico :
Citazione
Quando una cosa funziona finche basta, fermati se no si guasta
   :rotfl:

3) credo che questo sia l'esempio tipico di come i forum siano una risorsa inesauribile: una domanda ( la tua) , una piccola spiegazione ( la mia) , la soluzione funzionante ( sempre scoperta da te focalizzando il problema)   :clap:
Piu' di questo cosa vuoi ? Un lucano ?  :rotfl:

Offline mavelot

  • Administrator
  • Esperto
  • *****
  • 1705
  • Live Long and Prosper
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #23 il: 28 Giugno 2018, 10:26 »
Avrà a che fare con il Full Cone NAT ??

Offline fabiobassa

  • Esperto
  • ****
  • 728
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #24 il: 28 Giugno 2018, 10:30 »
@mavelot

non ci avevo pensato, credo tu abbia perfettamente ragione !!

Offline natalinux

  • VIP
  • *****
  • 9304
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #25 il: 28 Giugno 2018, 17:53 »
@Enrico Menotti nel mio router smart modem plus 4130 non ci sono queste impostazioni da modificare  forse tu hai lo scolapasta bianco?
•••─ ─ ─••• •••─ ─ ─••• •••─ ─ ─•••
TG789vac v2Ver. Mint (17.2) gui 9.6.97 (Tim)
AGTHP_2.3.5 ver. Damson (19.4) DGA4132 [DEV]9.6.97(Tim)
ZTE H388X AGZHP_1.2.3
NordVPN

Offline Enrico Menotti

  • Nuovo Iscritto
  • *
  • 14
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #26 il: 28 Giugno 2018, 22:10 »
@Enrico Menotti nel mio router smart modem plus 4130 non ci sono queste impostazioni da modificare  forse tu hai lo scolapasta bianco?

Esatto, proprio lui: Technicolor 789vac v2 (codice ricavato dal security.cfg, prima riga). Il tuo è quello nero da 200 Mb/s, giusto?

Offline natalinux

  • VIP
  • *****
  • 9304
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #27 il: 28 Giugno 2018, 22:33 »
si é il fratello maggiore account is ready trasmetto ma non ricevo
•••─ ─ ─••• •••─ ─ ─••• •••─ ─ ─•••
TG789vac v2Ver. Mint (17.2) gui 9.6.97 (Tim)
AGTHP_2.3.5 ver. Damson (19.4) DGA4132 [DEV]9.6.97(Tim)
ZTE H388X AGZHP_1.2.3
NordVPN

Offline Enrico Menotti

  • Nuovo Iscritto
  • *
  • 14
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #28 il: 28 Giugno 2018, 23:37 »
si é il fratello maggiore account is ready trasmetto ma non ricevo

Mah, è lo stesso problema che avevo io, sarebbe naturale pensare che lo si possa risolvere nello stesso modo. Se accedi al router con telnet usando l'Administrator fornito di default dalla TIM, e chiami menu, trovi connection tra i comandi disponibili? E se sì, nel bindlist c'è CONE(UDP) sulla porta 3478? Per la cronaca, se non riesci ad agire da lì puoi comunque dare un'occhiata sul file di configurazione, che suppongo tu abbia già scaricato dal router e decriptato, altrimenti non mi spiegherei come tu possa usare telnet. Cerca CONE(UDP); nel mio vedo tutte le linee dei bind. La sezione del file è connection.ini.

@fabiobassa @mavelot Grazie per lo spunto di ricerca sul CONE. Guardate qui:

https://crowdsupport.telstra.com.au/t5/Modems-Hardware/Turn-off-NAT-on-a-Technicolor-TG587n-v3/td-p/18340

https://gearsofwar.com/en-us/forums/a35773093fe74d3d9970e0a896b16d6d/threads/tutorial-open-nat-win-10/c46f5f08-bcfd-4e3f-bb6b-0f6766b211f0/posts

https://serverfault.com/questions/208522/what-is-strict-moderate-and-open-nat

https://www.3cx.com/blog/voip-howto/static-port-mappings/

Non sono ancora riuscito a mettere insieme tutti i pezzi del puzzle, ma da quanto ho letto desumo le cose seguenti:

1. Se il NAT è CONE significa che è aperto, cioè le porte sono accessibili dall'esterno senza invito dall'interno (ma CONE che cavolo vuol dire letteralmente, in inglese? E che c'entra con "open"?)
2. Esiste un CONE firewall (ma dove cavolo sta, sul router o sull'host locale?), e se sul Technicolor è specificato che una porta è bindata al CONE(UDP), significa che i pacchetti UDP che arrivano a quella porta vengono in qualche modo gestiti dal firewall (dalle pagine web sopra indicate leggo che la porta viene bindata al CONE firewall; spero di aver interpretato correttamente questa cosa)
3. Se il NAT è simmetrico anziché FULL CONE (e mi piacerebbe sapere perché usano questi termini), le porte vengono rimappate on the fly, in modo dinamico, e anche aperte e chiuse continuamente, il che impedisce un corretto streaming audio. Questa dovrebbe essere la causa del problema

Dunque, se si lega la porta al CONE(UDP), il CONE firewall la rende sempre aperta e la natta in modo simmetrico, e quindi dinamico, creando così problemi al VoIP. Che ne pensate di questo tentativo di incollare i vari pezzi del discorso? Ha senso? Qualcuno mi sa spiegare un po' meglio cosa si intenda esattamente per "application", cosa sia 'sta application CONE(UDP) con precisione, e cosa sia il CONE firewall? Per la cronaca, mi sono appena accorto che nel file di config del router sono definite anche quattro applicazioni SIP, che però non sono bindate ad alcuna porta. Non è per caso che l'app TIM telefono usa queste, anziché lo STUN, per gestire il NAT?

E con queste amletiche riflessioni passo e chiudo. Buona notte!

Offline fabiobassa

  • Esperto
  • ****
  • 728
  • Sesso: Maschio
Re:Funzionamento Numero telefonico TIM Voip su app zoiper Android
« Risposta #29 il: 29 Giugno 2018, 01:03 »
1) cone nat ovvero nat uno ad uno : un ip esterno una porta >>>>>un ip interno una porta ( non necessariamente la stessa, ma sempre una sola )
dmz tanti ip esterni tante porte>>>>un ip interno tante porte ( pericolosissimo se ci sono servizi delicati in ascolto non adeguatamente protetti da keys e passwords )

non esiste un cone firewall in se ; è un tipo di filtraggio cone ma sempre da parte del firewall principale

3) avevi appena trovato la soluzione ( stun ) , sei tornato a parlare di porte. Non è quello il problema ma il mancato apprendimento dell 'ip esterno e conseguente rimappatura del campo VIA del pacchetto sip

Interessantissimi link , grazie per la segnalazione Enrico

@natalinux
premetto che non ho giochicchiato col fratello maggiore ma con l'agtot si. AGTOT usa il suo linguaggio simil-uci con comandi tutti suoi da telnet
Il fratello maggiore è piu openwrt orientated  ed accessibile "visivamente" col bellissimo winscp.
E' probabile che ci sia la stessa porta bindata ..solo che chissa dove è pero' con winscp forse la si trova subito spulciando le cartelle network o firewall ( suppongo  :worry:  )