[Ran] Mise a jour Freifunk

Arhainx Jean arhainx at trebons.net
Lun 3 Sep 11:39:54 CEST 2007


Bien que très discret ces derniers temps Sven Ola a continué les mises à 
jour de Freifunk.
La 1.6.1 est désormais publique !


Les des modifications depuis la 1.4.5 ....

2007-Sep-02 (1.6.1) firmware addon for hotplug

Added a firmware handler for rt61 and rt73 ralink kernel modules,
which request a firmware via the hotplug system. Fixed Status/Scan
because "iwlist XXX scan" differs between madwifi and rt61 drivers.
Hide Admin/OLSR/ff_bmf because it's unused currently.

2007-Sep-01 (1.6.0) fixes and olsr enhancements

Added kmod-rt73 to easily install my HAMA (Ralink) USB WLAN Sticks.
Changed the olsrd-NatThreshold to include the selected inetgw for
query if ETX route-damping should happen or not. Removed the devel
stuff from S53olsrd. Changed default date in S60rdate to 01-sep-07.
Added WLC_BAND(a|b) in /sbin/wifi if wl0_phytype=a or wl0_phytype=g.
Corrected the TOTMEM query which disables freifunk-recommended on
Admin/Software1 if memory is below 8192 Kbyte.

Todo/Ideas after new stable 1.6.0

- Test Removing refrences to int_name (aka "interface") from olsr
- accounting with 2 ifaces
- bittorrent/1000 connection autofirewall (gatewaypack)
- statistics addons (look: leipzig.ff.net)
- correct freifunk-portfw (not useable with WAN)
- add plugin for scriptcall if # of neighs change
  (to set mrate, to set ff_noprobe etc).
- make freifunk-map.ipk a bit more compat
- add batman pack to recommended and for nylon
- add Message-Statistics to evaluate who's sending TC's too fast.
- Add LinkQualityMidOpt to OLSR (will send iface-index and
  is_wireless, is_adhoc, is_arp via TC/Hello and change ETX calc)
- Add HnaQualityMult to OLSR (LQMult only for HNA0/0)
- Make a script to generate own ipkg's on the WRT
- Automatic mirror selection for download.berlin.freifunk.net
- Rework admin/software: iframe for output, dropdown instead buttons.

2007-Aug-29 (1.5.33) fiddeling with olsrd

Added a plausicheck for serialize_lq (truncating a float to the
required uchar may result in 0.xx if floating point rounding err).
Resynced olsrd patches to current CVS. Corrected rt-refactoring-fixes
for BSD and Win32 (new functions: if_ifwithindex & if_ifwithindex_name).

Removed the Eth_Advantage because it's a bad idea. We need a protocol
change/extenstion for that and I have no good idea how to introduce this
while having compat with old olsrd's. Replaced with LinkQualityMidOpt which
is a boolean, currently not active. The idea: use info received via MID msgs
to change ETX=1+1+1 into ETX=1+0+1 if a eth/managed mode link is involved.
Which may come nearer to real live, because those have no store-and-forward.

Included the lq_packet-deserialize-optimization from Bernd for the 
freifunk-olsrd. Fixed a bug in S45firewall/netparam, which prevents the NAT
and firewall rules to apply, if the WAN device has not aquired an IP (e.g.
DHCP) during startup. Changed cron.minutely, because the "local.fw" in there
is crap, it should read "local.cron".

2007-Aug-27 (1.5.32) olsrd-rt-refactoring

Hannes has completed his rt-refactoring stuff. I've changed the
olsrd.ipk to include these. Note, that metric is 1 or 2 with this
patch, so olsr-viz will show the complete mesh (which is unusable
in bigger meshes). For the standard pre-installed olsrd, I'll stay
without rt-refactoring currently. Fixed a bug in txtinfo (/neigh
does sometimes print out all) for both and reworked the nameservice
to be version5-plugin compat. Fixed a bug in Admin/System so this
page should function as ususal now. Added new params: EthAdvantage
(defaults to 4.0) and HnaQualityMult (currently unused).

2007-Aug-23 (1.5.31) More fixes

