uncle buzz | Bonjour,
J'aimerai sous Raspbian pouvoir automatiquement mettre le SSID de mon point d'accès à la valeur du nom de la machine qui héberge le serveur dhcp.
Je pensais donc utiliser un script éxécuté pendant la demande de bail après que la configuration complète aie été envoyée, donc quand les script dhcp-client sont appelés pour la raison BOUND.
Jusque là tout va bien, sauf que quand je regarde ce qu'envoi le serveur dhcp sur le réseau, j'ai la trame suivante (tcpdump) :
Code :
- tcpdump -i eth0 -vvv -s 1500 '((port 67 or port 68))'
|
Code :
- 09:08:28.387377 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328)
- 0.0.0.0.bootpc > 255.255.255.255.bootps: [udp sum ok] BOOTP/DHCP, Request from b8:27:eb:38:59:9b (oui Unknown), length 300, xid 0xde09ff3b, Flags [none] (0x0000)
- Client-Ethernet-Address b8:27:eb:38:59:9b (oui Unknown)
- Vendor-rfc1048 Extensions
- Magic Cookie 0x63825363
- DHCP-Message Option 53, length 1: Discover
- Requested-IP Option 50, length 4: 192.168.10.45
- Hostname Option 12, length 11: "raspberrypi"
- Parameter-Request Option 55, length 14:
- Subnet-Mask, BR, Time-Zone, Default-Gateway
- Domain-Name, Domain-Name-Server, Option 119, Hostname
- Netbios-Name-Server, Netbios-Scope, MTU, Classless-Static-Route
- NTP
- END Option 255, length 0
- PAD Option 0, length 0, occurs 22
- 09:08:29.388620 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 338)
- 192.168.10.251.bootps > 192.168.10.45.bootpc: [udp sum ok] BOOTP/DHCP, Reply, length 310, xid 0xde09ff3b, Flags [none] (0x0000)
- Your-IP 192.168.10.45
- Client-Ethernet-Address b8:27:eb:38:59:9b (oui Unknown)
- Vendor-rfc1048 Extensions
- Magic Cookie 0x63825363
- DHCP-Message Option 53, length 1: Offer
- Server-ID Option 54, length 4: dhcp.mydomain.tld
- Lease-Time Option 51, length 4: 86400
- Subnet-Mask Option 1, length 4: 255.255.255.0
- BR Option 28, length 4: 192.168.10.255
- Time-Zone Option 2, length 4: -28800
- Default-Gateway Option 3, length 4: 192.168.10.254
- Domain-Name Option 15, length 10: "mydomain.tld"
- Domain-Name-Server Option 6, length 4: 192.168.10.254
- Netbios-Name-Server Option 44, length 4: 192.168.10.100
- NTP Option 42, length 4: 192.168.10.229
- END Option 255, length 0
|
On y voit nettement l'option Server-ID avec la valeur qui m'intéresse dhcp.mydomain.tld (ce qui normalement devrait être l'adresse ip du serveur, sauf que là j'ai bien son nom, mais pas entre " " ), mais impossible de la retrouver dans les variables.
La seule variable concernant le serveur dhcp que j'arrive à récupérer est $new_dhcp_server_identifier qui est l'adresse IP du serveur dhcp (ce qui serait bien si je savais récupérer le nom de la machine avec son IP...)
Savez-vous comment récupérer la valeur texte de l'option 54 Server ID ? ($new_server_id ne fonctionne pas)
Ce que je veux faire, c'est transformer un raspberry en point d'accès WIFI, avec un SSID qui prendrait automatiquement la valeur du nom de la machine qui aura attribuer la configuration réseau via dhcp au raspberry.
En gros, j'ai des machines avec un PC dont le nom est le numéro de série de la machine, sur le PC j'ai un serveur dhcp pour configurer tout ce qu'on peut être amené à connecté à la machine (imprimante wifi, ethernet; tablette, portable... etc)
La règle étant qu'une machine étant équipée du wifi, le SSID est son numéro de série ce qui évite les conflits et permet d'identifier la machine à laquelle on se connecte si plusieurs sont dans la même zone.
L'idée serait d'avoir le raspberry qui gère le point d'accès de façon automatique sans paramétrage, on le branche à une machine et hop, il reçoit son IP et démarre le wifi avec le bon SSID. Du coup tous les points d'accès sont identiques et la config est dynamique (mot de passe identique).
La machine avec serveur dhcp est un PC sous windows (xp ou seven)
Mon but actuellement est donc lorsque mon raspberry reçoit une adresse IP, de modifier la conf de hostapd pour modifier le SSID d'après le nom de la machine hébergeant le serveur DHCP.
Pour le moment je n'arrive qu'à récupérer son IP, l'idéal serait de pouvoir dans la requête dhcp récupérer son nom, alternativement de le récupérer après coup depuis son IP.
J'ai éventuellement la possibilité de créer une option sur mon serveur dhcp pour y mettre son nom, après, il faudrait que je la récupère dans les variables du script dhcpclient, mais si je peux le faire sans modifier le serveur dhcp, ce serait mieux.
Merci de votre aide. Message édité par uncle buzz le 09-09-2014 à 14:19:09
|