Pagina 1 di 1

SIP, RTP e NAT

Inviato: gio 20 ago , 2009 9:31 am
da jaxel
Ciao a tutti,
possiedo un Cisco 7960G con firmware SIP (versione P0S3-08-11-00) e un Cisco 2811 (IOS:c2800nm-adventerprisek9-mz.124-24.T) collegato ad una adsl con ip dinamico.
Attualmente il 7960 è configurato per registrarsi a due provider (Cheapnet e Messagenet) e con entrambi riesco ad effettuare le chiamate perfettamente ma quando ricevo le chiamate il telefono squilla ma se rispondo non si sente l'audio.
Dopo un breve ragionamento e qualche conferma sono arrivato alla conclusione che RTP ha qualche problemino con il NAT.

Il problema sembrerebbe solo del 7960 poichè prima avevo un altro telefono SIP (non Cisco) e funzionava benissimo.

Sul 2811 ho configurato l'ip inspect come segue:

Codice: Seleziona tutto

ip inspect udp idle-time 900
ip inspect hashtable-size 2048
ip inspect dns-timeout 200
ip inspect tcp finwait-time 300
ip inspect tcp synwait-time 40
ip inspect name FW http alert off
ip inspect name FW https alert off
ip inspect name FW pop3s alert off
ip inspect name FW imaps alert off
ip inspect name FW dns alert off
ip inspect name FW tcp alert off
ip inspect name FW udp alert off
ip inspect name FW icmp alert on
ip inspect name FW sip

interface Dialer0
  ip inspect FW out
Inoltre ho configurato anche il NAT così:

Codice: Seleziona tutto

ip nat inside source static udp 192.168.0.55 5060 interface Dialer0 5060
ip nat service sip udp port 5060
ip nat service sip tcp port 5060
ip nat service allow-sip-even-rtp-ports 

Le ultime tre righe dovrebbero essere di default.
Poichè ho intenzione di utilizzare più provider SIP (anche più di due), la soluzione intrapresa da altri su questo forum utilizzando il comando sip-ua non mi sembrava fattibile (correggetemi se sbaglio) e cercando ho scoperto che il mio router può funzionare da SIP proxy (correggetemi sempre se sbaglio).
Ho trovato sul sito della Cisco la seguente pagina http://www.cisco.com/en/US/docs/ios/12_ ... atsbc.html dove spiega come fare per configurare il Session Border Controller.
Purtroppo non ho capito come devo configurarlo... a partire dal comando "proxy inside-address inside-port outside-address outside-port protocol udp"... non capisco quale indirizzo ip e porta devo mettere al posto di inside-address, inside-port, outside-address e outside port... è possibile utilizzare questa soluzione con ip pubblico dinamico come ho io?
E' la soluzione giusta per risolvere il problema con RTP?
Mi potreste aiutare a capire come devo configurare questa feature o potete indicarmi qualche libro o link dove posso trovare maggiori informazioni?

Grazie

Fabio

Inviato: gio 20 ago , 2009 3:19 pm
da IsaCab
Ciao,
sono arrivato alla conclusione che RTP ha qualche problemino con il NAT
Si, RTP ha problemi con il NAT. Il problema è risolvibile facendo in modo che il pacchetto UDP usato per trasportare RTP venga scritto nel modo corretto (IpSource ed IPDestination).

A questo proposito ci sono diverse soluzioni, come ad esempio gli STUN server messi a disposizione dai provider SIP.

Nel tuo caso specifico, questi link potrebbe venirti in aiuto :

http://www.cisco.com/en/US/docs/voice_i ... n1106.html

Più in dettaglio :

http://www.cisco.com/univercd/cc/td/doc ... tm#1032335

Ciao Giulio

Inviato: gio 20 ago , 2009 10:13 pm
da jaxel
Ciao Giulio,
ti ringrazio della rapidissima risposta!
Nel 7960 avevo già configurato il NAT così:

Codice: Seleziona tutto

nat_enable: "1"

nat_address: "192.168.0.1"

nat_received_processing: "1"
Perchè avevo letto che come indirizzo di NAT dovevo mettere l'indirizzo del router di default.
Essendo la mia rete costituita così:

Codice: Seleziona tutto

7960 (192.168.0.55) <---> (192.168.0.1) router (192.168.1.2) <---> (192.168.1.1) 2811 <---ADSL--->
Mi è bastato sostituire la seguente riga dalla configurazione del 7960 e tutto è andato a posto!

Codice: Seleziona tutto

nat_address: "192.168.1.1"
In pratica ho messo l'indirizzo ip del router che poi effettua il NAT (il 2811 appunto).

Sono comunque interessato ad imparare ad utilizzare il router come proxy SIP, mi puoi aiutare?

Grazie mille!

Ciao!

Inviato: ven 21 ago , 2009 8:23 am
da IsaCab
Ciao,
In pratica ho messo l'indirizzo ip del router che poi effettua il NAT (il 2811 appunto).
Ok ottimo
Sono comunque interessato ad imparare ad utilizzare il router come proxy SIP, mi puoi aiutare?
Nel tuo scenario non ha senso parlare di SIP proxy dato che ti appoggi a server SIP esterni ed il tuo router svolge solo funzioni, appunto di routing e NAT.

Per parlare di SIP proxy devi avere un server VOIP (SIP, SCCP, H323,..) ...... come ad esempio un CCME o un CCM.

Sempre restando fermi al tuo scenario sarebbe più giusto parlare Session Border Controller ed in maniera più specifica per il voip di ALG (Application-Level Gateway )

Qui trovi gli spunti per iniziare :

http://www.cisco.com/en/US/docs/ios/12_ ... atsbc.html

Ciao Giulio

Inviato: ven 21 ago , 2009 9:48 am
da jaxel
Ciao,
si si, mi rendo conto che non ha senso parlare di SIP proxy, tuttavia volevo informarmi per sapere come deve essere configurato sui Cisco.
Nel mio caso, come dici tu, è più corretto di parlare di Session Border Controller.
Avevo già trovato quella pagina sul sito della Cisco...
Ho trovato sul sito della Cisco la seguente pagina http://www.cisco.com/en/US/docs/ios/12_ ... atsbc.html dove spiega come fare per configurare il Session Border Controller.
Purtroppo non ho capito come devo configurarlo... a partire dal comando "proxy inside-address inside-port outside-address outside-port protocol udp"... non capisco quale indirizzo ip e porta devo mettere al posto di inside-address, inside-port, outside-address e outside port... è possibile utilizzare questa soluzione con ip pubblico dinamico come ho io?
Però riguardando credo di aver intuito l'utilità del comando proxy, se ho capito bene devo mettere come inside-address e inside-port un indirizzo del router e una porta mentre per l'outside-address e l'outside-port metto l'indirizzo e porta del proxy server del mio provider, corretto?
Ma se devo usare più provider?Digito più volte il comando proxy (ovviamente con paramentri diversi)?
Nel tuo scenario non ha senso parlare di SIP proxy dato che ti appoggi a server SIP esterni ed il tuo router svolge solo funzioni, appunto di routing e NAT.

Per parlare di SIP proxy devi avere un server VOIP (SIP, SCCP, H323,..) ...... come ad esempio un CCME o un CCM.
Scusa, ma non ho capito bene, sul mio router non dovrei avere un server voip essendo l'IOS una 12.4T Advanced Enterprise?
Se in configurazione globale digito telephony-service e poi faccio un sh telephony-service mi restituisce:

Codice: Seleziona tutto

CONFIG (Version=7.1)
=====================
Version 7.1
Cisco Unified Communications Manager Express
For on-line documentation please see:
http://www.cisco.com/en/US/products/sw/voicesw/ps4625/tsd_products_support_series_home.html

Non è quello un CCME? scusa se ti faccio un mucchio di domande ma sono un po' confuso...
Inoltre digitando quel comando poi il router non instrada più i pacchetti, come mai?ho dovuto fare un reload...

Grazie mille!
Ciao,
Fabio

Inviato: ven 21 ago , 2009 10:11 am
da IsaCab
Ciao,

il problema è chiare prima bene cosa vuoi fare ...