Added more config statements for S20madwifi. Changed olsrd lat-lon
input from config to /var/run/latlon.txt which may be altered
during runtime. Corrected a web ui bug on Admin/OLSR, which resets
ff_wldhcp if no freifunk-dnsmasq and you submitted the page. Updated
to dropbear-0.49 which saves a few bytes, corrects the "-x" warning
with scp and removes the reverse-dns-lookup for a new connect.
Reworked the "routing-cleanup" and "policy-routing" patches for olsrd,
to support removing the network route from an interface and to stop
olsrd from complaining about routeadd/routedel errors.

2007-Aug-16 (1.5.30) wl noprobe to wifi wdog

End of Camp. Tetzlav wrote: noprobe setting gets lost after
a while. Added to "/sbin/wifi wdog" (similar to wl0_distance).
Upgraded to tinc-1.0.7. Added madwifi-modules and wireless
tools. For this, also included the GPL-Tainted check in the
busybox insmod. Added "nvram get ff_ath_param" to the module
loading stuff for ath_pci as well as a meaningful init script.
Also fixed error output if /etc/olsrd.conf not exist on the
main web page. Removed the olsrd-libs,ipk, because people tend
to mix the normal (debug) version's plugins with the special
olsrd daemon in the firmware which is optimized for size+speed.
Both daemon and plugins are in one ipkg now. Added wpa_supplicant.

2007-Aug-12 (1.5.29) wl noprobe

The CCC summer camp. Our routers get hammered with probe
requests from gadgets. Dunno, maybe forgotten wifi stuff
powered but unattended. All routers respond with a probe
response. Thus consuming all the airtime because all routers
respond and the probe request is seen quite frequently. Added
a "noprobe" option to the wl command as well as a ff_noprobe
setting to /sbin/wifi (this is only active if ad-hoc).

2007-Aug-10 (1.5.28) Even more fixes, NatThreshold

Dnsmasq config change, dhcp-script=/etc/dhcp-script. This will
execute all scripts in /etc/dhcp-script.d which begins with two
digits. The last versions include the "routing-cleanup" which
also have a small threshold for HNA-0/0 ("Inet") routes
compiled in. Added a setting to olsrd.conf and wrote a
small readme (currently in olsrd-routing-cleanup.patch).
Changed the default (+algo) from 5% to 10% because to my
experience the ETX value of a loaded link may suffer from
the load by this percentage. Moved the "kill -HUP dnsmasq"
(reread /etc/hosts) from cron.minutely to cron.hourly.
Added intro.jpg switch to admin/software1 to replace the
function from the not-installed admin/publish ipkg. Added
. /etc/profile to S50httpd in order to set the TZ env var
for a correct $(date) in all scripts (e.g. statistics).
Fixed an operator presedence bug with () in cron.minutely
which prevent "wifi up" in managed/master if wifi is dead.
Checked the freifunk-gateway-packet for "japon fonts needs
to be installed" bugrep. Dunny, but ⇑ and ⇓ seems
to be correct here. May be the client web browser is corrupt.
Also added send_redirects=0 to /etc/sysctl.conf. Added the
following nvram info to cgi-bin-status: ^lan_, ^wan_, ^vlan
and static_route. Added /etc/local.cron hook to cron.minutely.
Added small cmdline survey tools: neigh.sh and hna.sh

2007-Aug-07 (1.5.27) Fixes

1.5.26 was out with a disfunct web UI. Corrected.

2007-Aug-07 (1.5.26) olsrd-0.5.3

Upgraded to olsrd-0.5.3 (and added my patches to this version).
Added the ff_arprefreshed options to Admin/OLSR. Because of
several complaints about Wifi access for the Admin pages, I
added a new setting. Use "nvram set ff_unsecure_webadmin=1"
to (re-)activate HTTP-Password via unencrypted Wifi links.
All admin pages: changed 'unescape $x' to 'httpd -d $x' but
left the original unescape function in cgi-bin-pre.sh to
maintain compat.

2007-Jul-25 (1.5.25) New arprefresh plugin for olsr

Removed the extra daemon and included arp-refresh as plugin.
Updated the external arprefreshed.ipk also which now includes
a kernel level filter for UDP(portnum) packets. Currently, all
received OLSR packets trigger an ARP refresh which may introduce
unwanted ARP poisoning. Need to add plausicheck examining the
current host routes. Changed the default download addrs from
"download.olsrexperiment.de" to "download.berlin.freifunk.net".
Also adapted the freifunk-gateway-??.ipk to the new domain.

