tankos the bot

A couple of videos featuring tankos v2 and tankos v4 meandering around with no purpose


motion of censure


Today, in a general assembly of the not-for-profit Organization AWMN members of the organization and the community decided to abolish the board.

Mr Bonicioli, mr Papathanasiou, mr Tsamakos, mr Klisiaris or mr Pragatsis are not members of the board anymore. They were 'elected' for a two year term four months ago but the organization and the community do not trust them anymore. In the next general assembly we will elect a new board.

The general assembly decided participation in the CONFINE project as is until the next general assembly.


AWMN insider

v 0.4 1393681766

The Athens Wireless Metropolitan Network AWMN or ΑΜΔΑ in Greek is a wireless network community that received a lot of publicity lately. Most of the articles about AWMN seem funny to technical people and members of the AWMN Community have a tough time to find a tiny bit of truth in them. In this article I will try to set the record straight.


Most Backbone Nodes use the 5GHz band and most client nodes use the 2.4GHz band. There is a good chance that there are more Backbone nodes than client nodes in the AWMN.

802.11n/a/g along with some proprietary Mikrotik ( nv2 , nstreme ) and Ubiquity ( Airmax ) WLAN protocols are being used. RouterOS, OpenWRT and AirOS are the major players in the router Operating Systems. A plethora of antenna equipment and router hardware is being used and it is common for backbone operators to put together their antennas and feeders or their own roof-PC-router.


The AWMN is a BGP internet and there have been in the past islands under a common AS where another routing protocol eg OLSR was used. Currently there is only one small two-node OLSR island. Older members of the community are telling me that they used to use OSPF to internet back in the day. OSPF is used only as an in-node iBGP protocol in some nodes with many routers-bgp-speakers nowadays.

AWMN was planned to be part of a Wireless internet that spans Greece and uses the private IPv4 space 10/8. and is the IPv4 space that was allocated to AWMN according to the second Hellas Wireless addressing plan.

Number and Name Resources

In the AWMN a number and names authority aka hostmaster-team assigns numbers and delegates names to the members of the community. The resources are recorded and managed with a web application called Wireless Node Database WiND.

The hostmaster-TEAM delegates forward DNS zones in the .awmn. Top Level Domain along with reverse zones for the allocated IPv4.

Unfortunately, at this moment, the hostmaster-team is effectively only one person that is not respected by the community. It is very common for someone to pick an Autonomous System and one or more /24 IPv4 segments that are not in use and simply use them. Many members of the AWMN community want to create another WiND managed by a new Hostmaster TEAM.


There are approximately 26.000 Nodes in the AWMN WiND. Over 70% of them are noble intentions that were never materialized or simply trash.

There are approximately 600 backbone nodes in the AWMN. Every node is assigned its own Autonomous System number ( WiND node ID ) and at least one /24 IPv4 network. The backbone operators in the AWMN are 400 or less since many backbone operators own and operate more than one node. It is tough to estimate the number of clients and end-users of the AWMN internet. Approximately three thousand end users is a good guess according to many members of the Community.

Currently, I am conducting a census. Questionnaires have been send out to all the active node operators. So far it looks like there are approximately 568 real BackBone Nodes in the AWMN and approximately 385 Backbone operators. It is still tough to estimate the number of end users since it varies a lot from questionnaire to questionnaire and I do not have a safe sample of answers yet.

The AWMN internet spans Attica and it is connected to Peloponnese, Roumeli , Kefalonia and Euboea with wireless links. The AWMN internet is also connected to other communities in Greece and Europe with Internet VPNs.

Around 800 prefixes are announced by the AWMN nodes and the nodes in the borders with other communities that are connected through wireless links or Internet VPNs.

Services and Applications

Many Backbone operators are hackers who put together their own services and offer them to the Community.

A few uses of the AWMN internet are:

  • File sharing through FTP, dc hubs , Network shares , and Torrent Trackers
  • VoIP
  • Internet VPN , Internet Proxies
  • Game Servers
  • internet radio and video streaming
  • weather stations , internet cameras , security cameras
  • Alternative Connectivity for Radio operators, TV station operators , Radio Amateurs and Solar Park operators to their equipment

The services and applications are too many to list. What distinguishes the AWMN wireless community from other wireless communities is the large amount of native content.

Legal Representation

There is a "not-for-profit" organization that claims to be the Legal Representative of the AWMN Community. I ( ipduh ) and 24 other persons are currently members of this organization. Unfortunately, this organization does not represent the AWMN community and it is not accepted by the AWMN community. Less than 4% of the AWMN Community participated in the not-for-profit organization called AWMN in 2013. The community participation in the not-for-profit organization has dropped drastically the last two years. The president of the `not-for-profit` organization called AWMN during the last two years was Josef Bonicioli.