Se usi il router come un PBX attraverso il Call Manager allora cambiano tutte le logiche e i provider SIP diventano delle Linee telefoniche in uscita e vanno configurate sul CCME e di conseguenza va abilitato il proxy SIP se necessario.

Se invece usi il router solo come mezzo per accedere ad internet e registri i telefoni direttamente sui provider SIP Esterni allora vale quanto detto fino qui. In realtà non ti serve neanche il Session Border (leggi ALG) dato che ti è bastato mettere il gateway giusto sui telefoni per farli funzionare.

Ciao Giulio

Inviato: ven 21 ago , 2009 10:28 am
da jaxel
Ciao!
Se usi il router come un PBX attraverso il Call Manager allora cambiano tutte le logiche e i provider SIP diventano delle Linee telefoniche in uscita e vanno configurate sul CCME e di conseguenza va abilitato il proxy SIP se necessario.
Sei stato chiarissimo! Finalmente ho capito bene l'utilità e, grossomodo, il funzionamento del Call Manager!
Quindi, io posso usare il CCME sul mio router per usarlo come PBX?
Ma posso continuare ad utilizzare il router per instradare il normale traffico dati e allo stesso tempo usarlo come PBX?
Scusa per la domanda un po' personale, ma tu hai imparato ad usare il CCME solo per esperienza oppure hai studiato su dei libri? Puoi consigliarmene qualcuno valido?

Grazie mille per tutte le spiegazioni!
Fabio

P.S.=se mi mandi un mp di dove sei, se siamo vicini, ti offro da bere! ;)

Inviato: ven 21 ago , 2009 10:38 am
da IsaCab
Ciao,
Quindi, io posso usare il CCME sul mio router per usarlo come PBX?
Certo ed è la soluzione migliore, potendo sfruttare il protocollo SCCP per i telefoni Cisco.
Ma posso continuare ad utilizzare il router per instradare il normale traffico dati e allo stesso tempo usarlo come PBX?
Nella pratica si. Nella teoria andrebbe analizzato il volume di traffico (Numero di telefoni, servizi VOIP,...) sia VOIP che internet e fare le sclete opportune.
ma tu hai imparato ad usare il CCME solo per esperienza oppure hai studiato su dei libri?
Entrambe. La base di partenza è sempre lo studio. Poi man mano che vengono fuori i problemi li affonti cercando di risolverli (Esperienza + Studio)

Io adoro i libri della Cisco Press e quando possibile cerco di usare sempre quelli.
di dove sei, se siamo vicini, ti offro da bere
posso anche dirtelo pubblicamente, non è un segreto e mi presento con nome e cognome :D .

Se capiti a Matera (basilicata) sarò lieto di conoscerti di persona.

Giulio

Inviato: ven 21 ago , 2009 11:24 am
da jaxel
Entrambe. La base di partenza è sempre lo studio. Poi man mano che vengono fuori i problemi li affonti cercando di risolverli (Esperienza + Studio)
Ne ero sicuro! Volevo la conferma! ;)
Io adoro i libri della Cisco Press e quando possibile cerco di usare sempre quelli.
Ne ho comprati un paio e sono fatti davvero molto bene...penso che continuerò così!
Se capiti a Matera (basilicata) sarò lieto di conoscerti di persona.
:( ... la vedo difficile perchè abito dalla parte opposta...Piemonte!
Ma nella vita non si sa mai! Me ne ricorderò!

Grazie di tutto!
Ciao,
Fabio

Inviato: ven 21 ago , 2009 11:37 am
da IsaCab
Ciao Fabio,

figurati è sempre un piacere.

Io capito spesso a Torino per lavoro, se sei di li allora la prossima volta ti avviso.


Per concludere il posto in maniera tecnica vorrei consigliarti questo prodotto (gratuito)
Cisco Configuration Professional
http://www.cisco.com/en/US/products/ps9422/

E' richiesta una CCO valida per il download, ma è totalmente free.

E' un software molto utile per operare le configurazioni di base sia per il router che per il voip (CCME).

Ciao Giulio

Inviato: sab 22 ago , 2009 8:42 am
da jaxel
Ciao Giulio,
ti ho mandato un mp così se sei da queste parti mi fai sapere! ;)
Grazie di tutto!

Ciao,
Fabio