lundi 10 juin 2013

Configurer Asterisk avec Free

Activation du compte SIP

Avant toute chose, se connecter sur le site de Free et aller dans Téléphonie > Paramétrer mon compte SIP. Activer le compte SIP et rediriger les appels entrant vers le "téléphone SIP". Choisir un mot de passe, puis valider. Redémarrer la box (en Freebox v5).

Configuration d'Asterisk en interface web

On commence par configurer les informations classiques :
Type : SIP
Provider name : Un nom pour le trunk, par exemple "Freephonie"
Hostname : le serveur d'en face. Dans notre cas, "freephonie.net"
Username : l'identifiant, qui est le numéro de téléphone assigné par Free (souvent en 09xxxxxxxx)
Password : le mot de passe renseigné dans la première étape.

Une fois le trunk créé, il faut l'éditer pour remplir les champs suivants :
FromDomain : pour les appels sortants, doit être défini à "freephonie.net"
FromUser : pour les appels sortants, doit être votre numéro de téléphone au format international. Quelque chose comme "00339xxxxxxxx".
AuthUser : votre numéro de téléphone ("09xxxxxxxx")
insecure : very (recommandé)

Attention : sans FromUser et FromDomain, vous pourrez recevoir les appels mais pas en émettre.

Configuration d'Asterisk en CLI

Éditer /etc/asterisk/users.conf et ajouter une section :

[09xxxxxxxx]
host = freephonie.net
username = <numéro de téléphone>
secret = <mot de passe>
trunkname = Freephonie
context = <nom de votre contexte (p.ex : default) >
hassip = yes
registersip = yes
trunkstyle = voip
fromuser = <numéro au format international. ex : 00339xxxxxxxx>
authuser = <numéro de téléphone>
insecure = port,invite


Augmentation du "defaultexpiry"

Le temps d'expiration du REGISTER est par défaut à 120 secondes alors que Free refuse le ré-enregistrement avant 30 minutes. Pour éviter d'avoir plein de warnings dans les logs, on peut l'augmenter : éditer /etc/asterisk/users.conf et dans la section du trunk, ajouter :

[09xxxxxxxx]
[...]
defaultexpiry = 3600

lundi 21 janvier 2013

Remplacer la Freebox par un modem Alcatel Speed Touch Home

Comme avec le SOHO97, le but ici est de configurer un modem Alcatel Speed Touch Home (STH dans la suite) pour se connecter à une ligne dégroupée chez Free. Notons qu'il est nécessaire d'avoir passé le STH en Speed Touch Pro.

Avant de commencer, il faut savoir que Free utilise de l'IPoA, c'est-à-dire où IP est encapsulé directement dans ATM. L'encapsulation utilisée est VC-MUX. Or, même si le STH support l'IPoA et le VC-MUX, il ne permet pas d'utiliser les deux à la fois. Heureusement, il existe une version patchée du firmware qui remédie à ce problème. Originalement posté sur Forpage, il est devenu difficile à trouver et il figure en pièce jointe de ce billet.
Attention, deux remarques concernant ce firmware :
- il s'adresse à la version K du STH, pas la version G ;
- il fait disparaître le mode "EXPERT" du STH. Je recommande donc de conserver en passif une version qui autorise ce mode.

La première étape consiste donc à envoyer le nouveau firmware. La manière la plus simple est de passer par l'interface web du modem (http://10.0.0.138/) ; si cela échoue, il reste la méthode du telnet/FTP.

Ensuite, il faut configurer le VP/VC : sur la page "phonebook", supprimer le VP/VC 8/36 et le recréer de type "CIP".
Puis, sur la page CIP, ajouter une interface avec l'adresse IP publique et un masque de 255.255.255.0. Ajouter une connexion CIP utilisant le canal (8/36) créé précédemment, avec comme destination l'adresse IP de la passerelle Free, généralement la dernière adresse du sous-réseau (x.x.x.254)
Il convient ensuite d'ajouter la route suivante :
Destination : 0.0.0.0/0
Source : any
Passerelle : <adresse_IP_passerelle>
Le NAT doit être configuré depuis telnet :

nat enable addr=<adresse_ip_publique> type=pat


D'ailleurs, toute la configuration décrite précédemment est réalisable par telnet :

phonebook delete name=Br2
phonebook add name=cip1 addr=8*36 type=cip
cip ifadd addr=<addresse_IP_publique> netmask=255.255.255.0
cip pvcadd dest=8*36 destaddr=<adresse_IP_passerelle>
ip rtadd dst=0.0.0.0 gateway=<adresse_IP_passerelle>

vendredi 13 avril 2012

Remplacer la Freebox par un routeur Cisco SOHO 97

Voici une configuration possible du Cisco SOHO97 pour se connecter sur une ligne ADSL Free en dégroupage total (donc en IPoA). On y voit la configuration de l'encapsulation des VP/VC 8/36, l'adressage fixe (le DHCP ne fonctionne qu'avec certaines versions d'IOS) et le NAT. On peut aussi ajouter des redirectiosn de ports.

Attention toutefois, le SOHO97 ne fait pas d'ADSL2+, seulement de l'ADSL. Sur une ligne de piètre qualité (2,5 km), je perds environ 26 % de débit en download, 14 % en upload et 20 ms de ping, ce qui est énorme.

interface Ethernet0
 ip address 192.168.1.254 255.255.255.0
 ip nat inside
 hold-queue 100 out
!
interface ATM0
 no ip address
 no atm ilmi-keepalive
 no atm address-registration
 no atm ilmi-enable
 dsl operating-mode auto
!
interface ATM0.1 point-to-point
 ip address <adresse_ip_publique> 255.255.255.0
 ip nat outside
 pvc 8/36
  encapsulation aal5mux ip
 !
!
ip nat inside source list 1 interface ATM0.1 overload
ip classless
ip route 0.0.0.0 0.0.0.0 ATM0.1
ip http server
no ip http secure-server
!
access-list 1 permit 192.168.1.0 0.0.0.255

Débit montant : 107,6 ko/s avec la Freebox ; 92,7 ko/s avec le SOHO97. (envoi en FTP de 32768.rnd vers un FTP Free)
Débit descendant : 380 ko/s avec la Freebox ; 281 ko/s avec le SOHO97. (wget http://test-debit.free.fr/32768.rnd)
Ping : 20,4 ms avec la Freebox, 39,6 ms avec le SOHO97. (ping -f <ip_passerelle> pendant une minute)