Astrad Version 8
Oussama Hammami, 2011-07-24
Switzernet
Cette
version d’Astrad nécessite la version 4 du serveur DBA.
mysql> desc location3;
+----------+----------------------+------+-----+-------------------+-----------------------------+
| Field | Type | Null | Key | Default | Extra |
+----------+----------------------+------+-----+-------------------+-----------------------------+
| username | varchar(80) | NO | PRI | | |
| ipaddr | varchar(15) | NO | PRI | | |
| port | smallint(5) unsigned | NO | PRI | 0 | |
| expires | datetime | YES | | NULL | |
| register | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
+----------+----------------------+------+-----+-------------------+-----------------------------+
5 rows in set (0.00 sec)
mysql> select * from location3;
+-------------+--------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+--------------+-------+---------------------+---------------------+
| 41215500327 | 81.62.23.131 | 50874 | 2011-07-25 10:45:53 | 2011-07-25 10:43:23 |
| 41215500327 | 81.62.23.131 | 50877 | 2011-07-25 10:46:31 | 2011-07-25 10:44:01 |
+-------------+--------------+-------+---------------------+---------------------+
2 rows in set (0.00 sec)
La table location3 contient la liste des téléphones SIP enregistré à la date register dont l’adresse IP est ipaddr et le port est port et dont l’enregistrement s’expire à la date expires.
Ces données seront utilisées pour router les appels entrants vers les téléphones dont le username correspond au numéro du client à joindre.
La clé de cette table est une clé composée (username + ipaddr + port) donc un client peut avoir plusieurs enregistrements au même temp.
Notre serveur Asterisk utilise le module Real-Time (MySQL), Il remonte l’enregistrement vers son DBA. SI le client possède plus un enregistrement valide dans la table location2 le serveur DBA l’ajoute dans la table multiple_ua qui sera par la suite répliqué vers tous les Astrads.
La table location2 (dans le serveur DBA) contiendra tous les enregistrements de tous les Astrad (non uniquement ces Astrad) grâce à la synchronisation assurée par le script exec-regitration.pl, ce qui implique que tous les clients qui utilisent plus un téléphone SIP sont dans la table multiple_ua.
Lors d’un appel entrant l’Asterisk demande le routage en appelant la procédure set_route() et la fonction get_route(). Ces derniers sont détaillés dans ce document http://switzernet.com/3/public/110724-astrad-simultaneous-call/ et http://switzernet.com/3/public/110630-test-dial-for-incomming-call/
Lors de l’enregistrement du téléphone SIP (REGISTER), l’Astrad garde l’IP et le Port (URI) de ce dernier dans sa base de données (table MySQL sipppeer), l’information remonte jusqu’au serveur de routage et de ce cette manière tous les appels entrant vers ce client seront routés vers l’Asterisk en question. Ce dernier utilisera l’adresse IP et le port utilisés par le téléphone lors du dernier enregistrement pour router les appels entrants de ce client mais il arrive que le routeur NAT du client libère ce port et par conséquent la transformation inverse pour renvoyer les paquets SIP vers l’IP locale devient impossible.
Notre solution est d’envoyer des paquets SIP NOTIFY vers les clients avec un seul téléphone connecté en utilisant la commande ‘sip notify’ dont l’événement est ‘keep-alive’ depuis l’interface Manager d’Asterisk (module Perl Asterisk::Manager).
Pour plus de détails : http://switzernet.com/3/public/110627-astrad-nat-port-mapping/
Pour les clients qui utilisent plus d’un téléphone SIP, des paquets UDP vides seront envoyées afin de garder le port dans le routeur NAT ouvert, ce technique est utilisé par les serveur SIP de Porta-One ainsi que les téléphones Siemens.
Pour plus de détails : http://switzernet.com/3/public/110627-astrad-empty-udp-keepalive/
mysql> select * from location3 where username=41215500327;
+-------------+--------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+--------------+-------+---------------------+---------------------+
| 41215500327 | 81.62.23.131 | 50874 | 2011-07-25 11:14:05 | 2011-07-25 11:11:35 |
| 41215500327 | 81.62.23.131 | 50877 | 2011-07-25 11:15:57 | 2011-07-25 11:13:27 |
+-------------+--------------+-------+---------------------+---------------------+
2 rows in set (0.00 sec)
# ngrep -pqlt -W byline "" port 5060
interface: eth0 (91.121.151.0/255.255.255.0)
filter: (ip or ip6) and ( port 5060 )
U 2011/07/25 11:12:13.042066 91.121.151.58:5060 -> 81.62.23.131:50874
.
U 2011/07/25 11:12:13.043305 91.121.151.58:5060 -> 81.62.23.131:50877
.
U 2011/07/25 11:12:28.047659 91.121.151.58:5060 -> 81.62.23.131:50874
.
U 2011/07/25 11:12:28.048403 91.121.151.58:5060 -> 81.62.23.131:50877
mysql> select * from location3 where username=41215500327;
+-------------+--------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+--------------+-------+---------------------+---------------------+
| 41215500327 | 81.62.23.131 | 50877 | 2011-07-25 11:15:57 | 2011-07-25 11:13:27 |
+-------------+--------------+-------+---------------------+---------------------+
1 row in set (0.00 sec)
# ngrep -pqlt -W byline "" port 5060
interface: eth0 (91.121.151.0/255.255.255.0)
filter: (ip or ip6) and ( port 5060 )
U 2011/07/25 11:18:45.432981 91.121.151.58:5060 -> 81.62.23.131:50877
NOTIFY sip:41215500327@81.62.23.131:50877 SIP/2.0.
Via: SIP/2.0/UDP 91.121.151.58:5060;branch=z9hG4bK2b13c3f0;rport.
From: "asterisk" <sip:asterisk@91.121.151.58>;tag=as0a95a8ce.
To: <sip:41215500327@81.62.23.131:50877>.
Contact: <sip:asterisk@91.121.151.58>.
Call-ID: 0ae67ebc40b63f2c1ca64d4245aae1c3@91.121.151.58.
CSeq: 102 NOTIFY.
User-Agent: Asterisk PBX.
Max-Forwards: 70.
Event: keep-alive.
Content-Length: 0.
.
U 2011/07/25 11:18:45.481026 81.62.23.131:50877 -> 91.121.151.58:5060
SIP/2.0 200 OK.
To: <sip:41215500327@81.62.23.131:50877>;tag=cb6ff3bc3a2173b0i0.
From: "asterisk" <sip:asterisk@91.121.151.58>;tag=as0a95a8ce.
Call-ID: 0ae67ebc40b63f2c1ca64d4245aae1c3@91.121.151.58.
CSeq: 102 NOTIFY.
Via: SIP/2.0/UDP 91.121.151.58:5060;branch=z9hG4bK2b13c3f0.
Server: Linksys/SPA921-5.1.8.
Content-Length: 0.
.
U 2011/07/25 11:19:15.438641 91.121.151.58:5060 -> 81.62.23.131:50877
NOTIFY sip:41215500327@81.62.23.131:50877 SIP/2.0.
Via: SIP/2.0/UDP 91.121.151.58:5060;branch=z9hG4bK4c1ee422;rport.
From: "asterisk" <sip:asterisk@91.121.151.58>;tag=as050e6915.
To: <sip:41215500327@81.62.23.131:50877>.
Contact: <sip:asterisk@91.121.151.58>.
Call-ID: 5f6e7a5a10b3419040309f6839550939@91.121.151.58.
CSeq: 102 NOTIFY.
User-Agent: Asterisk PBX.
Max-Forwards: 70.
Event: keep-alive.
Content-Length: 0.
.
U 2011/07/25 11:19:15.492145 81.62.23.131:50877 -> 91.121.151.58:5060
SIP/2.0 200 OK.
To: <sip:41215500327@81.62.23.131:50877>;tag=cb6ff3bc3a2173b0i0.
From: "asterisk" <sip:asterisk@91.121.151.58>;tag=as050e6915.
Call-ID: 5f6e7a5a10b3419040309f6839550939@91.121.151.58.
CSeq: 102 NOTIFY.
Via: SIP/2.0/UDP 91.121.151.58:5060;branch=z9hG4bK4c1ee422.
Server: Linksys/SPA921-5.1.8.
Content-Length: 0.
.
Astrad-tools est un script Perl qui regroupe tous les requêtes MySQL utilisées dans l’ensemble des scripts d’Astrad, il sera utilisé pour vérifier son fonctionnement.
# /etc/astrad/script/ast-tools.pl
Invalid action value.
Usage : ast-tools.pl -a <ACTION>
Action:
sipconfig Show configuration.
location2 location in DBA server.
location3 location in Astrad server.
tonotify Accounts to notify with sending SIP NOTIFY packets.
toping Accounts to ping with sending empty UDP packets.
astmultiua Accounts with multipleua on this Astrad.
dbamultiua Accounts with multipleua on all Astrad servers.
account=%s Show information of this account (account=ACCOUNT).
checkpass=%s:%s check password md5 (checkpass=ACCOUNT:PASSWORD).
Liste des appareils enregistrés
# /etc/astrad/script/ast-tools.pl -a location3
SQL Query:
SELECT * FROM location3;
Result :
+-------------+---------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+---------------+-------+---------------------+---------------------+
| 41215504126 | 212.147.8.105 | 1240 | 2011-07-25 14:32:54 | 2011-07-25 14:30:24 |
| 41215500329 | 212.147.8.105 | 62286 | 2011-07-25 14:33:17 | 2011-07-25 14:32:17 |
| 41215500327 | 85.3.99.208 | 57217 | 2011-07-25 14:33:10 | 2011-07-25 14:30:40 |
| 41215500329 | 85.3.99.208 | 57213 | 2011-07-25 14:33:05 | 2011-07-25 14:30:35 |
+-------------+---------------+-------+---------------------+---------------------+
Astrad envoi des paquets SIP NOTIFY à la liste suivante :
# /etc/astrad/script/ast-tools.pl -a tonotify
SQL Query:
SELECT username FROM location3 WHERE username NOT IN (SELECT username FROM multiple_ua GROUP BY domain,username HAVING domain=(SELECT value FROM sipconfig WHERE name='ipaddr') AND COUNT(username)>1);
Result :
+-------------+
| username |
+-------------+
| 41215500327 |
| 41215504126 |
+-------------+
Astrad envoi des paquets UDP vides à la liste suivante :
# /etc/astrad/script/ast-tools.pl -a toping
SQL Query:
SELECT username, ipaddr, port FROM multiple_ua WHERE domain=(SELECT value FROM sipconfig WHERE name='ipaddr') AND username NOT IN (SELECT username FROM multiple_ua WHERE domain=(SELECT value FROM sipconfig WHERE name='ipaddr') GROUP BY domain,username HAVING count(username)=1);
Result :
+-------------+---------------+-------+
| username | ipaddr | port |
+-------------+---------------+-------+
| 41215500329 | 212.147.8.105 | 62286 |
| 41215500329 | 85.3.99.208 | 57213 |
+-------------+---------------+-------+
Le Zip d’installation et la mise à jour puppet de la version 8 du serveur Astrad [http://switzernet.com/3/public/110126-astrad-versions/]
Changement de la hostname
# echo "astradX.switzernet.com" > /etc/hostname
# vi /etc/hosts
< 91.121.XXX.XXX astradX.switzernet.com
Activation de la nouvelle hostname
# /etc/init.d/hostname.sh
# hostname
> astradX.switzernet.com
# sed -i -e '$d' /etc/motd;sed -i -e '/^hostname/d' /etc/motd; echo -e "hostname : `hostname`\ncompany : Switzernet@2011\n" >> /etc/motd
Installation d’Asterisk et puppet
# aptitude update
# aptitude install -y puppet asterisk
# /etc/init.d/puppet stop
> Stopping puppet configuration management tool.
Configuration du puppet
# vi /etc/puppet/puppet.conf
< pluginsync=false
Certification
# puppetd --server puppet.switzernet.com --waitforcert 60 --test
> warning: peer certificate won't be verified in this SSL session
> notice: Did not receive certificate
> notice: Set to run 'one time'; exiting with no certificate
Dans puppet master (puppet.switzernet.com)
# puppetca --list
> astradX.switzernet.com
# puppetca --sign astradX.switzernet.com
Dans le serveur Astrad
# puppetd --server puppet.switzernet.com --waitforcert 60 --test
# /etc/init.d/puppet start
Le compte 41215500329 possède deux téléphones SIP connectés :
Dans Astrad
mysql> select * from location3 where username=41215500329;
+-------------+---------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+---------------+-------+---------------------+---------------------+
| 41215500329 | 212.147.8.105 | 51559 | 2011-07-25 12:07:47 | 2011-07-25 12:06:47 |
| 41215500329 | 85.3.99.208 | 57213 | 2011-07-25 12:08:43 | 2011-07-25 12:06:13 |
+-------------+---------------+-------+---------------------+---------------------+
2 rows in set (0.00 sec)
mysql> select * from sipconfig;
+----------+-----------------------+
| name | value |
+----------+-----------------------+
| ipaddr | 94.23.225.XX |
| hostname | astrad.switzernet.com |
| dba | 91.121.150.XX |
| ua_id | 7 |
+----------+-----------------------+
4 rows in set (0.00 sec)
Dans son DBA 91.121.150.XX
mysql> select * from location2 where username=41215500329;
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
| username | domain | dba | ipaddr | port | expires | register | reception |
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
| 41215500329 | 94.23.225.XX | 91.121.150.XX | 212.147.8.105 | 51559 | 2011-07-25 12:10:17 | 2011-07-25 12:09:17 | 2011-07-25 12:09:17 |
| 41215500329 | 94.23.225.XX | 91.121.150.XX | 85.3.99.208 | 57213 | 2011-07-25 12:11:07 | 2011-07-25 12:08:37 | 2011-07-25 12:08:38 |
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
2 rows in set (0.00 sec)
mysql> select * from asterisk.multiple_ua where username=41215500329;
+-------------+---------------+---------------+-------+
| username | domain | ipaddr | port |
+-------------+---------------+---------------+-------+
| 41215500329 | 94.23.225.XX | 212.147.8.105 | 51559 |
| 41215500329 | 94.23.225.XX | 85.3.99.208 | 57213 |
+-------------+---------------+---------------+-------+
2 rows in set (0.00 sec)
Dans un autre DBA
mysql> select * from location2 where username=41215500329;
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
| username | domain | dba | ipaddr | port | expires | register | reception |
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
| 41215500329 | 94.23.225.XX | 91.121.150.XX | 212.147.8.105 | 51559 | 2011-07-25 12:11:17 | 2011-07-25 12:04:20 | 2011-07-25 12:10:18 |
| 41215500329 | 94.23.225.XX | 91.121.150.XX | 85.3.99.208 | 57213 | 2011-07-25 12:11:07 | 2011-07-25 11:23:40 | 2011-07-25 12:08:38 |
+-------------+---------------+---------------+---------------+-------+---------------------+---------------------+---------------------+
2 rows in set (0.00 sec)
mysql> select * from asterisk.multiple_ua where username=41215500329;
+-------------+---------------+---------------+-------+
| username | domain | ipaddr | port |
+-------------+---------------+---------------+-------+
| 41215500329 | 94.23.225.XX | 212.147.8.105 | 51559 |
| 41215500329 | 94.23.225.XX | 85.3.99.208 | 57213 |
+-------------+---------------+---------------+-------+
2 rows in set (0.00 sec)
Dans Astrad
mysql> select * from multiple_ua where username=41215500329;
+-------------+---------------+---------------+-------+
| username | domain | ipaddr | port |
+-------------+---------------+---------------+-------+
| 41215500329 | 94.23.225.212 | 212.147.8.105 | 51559 |
| 41215500329 | 94.23.225.212 | 85.3.99.208 | 57213 |
+-------------+---------------+---------------+-------+
2 rows in set (0.00 sec)
mysql> select * from sipconfig;
+----------+-----------------------+
| name | value |
+----------+-----------------------+
| ipaddr | 94.23.225.212 |
| hostname | astrad.switzernet.com |
| dba | 91.121.150.96 |
| ua_id | 7 |
+----------+-----------------------+
4 rows in set (0.00 sec)
Un appel entrant vers ce compte depuis un autre réseau
ks306878:/etc/astrad/mysql# ngrep -pql -W byline "" port 1813
interface: eth0 (94.23.225.0/255.255.255.0)
filter: (ip or ip6) and ( port 1813 )
U 94.23.225.212:53089 -> 66.234.138.71:1813
.V.W.c>...ûhæ5¡X&òÖé(......"......h323-call-origin=originate........h323-call-type=VoIP........session-protocol=sipv2..^.áÔ..213.251.xx.xx..004121566xxxx...,.....&call-id=94.23.225.xx-1311589020.137.4......h323-setup-time=10:17:01 GMT Mon Jul 25 2011.8.....2h323-conf-id=70454C9C 8347A8CD FFDA0692 DC04A8DE."......h323-remote-address=sip-ua
Trace call porta-billing
|
Dans Astrad
mysql> select * from route_multiple_ua where username=41215500329;
+-------------+-----------------------------------------+
| username | route |
+-------------+-----------------------------------------+
| 41215500329 | SIP/41215500329@UA7&SIP/41215500329@UA8 |
+-------------+-----------------------------------------+
1 row in set (0.00 sec)
mysql> select * from sipconfig;
+----------+-----------------------+
| name | value |
+----------+-----------------------+
| ipaddr | 94.23.225.212 |
| hostname | astrad.switzernet.com |
| dba | 91.121.150.96 |
| ua_id | 9 |
+----------+-----------------------+
4 rows in set (0.00 sec)
mysql> select * from sippeers2 where name in ('UA7','UA8');
+------+------+---------------+-----------+----------+---------------+-------+------------+----------+-----------+------+
| id | name | host | context | insecure | ipaddr | port | regseconds | username | md5secret | nat |
+------+------+---------------+-----------+----------+---------------+-------+------------+----------+-----------+------+
| 7476 | UA7 | 212.147.8.105 | forbidden | no | 212.147.8.105 | 51559 | NULL | NULL | NULL | yes |
| 7477 | UA8 | 85.3.99.208 | forbidden | no | 85.3.99.208 | 57213 | NULL | NULL | NULL | yes |
+------+------+---------------+-----------+----------+---------------+-------+------------+----------+-----------+------+
2 rows in set (0.00 sec)
La procédure qu’on utilise pour router les appels entrants permet aussi de router les appels internes.
Reprenant l’exemple ci-dessus, nous avons deux téléphones enregistrés avec le même compte SIP 41215500329.
mysql> select * from location3 where username=41215500329;
+-------------+---------------+-------+---------------------+---------------------+
| username | ipaddr | port | expires | register |
+-------------+---------------+-------+---------------------+---------------------+
| 41215500329 | 212.147.8.105 | 51559 | 2011-07-25 12:32:47 | 2011-07-25 12:31:47 |
| 41215500329 | 85.3.99.208 | 57213 | 2011-07-25 12:32:46 | 2011-07-25 12:30:16 |
+-------------+---------------+-------+---------------------+---------------------+
2 rows in set (0.00 sec)
mysql> select * from sipconfig;
+----------+-----------------------+
| name | value |
+----------+-----------------------+
| ipaddr | 94.23.225.212 |
| hostname | astrad.switzernet.com |
| dba | 91.121.150.96 |
| ua_id | 9 |
+----------+-----------------------+
4 rows in set (0.00 sec)
Résultat de ngrep d’un appel depuis 41215500329 vers 41215500329 (appel interne)
U 2011/07/25 12:33:42.406504 212.147.8.105:51559 -> 94.23.225.212:5060
INVITE sip:0215500329@astrad.switzernet.com SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKapXgayat4rj7Q.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458989 INVITE.
Contact: <sip:41215500329@212.147.8.105:51559;transport=udp>.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
--
U 2011/07/25 12:33:42.406873 94.23.225.212:5060 -> 212.147.8.105:51559
SIP/2.0 407 Proxy Authentication Required.
Via: SIP/2.0/UDP 192.168.1.118:51559;branch=z9hG4bKapXgayat4rj7Q;received=212.147.8.105;rport=51559.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as74437d7d.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458989 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:42.455917 212.147.8.105:51559 -> 94.23.225.212:5060
ACK sip:0215500329@astrad.switzernet.com SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKapXgayat4rj7Q.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as74437d7d.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
--
U 2011/07/25 12:33:42.466239 212.147.8.105:51559 -> 94.23.225.212:5060
INVITE sip:0215500329@astrad.switzernet.com SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKBZp9BSUX118SK.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458990 INVITE.
Contact: <sip:41215500329@212.147.8.105:51559;transport=udp>.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
Proxy-Authorization: Digest username="41215500329", realm="switzernet", nonce="24a724d3", algorithm=MD5, uri="sip:0215500329@astrad.switzernet.com",
--
U 2011/07/25 12:33:42.466586 94.23.225.212:5060 -> 212.147.8.105:51559
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 192.168.1.118:51559;branch=z9hG4bKBZp9BSUX118SK;received=212.147.8.105;rport=51559.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458990 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:42.933409 94.23.225.212:5060 -> 212.147.8.105:51559
INVITE sip:41215500329@212.147.8.105:51559 SIP/2.0.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK471cdeb6;rport.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as266e823d.
To: <sip:41215500329@212.147.8.105:51559>.
Contact: <sip:41215500329@94.23.225.212>.
Call-ID: 5dc72496794826b140a5e8ca4deb4c0d@94.23.225.212.
CSeq: 102 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:42.933958 94.23.225.212:5060 -> 85.3.99.208:57213
INVITE sip:41215500329@85.3.99.208:57213 SIP/2.0.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK20200191;rport.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>.
Contact: <sip:41215500329@94.23.225.212>.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 102 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:43.068103 85.3.99.208:57213 -> 94.23.225.212:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK20200191;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>;tag=2948097747.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 102 INVITE.
Contact: <sip:41215500329@85.3.99.208:57213>.
User-Agent: C450 IP010720000000.
--
U 2011/07/25 12:33:43.139535 212.147.8.105:51559 -> 94.23.225.212:5060
SIP/2.0 100 Trying.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK471cdeb6;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as266e823d.
To: <sip:41215500329@212.147.8.105:51559>.
Call-ID: 5dc72496794826b140a5e8ca4deb4c0d@94.23.225.212.
CSeq: 102 INVITE.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
--
U 2011/07/25 12:33:43.197021 212.147.8.105:51559 -> 94.23.225.212:5060
SIP/2.0 180 Ringing.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK471cdeb6;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as266e823d.
To: <sip:41215500329@212.147.8.105:51559>;tag=ep6Zr3pN17tFQ.
Call-ID: 5dc72496794826b140a5e8ca4deb4c0d@94.23.225.212.
CSeq: 102 INVITE.
Contact: <sip:41215500329@212.147.8.105:51559;transport=udp>.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
--
U 2011/07/25 12:33:43.197147 94.23.225.212:5060 -> 212.147.8.105:51559
SIP/2.0 180 Ringing.
Via: SIP/2.0/UDP 192.168.1.118:51559;branch=z9hG4bKBZp9BSUX118SK;received=212.147.8.105;rport=51559.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458990 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:43.474003 212.147.8.105:51559 -> 94.23.225.212:5060
SIP/2.0 480 Terminated.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK471cdeb6;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as266e823d.
To: <sip:41215500329@212.147.8.105:51559>;tag=ep6Zr3pN17tFQ.
Call-ID: 5dc72496794826b140a5e8ca4deb4c0d@94.23.225.212.
CSeq: 102 INVITE.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
--
U 2011/07/25 12:33:43.474072 94.23.225.212:5060 -> 212.147.8.105:51559
ACK sip:41215500329@212.147.8.105:51559 SIP/2.0.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK471cdeb6;rport.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as266e823d.
To: <sip:41215500329@212.147.8.105:51559>;tag=ep6Zr3pN17tFQ.
Contact: <sip:41215500329@94.23.225.212>.
Call-ID: 5dc72496794826b140a5e8ca4deb4c0d@94.23.225.212.
CSeq: 102 ACK.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:44.236403 85.3.99.208:57213 -> 94.23.225.212:5060
SIP/2.0 180 Ringing.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK20200191;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>;tag=2948097747.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 102 INVITE.
Contact: <sip:41215500329@85.3.99.208:57213>.
--
U 2011/07/25 12:33:47.277981 85.3.99.208:57213 -> 94.23.225.212:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK20200191;rport=5060.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>;tag=2948097747.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 102 INVITE.
Contact: <sip:41215500329@85.3.99.208:57213>.
--
U 2011/07/25 12:33:47.278116 94.23.225.212:5060 -> 85.3.99.208:57213
ACK sip:41215500329@85.3.99.208:57213 SIP/2.0.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK1f717b08;rport.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>;tag=2948097747.
Contact: <sip:41215500329@94.23.225.212>.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 102 ACK.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:47.278254 94.23.225.212:5060 -> 212.147.8.105:51559
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 192.168.1.118:51559;branch=z9hG4bKBZp9BSUX118SK;received=212.147.8.105;rport=51559.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458990 INVITE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:47.484536 212.147.8.105:51559 -> 94.23.225.212:5060
ACK sip:0215500329@94.23.225.212 SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKc8F2Dmc1yaZcF.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458990 ACK.
--
U 2011/07/25 12:33:53.065356 212.147.8.105:51559 -> 94.23.225.212:5060
BYE sip:0215500329@94.23.225.212 SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKDH9tFFX4UKNZa.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458991 BYE.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
--
U 2011/07/25 12:33:53.065454 94.23.225.212:5060 -> 212.147.8.105:51559
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 192.168.1.118:51559;branch=z9hG4bKDH9tFFX4UKNZa;received=212.147.8.105;rport=51559.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458991 BYE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:53.065554 94.23.225.212:5060 -> 85.3.99.208:57213
BYE sip:41215500329@85.3.99.208:57213 SIP/2.0.
Via: SIP/2.0/UDP 94.23.225.212:5060;branch=z9hG4bK7fb59a37;rport.
From: "41215500329" <sip:41215500329@94.23.225.212>;tag=as1fa772f1.
To: <sip:41215500329@85.3.99.208:57213>;tag=2948097747.
Call-ID: 66543d467b5f5e3b767b68f32656def2@94.23.225.212.
CSeq: 103 BYE.
User-Agent: Asterisk PBX.
--
U 2011/07/25 12:33:53.241047 212.147.8.105:51559 -> 94.23.225.212:5060
BYE sip:0215500329@94.23.225.212 SIP/2.0.
Via: SIP/2.0/UDP 192.168.1.118:51559;rport;branch=z9hG4bKDH9tFFX4UKNZa.
Max-Forwards: 70.
From: <sip:41215500329@astrad.switzernet.com>;tag=DDD7p85H4y4vB.
To: <sip:0215500329@astrad.switzernet.com>;tag=as292c16fb.
Call-ID: 9a78def0-314c-122f-7ab8-a04e04420000.
CSeq: 15458991 BYE.
User-Agent: Telepathy-SofiaSIP/0.6.2 sofia-sip/1.12.10devel.
Ngrep Log : [txt]
Le ZIP de l’installation Puppet de la version 7
d’Astrad n’est plus utilisable à cause du module CPAN (l’installeur des
modules Perl).
La facturation d’un appel entrant vers un compte
qui dispose de plus un téléphone SIP ne passe pas correctement, Il faut
remplacer le username dans le script ‘ast-rad-acc.pl’ par celui de l’URI.
|
Radius LOG [txt]
Implémentation des appels entrants simultanés dans Asterisk
http://switzernet.com/3/public/110724-astrad-simultaneous-call/
Tester la commande Dial d’Asterisk en précisant l’adresse IP et le port du téléphone
http://switzernet.com/3/public/110630-test-dial-for-incomming-call/
Master Mysql Astrad DBA V004
http://switzernet.com/3/public/110722-dba-v4/
Versions du Master MySQL-Astrad (DBA)
http://switzernet.com/3/public/110317-db3-versions/
Astrad Versionning
http://switzernet.com/3/public/110126-astrad-versions/
Liste des fonctionnalités à ajouter dans Astrad
http://switzernet.com/3/public/110523-astrad-wish-list/
Problèmes des appels entrants causés par l’expiration du NAT port mapping
http://switzernet.com/3/public/110627-astrad-nat-port-mapping/
Envoyer des paquets UDP vide pour garder le port dans le router NAT ouvert (port mapping)
http://switzernet.com/3/public/110627-astrad-empty-udp-keepalive/