Publié dans Telecoms

OpenBTS: un réseau mobile open source qui pourrait changer le monde


Voici une histoire qui a tout pour plaire : un réseau mobile open source et low-cost alimenté par énergie solaire qui révolutionne la couverture des zones défavorisées et hors de portée des antennes. Il utilise la VOIP et fonctionne avec des portables existants. Ses créateurs sont des pointures. Et le meilleur dans tout ça c’est qu’il participe de l’initiative mêlant sexe, drogue et art, connu sous le nom de Burning Man. Par où on commence ?

« Nous donnons au réseau GSM l’apparence d’un point d’accès sans fil, c’est aussi simple que ça », résume Glenn Edens, un des trois fondateurs du projet.

La technologie a débuté par le logiciel open source OpenBTS « dont tout le monde disait qu’il était impossible à faire ». OpenBTS est bâti sur Linux et distribué sous licence AGPLv3. Quand il est utilisé avec un logiciel radio du type Universal Radio Software Peripheral (USRP), il se connecte une interface GSM air (« Um ») à n’importe quel téléphone cellulaire, sans qu’il soit nécessaire d’apporter la moindre modification au portable. Il utilise le logiciel de VoiP open source Asterisk comme PBX pour recevoir les appels, bien que d’autres logiciels puissent être utilisés. (Dans une minute, je vous promet que les statistiques que je vais vous livrer feront exploser l’ingénieur réseau qui est en vous.)

Pour la troisième année consécutive, les créateurs de ce système ont décidé de lui faire passer l’épreuve du feu en offrant un réseau de téléphone mobile gratuit aux 50000 et quelques participants du festival Burning Man, qui débute aujourd’hui à Black Rock City au Nevada. J’ai posté ici quelques photos du dispositif. Mais le projet est encore assez nouveau et quasi confidentiel. Le matériel de deuxième génération est encore en version bêta et la start up porteuse du projet commercial, Range Networks, ne sortira pas de l’ombre avant septembre (à la conférence DEMO).

Deux des trois créateurs de OpenBTS forment le duo de gourou des réseaux sans fil à l’origine du Kestrel Signal Processing : David Burgess et Harvind Samra. Le troisième est  Glenn Edens, le Edens à l’origine du Grid Systems, créateur du premier ordinateur portable au début des années 1980, également connu comme ancien directeur de Sun Microsystem’s Laboratories (entre autres faits d’armes). Il est le PDG de Range Network.

Burning Man est devenu un terrain d’expérimentation torturé mais efficace : « les endroits où des dizaines de milliers de personnes se réunissent, toutes munies de leur téléphone portable, dans un environnement hostile – très chaud, poussiéreux, sans électricité ni couverture téléphonique – ne sont pas légions », remarque Edens.

Les réseaux mobiles fonctionnant sur une bande passante « propriétaire » (licenced), l’équipe d’OpenBTS obtient pour chacune de ses installations aux Etats-Unis une autorisation du FCC [Federal Communication Commission, organisme gestionnaire des fréquences aux Etats-Unis, équivalent de l’Arcep, NdT] et travaille avec le fournisseur local pour coordonner l’usage des fréquences. Quand les participants entrent dans la zone de couverture et mettent en marche le logiciel, le système leur envoie un SMS : « Répondez à ce message avec votre numéro de téléphone et vous pourrez envoyer et recevoir des textos et passer des appels. »

Edens note : « vous pouvez également appeler n’importe quel numéro mais vous ne pouvez pas recevoir de coups de fil, sauf des autres participants du Burning Man. Nous n’avons pour l’instant de contrat de roaming avec aucun opérateur. Les appels entrant de personne en dehors du Burning Man atterrissent donc sur la messagerie vocale… (vous pouvez suivre l’avancée du dispositif sur le blog de Burgess).

Edens explique en souriant que Kestrel reçoit autant de compliments que de plaintes en rendant le téléphone accessible sur le lieu de l’événement. On en gagne et on en perd.

Le potentiel de OpenBTS est de toute évidence énorme. Selon les mots d’Edens, le système est « gros comme une boîte à chaussures » et demande à peine 50 watts de courant « contre quelques dizaines de milliers » et peut donc être alimenté par énergie solaire, éolienne ou par piles. Il fonctionne aussi bien que n’importe quelle base d’antenne GSM d’une portée maximum de 35 kilomètres pour une moyenne de 20 kilomètres, selon la géographie, la hauteur de l’antenne, etc.

