====== B.A.T.M.A.N. advanced ====== Um das Freifunknetzwerk nicht nur zu nutzen, sondern auch zu erweitern, lernen wir ein Teil davon zu werden. Debian 7.0 kommt bereits mit dem notwendigen [[http://www.open-mesh.org/projects/batman-adv/wiki/Wiki|batman-adv]] Kernelmodul. Weiterhin sollten die Pakete ''batctl'', ''ip'', ''nmap'' und ''curl'' vorhanden sein. # Kernelmodul laden modprobe batman-adv # wlan device in ad-hoc mode schalten iwconfig wlan0 mode ad-hoc iwconfig wlan0 essid batman.jena.freifunk.net batctl if add wlan0 # eine weile warten und andere Teilnehmer des Meshnetzwerks anzeigen batctl o # optional kann man andere hosts im batman-adv layer pingen batctl p fa:1a:67:cb:25:12 # um ins internet zu kommen muss man einen default gateway finden # alle konten sind von der form 10.17.*.1 ifconfig wlan0 0.0.0.0 ifconfig bat0 10.17.78.1 # besser auf address kollision pruefen! # finde den schnellsten node nmap -sP '10.17.*.1' # nutze den schnellsten als gateway ip route add default via 10.17.11.1 dev bat0 # akzeptiere den splash screen curl -d target_url=foo 10.17.11.1/cgi-bin/splash-click.html Die einzelnen Batman Knoten kann man ueber ihre link-local IPv6 Addresse erreichen: ssh fe80::fa1a:67ff:fecb:3162%bat0 In order to check the underlying mesh-wide distributed database ([[http://http://code.sotun.de/git/hbbp/|hbbp source repository]]), add the following Lua code to ''/usr/share/wireshark/init.lua''. If you run wireshark as root make sure to comment out the appropriate lines in this file to allow Lua to run. trivial_proto = Proto("hbbp","Home Brew Broadcast Protocol") -- create a function to dissect it function trivial_proto.dissector(buffer,pinfo,tree) pinfo.cols.protocol = "HBBP" local subtree = tree:add(trivial_proto,buffer(),"HBBP Data") local i = 0 local b = buffer():bytes() while (i Here is screenshot of the dissector in action: {{hswiki:projekte:screen_lua.png?640|}} {{tag>anleitungen}}