2007-Jul-25 (1.5.24) further fixes

Added the TZ environment var to the busybox-cgi-bin envlist for
use with the statistics/rrd packet. Added an experimental daemon
for refreshing arp from olsr broadcasts to freifunk-recommended-de
(arprefreshed). According to olsr-changelog, critical fix with the
olsrd-dot-draw plugin integrated.

2007-Jul-21 (1.5.23) fixes

Map/Goto dropdown does not work on MSIE. Added "-e mac filter" to
the horst tool. Changed /sbin/wifi: if an nvram variable is there
but its empty, the tool uses zero always. Bad with wl0_rts. So theres
a difference between "nvram unset wl0_rts" and "nvram set wl0_rts=".
Changed behaviour: If nvram var is empty, it does nothing. For rts,
this means the card default of 2347 now stays configured. Brrr.
Corrected the "no wan_hostname -> olsr-nameservice oops". Finished
the olsr policy routing changes (inkl. ipv6). Corrected the bad habit
of mis-configuring wan_device if proto=pppoe. wan_device should stay
on the same setting always, whereas the logical wan_ifname should
change on pppoe or not pppoe. Added dell 2300 to S05nvram. Completely
removed the IPC and apm stuff from freifunk-olsrd to save space.

2007-Jul-18 (1.5.22) policy default route

Renamed the ff_dyngw switch in Admin/OLSR to ff_policyrt. Which is
decativted by default. If policy is activated, the "default" table now
is also maintained by olsrd and it has a mirrored freifunk-defroute entry.
Just in case, sme. has no manual defroute and wonders why no inet. Also
changed cgi-bin-status to *list all* as well as /sbin/route now lists
all if no params appended. So just enter "route" to list all routing.

2007-Jul-18 (1.5.21) "access denied" fixed

Grmbl. Made again the error not to escape "$" into "\$". Fixed.

2007-Jul-18 (1.5.20) olsrd-0.5.2

Changed forms[0] to mapform in cgi-bin-map.html (if another form
is in the html template, "goto node" etc does not function). Switched
to olsrd-0.5.2. Fixed a bug preventing all nodes in the neighbourhood
of a double-wlan-card-both-adhoc not to function properly. Removed the
pubpack from web-ui to save space.

2007-Jul-20 (1.5.19) does not exist (no -DSUPPORT_OLD_PLUGIN_VERSIONS in 

2007-Jul-17 (1.5.18) minor stuff (aka Schnickschack)

Added all iptables*.so to a tar bz (there are some missing in the ipks).
Fixed HTTP/Password Access forbidden /var/etc/httpd.conf if no LAN IP.
Fixed removal && conversion of ff_txpwr to wl0_txpwr in S14nvram.

2007-Jul-13 (1.5.17)

Mixed up versions during upload. So today two version. Also changed:
Removed the "LANOLSR" query from http-login-denied. Its not practical
und does not really help to improve security. Re-Added the fakepop ipk.
Removed an accidential debug output from olsrd.

2007-Jul-12 (1.5.16) Txpwr fixes

Fixed the txpwr chaos (hopefully). This was the situation:

* Web-Admin/Wifi changes wl0_txpwr, but states "units is mW"

* wl0_txpwr is applied in /sbin/wifi. If no such variable, the
  wifi cmd uses pa0maxpwr. The wl.o variable accepts qdbm (1/4 dbm)

* /etc/init.d/S53olsrd applied "wl txpwr $(nvram get ff_txpwr)"
  this time the unit was "mW".

While setting the qdbm variable, the driver obeyes to internal
limits (aka "Regulatory Limits", evnt. minus antenna gain and the
"EIRP" mode?). Changed txpwr handling to get more control here:

* Web-Admin/Wifi now states "qdbm" and has "override" switch as
  well as a calculator for that stuff.

* No more "ff_txpwr" (removed from /etc/init.d/S53olsrd)

* /etc/init.d/S14nvram grabs ff_txpwr, compares with wl0_txpwr
  and sets the higher value into wl0_txpwr for use with /sbin/wifi
  ff_txpwr is then removed. May be suitable for over-the-air update.

2007-Jul-10 (1.5.15) Mrate default change

There where missing B-Mode nodes and the 6mbit default is obviously
to high. I have a node which communicates fine with mrate=11, but
nothing with mrate=6. So I lowered a bit to mrate=5.5 (this is a
default, a fixed mrate is better than auto!). Added a ff_deflev to
keep track of the defaults changes and added a "if rts is activated
with defaults, simply deactivate it). Added wl rate & wl mrate to
the status web page.