Il peut également utiliser des backhaul [connexions entre le réseau principal, ou backbone, et les réseaux locaux de télécommunications, NdT]sans fil. « Nous travaillons avec l’Université de Berkeley sur un projet très intéressant sur les backhaul sans fil à super longue distance », explique Edens. Une station complète, logiciel compris, coûte environ 10 000$. Comparé aux 50 000 à 10 0000$ d’investissement habituellement nécessaires pour un centre de contrôle, des centres de contrôle réseau et « toute une batterie de tuyaux » pour amener l’électricité, les backhaul, etc. sur un réseau sans fil traditionnel.

Comme dans tous les réseaux GSM, le réseau OpenBTS peut se connecter au réseau public et à Internet. Puisqu’il passe par la VoIP, il « donne à tout téléphone portable l’apparence d’une fin de ligne SIP… et chaque téléphone portable est identifié comme une interface IP. Mais nous ne modifions rien au téléphone : n’importe quel téléphone cellulaire est compatible,  du portable trafiqué à 15$ jusqu’au dernier iPhone ou Androïd phone. » Les téléphone low cost sont particulièrement importants pour les projets portant sur des zones déshéritées, où les gens peuvent ainsi bénéficier de meilleurs systèmes de télécommunications.

« Des études de l’ONU et de l’UIT [Union international des télécommunications, NdT] montrent que quand vous amenez un service de communication dans une zone, les soins augmentent, le dynamisme économique augmente », dit Edens, qui note que les coûts et l’électricité nécessaires sont assez faibles pour que même un petit village puisse se le permettre. Les utilisateurs paieraient 2 à 3$ par mois.

Il se vante de la simplicité de mise en place du système. « Après le seïsme en Haïti, nous avons envoyé un de nos systèmes qui fut installé à l’hôpital de Port au Prince. Il fonctionnait une heure après avoir été sorti de la boîte. Le PBX (système d’échange interne de données et de connexion au réseau téléphonique, NdT) était mort. Ils ont utilisé le dispositif comme réseau téléphonique pendant environ deux semaines. »

Kestral a vendu près de 150 unités, logiciel et matériel, depuis janvier dernier, avec des systèmes de test installés en Inde, en Afrique, dans le Pacifique Sud et nombre d’autres pays. L’équipe a également réalisé une poignée d’installations privées sur des champs de pétroles, des fermes et des bateaux au large. Ils assurent également le réseau de la base australienne en Antarctique. De plus, OpenBTS a été téléchargé près de 4000 fois, principalement par des chercheurs capables de fabriquer leurs propres bases. Il a également suscité l’intérêt des communications militaires, des institutions judiciaires et du projet DARPA.

Puisqu’OpenBTS s’appuie sur une bande passante propriétaire, l’équipe ne vise pas les entreprises désireuses d’instaurer des réseaux mobiles privés sur les campus, même s’ils n’écartent pas cette option. Quoiqu’il en soit, Edens dit qu’il reste encore énormément de boulot à faire sur les 60% de la surface terrestre et les 40% de la population mondiale qui n’ont pas de réseau, selon les chiffres de l’UIT. Certains opérateurs, comme Telefonica ou T-Mobile, ont signifier leur plus vif intérêt.

Edens est ouvertement aussi fier de la performance technologique du projet OpenBTS de sa capacité potentiel à sauver le monde. « Beaucoup de personnes disaient que c’était impossible. Mais la technologie des “software-defined radio”s’est bien développé jusqu’ici. Nous testons désormais la deuxième génération de radio et, bien que nous ayons fait 98% du travail de codage à trois, nous avons reçu un soutien conséquent de la communauté du libre. »

Le reste du potentiel, c’est à vous de le libérer.

> Traduction d’un article initialement publié sur Network World par Julie Bort, auteur du blog Source Seeker.

Crédit photo FlickR CC par TenSafeFrogs.

Publié dans Linux, Serveurs

Configuration d’un serveur DNS avec ubuntu 10.04


Configuration d’un serveur DNS dans Ubuntu 10.04

l’aspect théorique sera laisser au soins du lecteur faite des recherches sur les différentes options du serveur DNS la documentations ne manque pas sur le net.Je vous mettrais des annexes en fin de configuration

==>sudo aptitude install bind9 bind9-utils


Premiére Partie Configuration

1-créer des zones

-Zone directe & Zone indirecte
éditer le fichier avec votre éditeur favoris
on auras besoin de créer des zones une zone directe et une zone indirecte et de définir leur emplacement dans le fichier de configuration.
Remplacez exemple.sn par le nom de domaine de votre choix. Et l’adresse IP 192.168.1.5 aussi par celle de votre serveur
sudo vim /etc/bind/named.conf.local


//
// Do any local configuration here
// 

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include « /etc/bind/zones.rfc1918 »;