Approximately 9/25 members of the "not-for-profit" organization called AWMN do not operate nodes and have nothing to do with the AWMN Community. The AWMN organization Board is controlled by three persons who deny access to the financial records of the "not-for-profit" organization and they are suspected by many members of the AWMN community for embezzlement. Most backbone operators do not accept Bonicioli and there are many backbone operators who refuse to even be in the same room with Bonicioli.

I was present in the last elections for the "not-for-profit" organization called AWMN and I think of them as a bad joke.

The irregularities and the unlawful actions made by the tiny group that controls the organization during the elections are far to many to list. I will mention and explain just one of the many examples that shows the Board's audacity and corruption.

George from Sarantaporo was elected as vice president in the Board but he was replaced in the election minutes by a person known in the AWMN forum as Afanas. Afanas was sitting right next to me. Me and many other witnesses are 100% sure that he was not even a candidate. Members of the AWMN organization think that the reason behind this sudden change in the minutes is that George from Sarantaporo applied or he is about to apply for a CONFINE open call and he cannot be in both the Sarantaporo and the AWMN boards.

According to many members of the community the motivation behind the Board corruption, their slouch attempts to control everything AWMN related, and their claim that they represent all the AWMN community are the loosely managed CONFINE funds (420K-500K €).


Many members of the Community want to create a new WiND and put together another Hostmaster TEAM. Many members of the Community want to return the control of the not-for-profit called AWMN back to the Community. Other members of the Community want to create another "not-for-profit" organization. All the above, believe that the ones who control the not-for-profit organization hold back the AWMN Community.

I believe that if we restore Transparency and Democracy in our internet we can do great things.

Pictures from AWMN Backbone Nodes


AWMN search --custom google

An AWMN search engine --a custom google --
that I put together to help me find AWMN related stuff in the Internetz.

You can add it to your browser here and here
or add the AWMN mozilla plugin if you are using firefox.


post-up - Run command after bringing the interface up.

A quick note on post-up.

post-up is a command that may be used to run programs after an interface is up and it may be put in the interfaces file ( /etc/network/interfaces )

post is useful in bringing up firewalls, setup tunnels and custom routing and it is usually put at the bottom of the interface stanza.

auto eth3
iface eth3 inet static

post-up /etc/network/if-up.d/bif.sh
post-up /etc/network/if-up.d/all-routes-except-10.sh
post-up /etc/network/if-up.d/sixxs-ipv6.sh
post-up /etc/network/if-up.d/ipv6fw.sh 

where post-up brings up a bif firewall , sets funny custom routing for AWMN with my exception :) sets an IPv6 tunnel and an IPv6 firewall


iptables port forwarding ... torrent tracker connectable

Port forwarding on a linux firewall so you seem connectable to an Internet torrent tracker.

# iptables -t nat -A PREROUTING -i eth3 -p tcp -d --dport 51413 -j DNAT --to-destination

where is your Internet Address
and the socket used by your torrent client / client-daemon



Backup and Restore Thunderbird - Linux

Backup and Restore Thunderbird Profiles and Mail in Linux Based Systems The Profile and Locally Saved Mailboxes are usually in a hidden directory within the user home directory.
$ ls -la ~ |grep -i thunder
lrwxrwxrwx   1 o    o        20 2011-05-01 21:54 .mozilla-thunderbird -> /home/g/.thunderbird
drwx------   5 o    o      4096 2013-01-26 03:10 .thunderbird

.mozilla-thunderbird is just a link, I need the .thunderbird directory

Let 's see how big it is
$ du -h --max-depth=1 .thunderbird/
28K .thunderbird/signature
341M .thunderbird/o-mailbox
3.1G .thunderbird/bi6vfzcd.default
3.4G .thunderbird/
Too big, I better create a compressed archive

Create the compressed archive
$ tar czvf thunderbird.`date +%s`.backup.tar.gz ~/.thunderbird

Wait ... done!

$ du -h thunderbird.1*
1.6G thunderbird.1395816237.backup.tar.gz
OK compression and relatively fast ... I will save the archive to another medium for backup and the copy it to another GNU-Linux System to test the Restore Process In my case the 'from' system is a ubuntu 10.4 with thunderbird 3.1.15 and the 'to' system is a Debian wheezy with thunderbird 24.