2007-Jul-10 (1.5.14) some fixes

Fixed a bug in netparam (with tunnels the script does not
work, thanks to pud for submitting this). Added a simple
hook to cron.minutely for a shell scipt /tmp/.autorun. This
makes it easy to deploy changes if you happen to be the admin
for a bigger number of nodes. Example:

vi /tmp/.autorun
  nvram set wl0_mrate=12000000 commit
  rm $0
chmod +x /tmp/.autorun
scp /tmp/.autorun root at

While I'm at it: I added a new variable named ff_pubkey. You
can place a dropbear compatible entry here to be written into
/etc/dropbear/authorized_keys after flashing a new firmware.
If you know how to "ssh-keygen -t dsa", you know what to do
with it. And there is more: the firstboot script extracts
ff_autorun to /tmp/.autorun.firstboot and runs that file.

Added WLC_SET_GMODE_PROTECTION_CTS to /sbin/wifi and /usr/sbin/wl
(we have a Web UI setting but it's ignored). Check wan_hostname
and replace unallowed chars (anything but [a-zA-Z0-9-] is not
compat with DNS-Names) in the Admin/System page. Added a plausi
check to ff_adm_gps->ff_adm_latlon convert in /etc/init.d/S14nvram.

2007-Jul-07 (1.5.13) olsrd-0.5.1

Switched to olsrd-1.5.1 and merged my patches. Added the
missing "wl0_mrate" setting to wificonf (/sbin/wifi up).
Added two more options to /var/etc/httpd.conf. P:ip/mask
allows password pages from this net, Q:* disallows from
all other ips. This will prevent people from typing in
the password over unsecured wifi as well as preventing
hacking attempts via WAN (if httpd is reachable there).
Also changed: new "-f" for traceroute == minttl. For many
inet gw's the first hop is blocked -> cron.minutely
Also introduced a small threshold for default-gw switches.
We all know: defgw mostly uses NAT, so continuous switching
produces lost connection. If route old_etx/new_ext for a defgw
is between 0.95 and 1.05, no routeing changes will occur.

Note: With this version, I include the recommendation to set
the multicast rate to 6 mbit as well as the setting:

* There is no known B-Mode Wifi which runs reliable
  in a mesh. 6 Mbit enforces OFDM, so no B-Mode card
  can get a route which will effectly cut off any
  very old equipment from the mesh. B-Mode cards
  should be used for longlinks (managed!) only.

* The LQ/ETX calculation suffers from bitrate floating.
  Other rate == other packetloss / range. Because in a
  bigger mesh, the OLSR packets will use significant
  airtime, you should not use the 1-2 Mbit rates. Air
  time for 6 Mbit is one third downto one sixth!

* With 6 Mbit, wifi range should be reasonable as well.
  Otherwise fix your antenna.

* A Node broadcasting in a fixed rate will understand
  other nodes broadcasting with another speed.

* If you use a multicast application, setting the rate
  higher will lead to more packet loss. Which is a problem
  with multicast all the time...

2007-Jul-01 (1.5.12) SPF reactivated

Got a fix from gregor, metrics should be OK now with
the OLSRD-SPF-refactoring CPU-save patch.

2007-Jul-01 (1.5.11) Grmbl. More fixes

To bad: missed the wl update and one of my olsrd-hacks
provokes to much unnecessary syslogs.

2007-Jul-01 (1.5.10) Pollrate fix

Oops - high packet loss on ether links. Due to bad pollrate.
Changed to 0.05 which is the correct value.

2007-Jun-28 (1.5.9) Olsr fixes

The spf-refactoring is calculating the hopcount wrong. Which
introducts to many unnecessary routing changes. Hacked by
using metric=1 for all routes which will break e.g. the
OLSR-VIZ  javascript metric selection.

Also changed the add/del strategy for changeing routes. Normally,
you remove the old entry and then create a new one. Which will lead
to a small timeslot with no route. For this, I'll try to add the new
route first. If that fails, the new route is added once more after
removing the old one. Repaired: Policy routing now returns error
messages if (rtnetlink recvmsg() was not implemented until now).
Also missed to change the pollrate (was: 0.5, fixed to 0.05). Sorry
for all the packet loss on ethernet ;-)