zone « exemple.sn » {
type master;
file « /etc/bind/zones/exemple.sn »;
};

zone « 1.168.192.in-addr.arpa » {
type master;
notify no;
file « /etc/bind/zones/reverse.zone »;
};


2- Créer un repertoire de zones
il n’est pas forcer de créer un répertoire de zones mais moi je le trouve intéressent du moment qu’on peut avoir à gérer plusieurs zones

=> mkdir /etc/bind/zones
3-Copier les fichiers de base des la différents fichier zones

*cp /etc/bind/db.local /etc/bind/zones/exemple.sn 


*cp /etct/bind/db.127 /etc/bind/zones/reverse.zone



4-éditer les nouveaux fichiers de zones

a)éditer le fichier exemple.zone pour les enregistrement directe @IP=>Nom

sudo vim /etc/bind/zones/exemple.zone

;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.exemple.sn. root.exemple.sn. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.exemple.sn.
@ IN A 127.0.0.1
@ IN AAAA ::1
ns IN A 192.168.1.5
www IN CNAME ns

b)éditer le fichier de configuration inverse reverse.zonr pour les enregistrement inverse Nom=>@IP

sudo vim /etc/bind/zones/reverse.zone

;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.elwan.sn. root.elwan.sn. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
5 IN PTR ns.exemple.sn.





     

  1. editer le fichier resol.conf
  2.  


changer l’adresse du serveur dans le fichier resol.conf effacer ou commenter tout et mettre votre adresse du serveur DNS

sudo vim /etc/resol.conf

# Generated by NetworkManager
nameserver 192.168.1.5


Deuxieme etape Test

1-redemarer le serveur
sudo /etc/init.d/bind9 restart
ou
sudo service bind9 restart

2-Tester le serveur DNS
nous allons utiliser le commande nslookup

=> nslookup ns.exemple.com
si tout marche on doit avoir ceci
Server: 192.168.1.5
Address: 192.168.1.5#53 

Name: exemple.sn
Address: 192.168.1.5

Publié dans Kannel, Linux, Serveurs, Telecoms

Configuration de Kannel


Configuration et installation de Kannel

On va installer kannel et le configurer dans un but pédagogique. Donc ceci consiste à mettre en place un serveur qui permettra d’envoyer et de répondre à un sms automatiquement.

L’aspect théorique est laissé au soin du lecteur des liens seront mis en annexes pour les utilisateurs désirant approfondir leurs connaissances. Ce qui veut dire que seul l’aspect pratique sera  mise en exergue!

I.Installation

Allez sur le site de kannel et télécharger le paquet gateway (dans ce tutos le version 1.4.3 est utilisé)

et décompresse en tapant la commande «sudo tar xzvf Téléchargements/gateway-1.4.3.tar.gz »,compiler et installer

pour les novices voici les différentes commandes à taper

==>récupérer le paquet avec la commande wget

sudo wget http://kannel.org/download/1.4.3/gateway-1.4.3.tar.gz

==>décompresse le paquet avec la commande tar

 sudo tar xzvf  gateway-1.4.3.tar.gz

==>Se déplacer dans le répertoire de gateway-1.4.3

cd  gateway-1.4.3/

==> installons les dépendances de kannel les deux paquets libxml2 et libxml2-dev

sudo aptitude install libxml2-dev libxml2

==>maintenant nous pouvons compiler notre cher gateway

sudo ./configure

si tout est OK on continue

 sudo ./configure && sudo make

si tout est OK on continue et on l’installe

sudo make bindir=/usr/bin/kannel install

voilà ca devrait faire l’affaire notre serveur SMS est installé sans problème reste maintenant la configuration

II.Configuration

La configuration est assez simplement il nous faut un modem GSM(on utilisera un téléphone portable de marque NOKIA série 6230i comme modem GSM) et  également une clé bluetooth pour relier notre modem à l’ordinateur(vous pouvez aussi utiliser un câble ca ne gène pas)

en première lieu nous allons essayer d’établir une liaison série entre le modem et l’ordinateur en utilisant La technologie RFCOMM.

Ouvrons un terminal et lançons nous à la recherche de notre cher ami le modem mais avant tout veillez penser à activé le bluetooth sur votre portable

==>heureusement qu’on a des outils comme hcitools lançons la recherche !

 sudo hcitool scan

Scanning …

00:1E:E2:69:F4:5C €lw@n$

hohé suis la  !!!

si vous ne voyez pas le « hohé suis la »   redemander votre machine !

vous n ‘êtes pas sérieux quand même c’était une blague :-p

continuons notre …