I do not have any email settings in the debian system so I will just replace the .thunderbird directory with the one in my archive
$tar xzvf thunderbird.1395816237.backup.tar.gz;mv thunderbird.1395816237.backup.tar.gz .thunderbird
IT DID NOT WORK ... searching for thunderbird 3.1.15 ( http://ipduh.com/search/?q=download%20thunderbird%203.1.15 ) click on Security http://www.mozilla.org/security/announce/2011/mfsa2011-40.html a few minor security issues we know off not in the mozilla site ... I better get it off the Ubuntu System than some other site ...

In the Ubuntu System thunderbird 3.1.15 is at /usr/lib/thunderbird-3.1.15

In the Debian System
# rm /opt/thunderbird/ -r
# mv thunderbird-3.1.15/ /opt/
# rm /usr/bin/thunderbird
# ln -s /opt/thunderbird-3.1.15/thunderbird /usr/bin/thunderbird


debian on ss4000

Notes on installing Debian on an Intel ss4000-E arm NAS

A DL10 to DB9 (fe)male cable is needed.
A DL10 connector, a DB female or male connector depending on how you want to do it and a ribbon cable, actually three wires should be enough.

DL-10       DB9 Male
3     <->   2  RxD
5     <->   3  TxD
9     <->   5  GND

If you want to use a USB to serial adapter you may want to use a DB9 Female connector and switch 3 TxD with 2 RxD

During the installation I will take the new OS image files from an HTTP server in my network.
The squeeze arm iop32x network-console initrd.gz and zImage will be at

Thanks to patience and the Internetz I found out that the wheezy images do not work on my ss4000-e and finally got a squeeze image found at http://ftp.nl.debian.org/debian/dists/squeeze/main/installer-armel/current/images/iop32x/network-console/ss4000e/ to work.

Get initrd.gz and zImage from there and put them in an HTTP server in your LAN.
Alternatively you may put them in the ss4000 flash through the serial interface, it should be slower.

Install minicom or cu
# apt-get install minicom

I am using a USB to serial converter based on the PL2303 Prolific chip
# lsusb |grep PL
Bus 004 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port

that gives me a serial at /dev/ttyUSB0
# dmesg |tail -5
[457618.284273] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[457618.284281] usb 4-1: Product: USB-Serial Controller
[457618.284288] usb 4-1: Manufacturer: Prolific Technology Inc.
[457618.286317] pl2303 4-1:1.0: pl2303 converter detected
[457618.298540] usb 4-1: pl2303 converter now attached to ttyUSB0

Setup minicom ( If using a USB to serial converter )
# minicom -o -s
Choose 'Serial port setup'
Set A - Serial Device to '/dev/ttyUSB0'
Set F - Hardware Flow Control to 'No'
( E - Bps/Par/Bits should be by default set to `115200 8N1` which is fine )
Hit Enter
Select 'Save setup as ...' -> 'ss4K1'

Connect the cable from the es4000 to the serial or USB2serial converter and fireup a session
# minicom -o ss4K1

Power ON the ss4000 and hit Control-C to enter RedBoot
You have one second to hit Control-C, if you miss it, power cycle the ss4000 and try again.

Switch the bootloader to RAM mode and hit Ctrl-C to interrupt the RAM reboot.
RedBoot> fis load rammode
RedBoot> g
+Ethernet eth0: MAC address 00:0e:0c:e9:5c:42
IP:, Gateway:
Default server:, DNS server IP:

EM-7210 (RAM mode) 2005-12-22
== Executing boot script in 1.000 seconds - enter ^C to abort

Set up networking ( I had to use /24 masks because I could not set up other masks in Redboot )
RedBoot> ip_address -l -h
Test Networking
RedBoot> ping -i -h
Network PING - from to
PING - received 10 of 10 expected

RedBoot> load -v -r -b 0x01800000 -m http /ss4k/initrd.gz                                                                                   
Raw file loaded 0x01800000-0x01d144ec, assumed entry at 0x01800000                                                                          

RedBoot> load -v -r -b 0x01008000 -m http /ss4k/zImage                                                                                      
Raw file loaded 0x01008000-0x01164df7, assumed entry at 0x01008000                                                     

Execute the new Linux kernel
RedBoot>exec -c "console=ttyS0,115200 rw root=/dev/ram mem=256M@0xa0000000" -r 0x01800000

Now the installer starts in the console.

After a few steps you should see something similar to the following
lqqqqqqqqqqqu [!!] Continue installation remotely using SSH tqqqqqqqqqqqk
   x                                                                       x
   x                               Start SSH                               x
   x To continue the installation, please use an SSH client to connect to  x
   x the IP address and log in as the "installer" user. For   x
   x example:                                                              x
   x                                                                       x
   x    ssh installer@                                         x
   x                                                                       x
   x The fingerprint of this SSH server's host key is:                     x
   x b1:4e:bc:b4:c1:d5:7b:10:6a:84:c4:b1:44:95:6a:4a                       x
   x                                                                       x
   x Please check this carefully against the fingerprint reported by your  x
   x SSH client.                                                           x
   x                                                                       x
   x                                                             x
   x                                                                       x

ssh into with user installer and password install and continue the installation

Set a caching nameserver and an Internet Gateway at

Choose a network mirror and continue the installation

Set RedBoot to boot the new debian system

Reboot and hit Control-C to enter RedBoot
RedBoot> fconfig boot_script_data
.. fis load ramdisk.gz
.. fis load zImage
.. exec
Enter script, terminate with empty line
>> fis load -b 0x01800000 ramdisk.gz
>> fis load -b 0x01008000 zImage
>> exec -c "console=ttyS0,115200 rw root=/dev/ram mem=256M@0xa0000000" -r 0x01800000
Update RedBoot non-volatile configuration - continue (y/n)? y
... Unlock from 0xf1fc0000-0xf1fc1000: .
... Erase from 0xf1fc0000-0xf1fc1000: .
... Program from 0x0ffd2000-0x0ffd3000 at 0xf1fc0000: .
... Lock from 0xf1fc0000-0xf1fc1000: .

wait ...
Debian GNU/Linux 6.0 unassigned-hostname ttyS0

unassigned-hostname login: root
Linux unassigned-hostname 2.6.32-5-iop32x #1 Tue Sep 24 05:31:45 UTC 2013 armv5tel

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.


Setup network,hostname, etc ...

Check out specs
# cat /proc/cpuinfo
Processor : XScale-80219 rev 0 (v5l)
BogoMIPS : 398.95
Features : swp half thumb fastmult edsp 
CPU implementer : 0x69
CPU architecture: 5TE
CPU variant : 0x0
CPU part : 0x2e2
CPU revision : 0

Hardware : Lanner EM7210
Revision : 0000
Serial  : 0000000000000000

Lucky me, I found a 512MB DDR PC400 stick.
Install it and reboot to enter RedBoot to change the installation script
== Executing boot script in 1.000 seconds - enter ^C to abort
RedBoot> fconfig boot_script_data
.. fis load -b 0x01800000 ramdisk.gz
.. fis load -b 0x01008000 zImage
.. exec -c "console=ttyS0,115200 rw root=/dev/ram mem=256M@0xa0000000" -r 0x01800000
Enter script, terminate with empty line
>> fis load -b 0x01800000 ramdisk.gz
>> fis load -b 0x01008000 zImage
>> exec -c "console=ttyS0,115200 rw root=/dev/ram mem=512M@0xa0000000" -r 0x01800000
Update RedBoot non-volatile configuration - continue (y/n)? y
... Unlock from 0xf1fc0000-0xf1fc1000: .
... Erase from 0xf1fc0000-0xf1fc1000: .
... Program from 0x1ffd2000-0x1ffd3000 at 0xf1fc0000: .
... Lock from 0xf1fc0000-0xf1fc1000: .
RedBoot> reset

root@theano:~# free
             total       used       free     shared    buffers     cached
Mem:        516144      29680     486464          0       1996      16832
-/+ buffers/cache:      10852     505292
Swap:       749560          0     749560


Links :
http://ftp.nl.debian.org/debian/dists/squeeze/main/installer-armel/current/images/iop32x/network-console/ss4000e/ http://d-i.debian.org/daily-images/armel/daily/iop32x/network-console/ss4000e


openwrt hybrid caching DNS

A quick post on how to setup an AWMN-Internet hybrid caching DNS server on OpenWrt.

Install with opkg if you are using some relatively new version of OpenWrt.
# opkg install bind-server

Adjust your /etc/bind/named.conf
# cat /etc/bind/named.conf
options {
 directory "/etc/bind";
 forwarders {;; };
 listen-on {;; };
 allow-query-on { any; };
 allow-query { any; };
 allow-recursion { any; };
 auth-nxdomain no;    # conform to RFC1035

zone "localhost" {
 type master;
 file "/etc/bind/db.local";

zone "127.in-addr.arpa" {
 type master;
 file "/etc/bind/db.127";

zone "0.in-addr.arpa" {
 type master;
 file "/etc/bind/db.0";

zone "255.in-addr.arpa" {
 type master;
 file "/etc/bind/db.255";

zone "awmn" {
 type forward;
 forwarders {;;;

zone "10.in-addr.arpa" {
 type forward;
 forwarders {;;;

zone "ewn" {
 type forward;
 forwarders {;;

zone "mswn" {
 type forward;
 forwarders {;;

zone "cywn" {
 type forward;
 forwarders {;

zone "iwmn" {
 type forward;
 forwarders {;

zone "pwmn" {
 type forward;
 forwarders {;;;;

zone "wana" {
 type forward;
 forwarders {;;

zone "her.wn" {
 type forward;
 forwarders {;;

Restart Bind
# /etc/init.d/named restart

Put it in your /etc/resolv.conf
# echo "nameserver" > /etc/resolv.conf

Done! is the caching DNS server of a large Greek ISP.

You may add more forwarders in options from this public DNS servers list

Replace and add IP addresses to listen-on accordingly.

Do not add AWMN-Internet hybrid DNS servers to the forwarders in options.