Table des matières

Routeur PMClab

George Boumis a passé des heures pour configurer le routeur de PMClab et il est très content :-D

Description du matériel

Il s'agit d'un appareil D-Link DIR-600 avec une version (BARRIER BRAKER, Bleeding Edge, r37876) de openWRT.

Re-initialisation

Mode 'failsafe'

Source Si jamais (ça arrive souvent) le mot de passe est perdu ou que l'appareil ne fonctionne plus comme prévu, la procedure de re-initialisation peut apparaitre utile :

  1. Eteindre l'appareil
  2. Déconnecter tout cable de l'appareil
  3. Re-alumer l'appareil
  4. Appuyer sur le bouton penaud 1-2 secondes 'Reset' quand le 'power led' passe à vert
  5. Relâcher le bouton.
  6. Verifier que le 'power led' clignote assez rapidement

Connection en mode 'failsafe'

La procedure décrite ci-dessus met l'appareil dans un mode 'failsafe'. Dans ce mode le wifi n'est pas fonctionnel et l'attribution des adresses (dhcp) non plus donc il faut configurer l'ordinateur avec une adresse statique, par exemple 192.168.1.2. Une fois l'ordinateur configuré, une connection telnet donne accès à l'appareil.

% telnet 192.168.1.1

Un message d'invite nous accueilli

root@(none):/#

Le système n'est pas modifiable dans cet état (monté read-only) et si un changement doit être effectuer (comme le changement du mot de passe) il faut le monté en lecture et écriture. Cela se fait avec :

root@(none):/# mount_root

Re-initialiser le mot de passe root

Avec la commande suivante:

root@(none):/# passwd

le système demandera un nouveau mot de passe (les caractères ne s'affichent pas)

Re-initialiser le système

Cela se fait avec la commande suivante et en répondant 'y' à la question:

root@(none):/# firstboot

et quand tout est fini redémarrer l'appareil avec

root@(none):/# reboot -f

Configuration

À partir de ce moment il a plus besoin d'avoir une adresse statique. Le système d'attribution d'adresses (dhcp) fonctionne. Pour configurer l'appareil:

telnet 192.168.1.1

et changer le mot de passe

passwd

% ssh root@192.168.1.1

Un prompt indice qu'on est bien connecté à l'appareil

root@OpenWrt:~#

Fichiers de configuration

Il se trouvent tous dans le repertoire /etc/config:

Commandes de configuration

Au lieu de éditer les fichier directement, il existe la commande uci (uci to the rescue!) par example:

  uci set network.wan.proto=static
  uci set network.wan.ipaddr=74.125.115.103
  uci set network.wan.netmask=255.255.255.0
  uci set network.wan.gateway=74.125.115.1
  uci set network.wan.dns='8.8.8.8 8.8.4.4'
  uci commit network
  ifup wan

cet exemple ci-dessus configure le port internet avec une adresse statique, un netmask, un gateway et un dns.

Configuration spécifique PMClab

Source Interface wan (internet):

  uci set network.wan.proto=static;
  uci set network.wan.ipaddr=134.157.100.253;
  uci set network.wan.netmask=255.255.255.128;
  uci set network.wan.gateway=134.157.100.254;
  uci set network.wan.dns='134.157.0.129';
  uci commit network;
  ifup wan;

Ajouter dans le fichier /etc/config/network

  config 'interface' 'wifi'     
      option 'proto'      'static'
      option 'ipaddr'     '192.168.2.1'
      option 'netmask'    '255.255.255.0'  

Ajouter dans le fichier /etc/config/dhcp

  config 'dhcp' 'wifi'
      option 'interface'  'wifi'
      option 'start'      '100'        
      option 'limit'      '150'                
      option 'leasetime'  '12h'

Paramètrer le pare-feu source:

  config zone
      option name       wifi
      list   network    'wifi'
      option input      ACCEPT
      option output     ACCEPT
      option forward    REJECT
  config forwarding
      option src              wifi
      option dest             wan
  config forwarding
      option src              wifi
      option dest             lan
  config forwarding
      option src              lan
      option dest             wifi
  config forwarding
      option src              lan
      option dest             wan

Interface wifi, réseau PMClab et mot de passe pmclabpass:

  uci set wireless.radio0.disabled=0;
  uci set wireless.radio0.country=FR;
  uci set wireless.radio0.channel=6;
  uci set wireless.@wifi-iface[0].network='wifi';
  uci set wireless.@wifi-iface[0].ssid='PMClab';
  uci set wireless.@wifi-iface[0].encryption='psk2+tkip+aes';
  uci set wireless.@wifi-iface[0].key='pmclabpass';
  uci commit wireless;

Recharger les paramètres

  /etc/init.d/network reload
  /etc/init.d/firewall restart
  /etc/init.d/dnsmasq restart

DNS

Afin de faciliter l'accès entre les ordinateurs connectés au réseau, on souhaite aussi que des noms de hôte simples soient assignés. Pour permettre au routeur d'assigner des noms de hôte aux machines, on modifie /etc/hosts comme suit:

  192.168.2.100 alpha
  192.168.2.101 bravo
  192.168.2.102 charlie
  192.168.2.103 delta
  192.168.2.104 echo
  192.168.2.105 foxtrot
  192.168.2.106 golf
  192.168.2.107 hotel
  192.168.2.108 india
  192.168.2.109 juliet
  192.168.2.110 kilo
  192.168.2.111 lima
  192.168.2.112 mike
  192.168.2.113 november
  192.168.2.114 oscar
  192.168.2.115 papa
  192.168.2.116 quebec
  192.168.2.117 romeo
  192.168.2.118 sierra
  192.168.2.119 tango
  192.168.2.120 uniform
  192.168.2.121 victor
  192.168.2.122 whiskey
  192.168.2.123 x-ray
  192.168.2.124 yankee
  192.168.2.125 zulu

Ces noms sont la convention pour l'alphabet phonétique de l'OTAN. Le fichier a été généré rapidement avec une macro de VIM à partir d'une liste de noms (qmP<ctrl-A>a <Left><Esc>v0y<Down>q25@m, golf quelqu'un?). Puis le fichier /etc/dnsmasq.conf a été complété par la ligne:

  dhcp-range=wifi,192.168.2.100,192.168.2.125,30m
  

Finalement on modifie /etc/config/dhcp pour correspondre avec la ligne ci-dessus: Une plage entre 100 et 125 inclus avec renouvelement du lease DHCP tous les 30 min.