==>notre cher modém est la tout heureux maintenant relions le à notre machine en utilisant RFCOMM

 sudo rfcomm connect 0 00:1E:E2:69:F4:5C 1

Connected /dev/rfcomm0 to 00:1E:E2:69:F4:5C on channel 1

Press CTRL-C for hangup

cela veut dire qu’on c’est connecté sur le device rfcomm0 dans le canal 1

tout se passe bien alors? bah oui! 🙂

Alors on a relié notre périphérie en liaison série avec notre machine il nous reste à configurer notre serveur.

Avant d’y aller faisons un petit tour au niveau des commandes AT et regardons si on peut testé notre chér modeme.

Installons minicom vous savez installer maintenant sinon on s’arrête là! 😉  bon pas de soucis pour les fainéants copier et coller!

sudo aptitude install minicom et attendre la fin de l’installation

toujours dans notre terminal tapez

sudo minicom -s pour configurer minicom avec notre modem

=>Aller dans configuration du port série tapez A

=>changer le Port série :/dev/xxx en /dev/rfcomm0

=>appuyer sur Entrer pour sauvegarder

=>sur Entre a nouveau pour sortir

=>aller dans Enregistrer config. sous dfl pour sauvegarder la configuration par défaut

=> Puis sortir

si tout est OK vous devriez avoir quelques du genre

Bienvenue avec minicom 2.4

OPTIONS: I18n

Compilé le Jan 25 2010, 06:49:09.

Port /dev/rfcomm0

Tapez CTRL-A Z pour voir l’aide concernant les touches spéciales

OK

Maintenant voyons si notre SIM est bien en place

tapez toujours de le même terminal AT+CPIN ? Entrer

AT+CPIN?

+CPIN: READY

OK

Voilà le résultat attendu donc tout est OK ! Je vous encourage à lire la documentation sur les commandes AT ils sont intéressantes et permettes de faire des choses extra…. si vous maitrisez python ou C/C++ je vous assure que leur combinaison fait des ravages!à bon entendeur …..  🙂

Revenons à nos moutons!c’était quoi encore ……haa OK!la fameuse configuration de kannel! 😉

Ouvrons un autre terminal et créer d’ abord le répertoire /etc/kannel

sudo mkdir /etc/kannel

Créons le fichier /etc/kannel/kannel.conf

sudo vim etc/kannel/kannel.conf

bon chacun y vas avec son éditeur favori  😉

le fichier de configuration se compose de 5 groupe voir 6

=>le premier est le groupe core

=>le second le groupe smsc

=>le troisième est le smsbox

=>le quatrième est le sendsms-user

=>le cinquième est le sms-service

=>le sixième est le modems

voilà notre fichier de configuration toute préte

#-------------------------------------------------------

#CORE

group = core

admin-port = 13000

admin-password = bar

smsbox-port = 13001

log-file = « /var/log/kannel/bearerbox.log »

log-level=1

access-log = « access.log »

log-level=1

unified-prefix = « 00221,+221,00 »

bearerbox-host = localhost

#———————————————

# SMSBOX SETUP

group = smsbox

bearerbox-host = localhost

sendsms-port = 13013

sendsms-url = « /cgi-bin/sendsms »

global-sender = 13013

sendsms-chars = « 0123456789 +- »

log-file = « /tmp/smsbox.log »

log-level = 0

access-log = « access.log »

#———————————————

# SMSC CONNECTIONS

group = smsc

smsc=at

modemtype=nokiaphone

host = localhost

device=/dev/rfcomm0

speed=9600

validityperiod =167

#———————————————-

#MODEM

group = modems

id = nokiaphone

name = « Nokia Phone »

detect-string = « Nokia Mobile Phone »

need-sleep = true

enable-mms = true

#———————————————

# SEND-SMS USERS

group = sendsms-user

username = tester

password = foobar

max-messages = 3

concatenation = true

#user-deny-ip = « *.*.*.* »

user-allow-ip = « *.*.*.* »

#———————————————

# SERVICES

group = sms-service

keyword = test

text = « test kannel is valide! »

******FIN DU FICHIER DE CONFIGURATION******

Telecharger le fichier ici

III.Test

maintenant tout est fin prés démarrons notre serveur!;)

++ouvrons un terminal

sudo /usr/local/sbin/bearerbox  /etc/kannel/kannel.conf

++ouvrir un autre terminal

 sudo /usr/local/sbin/smsbox  /etc/kannel/kannel.conf


Envoyer un sms depuis votre navigateur

ouvrer votre navigateur favori et go ahead...;-)

remplacer le « x » par le numéro de destinataire
en partant de la on peut s’imaginer une interface propre écrite dans votre langage préféré(python,php,java…..) pour envoyer des messages