Added an input file to the nameservices-latlon stuff. You can now
use PlParam "latlon-infile" "/tmp/bla.txt", then write 1.23,2.34
in there to change the nodes announced geopos during runtime. Also
added Mid()'s to the js file for "this node" (if it has more that
one iface).

2007-Jun-28 (1.5.8) More Fixes

Changed map icons. Added an ipk with berlin old nodes for
the map feature (ipkg install freifunk-berlin-mapaddon).

2007-Jun-27 (1.5.6) Fixes

Added the name to olsrd-nameservice/latlon as well as fixed
the HNA lookup. Fixed wl not to put out too much '%'.

2007-Jun-27 (1.5.5) Experimental Map

Added the geopos stuff to olsrd. We now have a first draft
of a decentralized map (done with virtual earth). Currently
not showing links.

2007-Jun-25 (1.5.5) Fixes in toolchain

Wanted to get up the build stuff on a PC with non-i386 and a
/bin/sh other than bash. Also: the "tar" tool always changes
options. Grmbl. Fixed.

2007-Jun-25 (1.5.5) RTS/CTS

After a lengthy discussion, we now recommend to switch off RTS/CTS
completely. To do this, the red X in the Web-UI's todo list now
reflects this.

2007-Jun-24 (1.5.5) Geopos

Changed the Geopos input on admin/contact info. The ff_adm_gps variable
renamed to ff_adm_latlon because everyone is used to enter latitude first.
Adapted F1-onlinehelp text accordingly. Variable will be converted auto-
matically during flash/next boot in /etc/init.d/S14nvram.

2007-Jun-23 (1.5.4) olsrd spf-refactoring

Our vieanna fellows has optimized the routing/dijstra calculation. This
is included as well as olsrd-BMF 1.5 and some fixes for olsrd. I skipped
the LQ_Threshold stuff because it does not work correctly.
Also: wl radio on/off added.

2007-May-23 (1.5.3) Fixes

Encoding change to iso-8859-2 in template.pl (for polish) was incorrect.
Also fixed a bug in the olsrd/process_routes.c patch (to much routeing
change ignores, only affects hna gw switches now).

2007-May-22 (1.5.2) Fix for routing loops

The LQ_Threshold leads to routing loops and maybe the default 1.5
factor for LQ_Threshold (if newETX < oldETX/1.5 or newETX > oldETX*1.5
then switch routes) is too high especially for ethernet links. Changed
that parameter to only affect HNA routes (if they are a bit more "lazy",
the NAT gateway users may be more happy). Also Lorenz upgraded dnsmasq to
a more recent version and fixed some issues in gen-openwrt for the kit.
Also added the polish translation.

2007-May-22 (1.5.1) Fix for missing ipkg.conf

/etc/ipkg.conf is empty because my auto-switch-to-testing-repo
script have had a flaw. Fixed. Added iptraf to the ipkg repo, so
ipkg install freifunk-recommended-xx has less to complain.

2007-May-17 (1.5.0) A new testing version

Time to continue with a maintenance circle. This testing version
has the current olsrd-0.5.0+cvs, a freifunk-tcpdump with olsr
(use -v) and a lower olsrd pollrate to fix an udp buffer overflow
especially if a higher number of nodes are in close range / are
linked by ethernet connections. Also included: olsrd-policy-
routing, to be activated with RtTable!=254 (start scripts still
need some massage for this) and a first version of a cleanup of
process_routes.c with additonal LQ_Threshold > 1.0.

2006-Dez-12 (1.4.6) P2P filtering started

We have severe probs with brute-force-users (mainly P2P). They
open so much connections, the gateway router dies because out
of mem. Lowered conntrack_max from 16k to 8k (each conn needs
350 byte == 2.8 Mb) as a first countermeasure. Enable SYN_COOKIES
option in kernel disabled by accident. Fixed a bug with insmod
ipv6 -> netparam script stubles over "sit0 at NONE" interface name

Trébons Haut Débit
mailto:arhainx at trebons.net       ---       http://www.trebons.net
--- [ Ce mail a parcouru 19 km en WIFI via plusieurs relais] ----

More information about the Ran mailing list