diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..9ae342b --- /dev/null +++ b/.travis.yml @@ -0,0 +1,10 @@ +language: python +python: "3.4" +before_install: + - sudo apt-get install iputils-ping checkinstall + - wget https://www.linuxlounge.net/~martin/icvpn/nmap_6.47-1_amd64.deb + - sudo dpkg -i nmap_6.47-1_amd64.deb +install: + - pip install -r .travis_requirements.txt +script: + - sudo bash -c "source ~/virtualenv/python3.4/bin/activate && scripts/check -s ./hosts/" diff --git a/.travis_requirements.txt b/.travis_requirements.txt new file mode 100644 index 0000000..e33c53f --- /dev/null +++ b/.travis_requirements.txt @@ -0,0 +1 @@ +python-nmap diff --git a/README.md b/README.md index 40e50e0..7849425 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,75 @@ -This repository holds IC-VPN keys and configuration. +[](https://travis-ci.org/freifunk/icvpn) + +This repository contains the tinc hosts for ICVPN-Peers and several helper scripts. + +## Setup + +This network requires the use of the Tinc VPN Daemon. You should use at least version 1.0.24 or higher, also the +current pre-release version 1.1pre11 seems to work just fine. + +### Clone the repository + # cd /etc/tinc/ + # git clone https://github.com/freifunk/icvpn.git + # cd icvpn + # cp scripts/post-merge .git/hooks/ + +### Create your tinc configuration + +Open your favorite editor and create the /etc/tinc/icvpn/tinc.conf. + + Name=entenhausen1 + Mode=switch +More options can be found through + + # man tinc.conf +Afterwards create a keypair with tincd. + + # tincd -n icvpn -K +Hint: In version 1.1 this option was moved to the tinc binary and is called <code>generate-rsa-keys</code>. + +### Execute post-merge hook +This step is necessary to populate your new configuration with infos about the metanodes. + + # ./git/hooks/post-merge + +### Set up a cronjob to update the repository in regular intervals. + + # crontab -e +and insert for example + + @daily cd /etc/tinc/icvpn/; git pull > /dev/null + +## What are meta nodes? + +Tinc has a ConnectTo configuration option that describes which peers on startup to connect *and* sync metadata to. + +Until now (2015/4) we had roughly 74 nodes, and every node connected to each other (full mesh). Tinc however +does not scale this way, because on each connect and disconnect all ConnectTo-lines are being notified of this +and then notify their neighbours again. Many smaller nodes seemingly could not handle the amount of metadata generated +by this which resulted in TCP Zero Windows. They then disconnected, and reconnected, producing more metadata in +the process, which was followed by even larger nodes queueing up metadata, which resulted in all nodes taking +a massive cpu and memory hit. Memory usage of up to 1.5GB was spotted, accumulated in less than 12 hours. + +However for tinc to build its network graph it is sufficient, if all nodes only exchange metadata at a few nodes, +which results in much less strain on the whole network. This is why we now use meta nodes, which are defined in +the `./metanodes` file. + +Criteria for the selection of meta nodes are: + +1. autonomous system diversity +2. community diversity +3. ample resources (cpu, memory, traffic) + +When data needs to be transferd between two nodes, this will happen indepently of those meta nodes. Through the shared +network graph a direct transfer is possible and will be tried: at first via UDP, then via TCP, then indirectly. While +indirect routing is possible the meta nodes are not required to provide forwarding for those packets. + +## Contact + +The maintainers can be reached at +- [icvpn@lists.funkfeuer.at](mailto:icvpn@lists.funkfeuer.at) +- [irc.hackint.org #icvpn](irc://irc.hackint.org/icvpn) + +We have set up IRC notifications for all repositories concerning the icvpn network. -For more Info see http://wiki.freifunk.net/IC-VPN diff --git a/hosts/Treuenbrietzen b/hosts/Treuenbrietzen deleted file mode 100644 index 3bc18a0..0000000 --- a/hosts/Treuenbrietzen +++ /dev/null @@ -1,6 +0,0 @@ -#Address = shonyt.mine.nu ------BEGIN RSA PUBLIC KEY----- -MIGJAoGBANbR3LhhWFNt9ak//ZTReEuNQHjibgTAM+cNTDwLevudrP3y9htxTzgF -UZDHnkbDqwrYNjnuaMLIik7ljj5aKQd+fXmv3S+sFvvaPnm+e7Fpt+r/ReTnS6su -iOdmQ7XgC/b6r5ISjGhSheHcVSNMmbDWwYISSpDTu9S5qcUAkp1jAgMBAAE= ------END RSA PUBLIC KEY----- diff --git a/hosts/amsterdam1 b/hosts/amsterdam1 new file mode 100644 index 0000000..a152aa4 --- /dev/null +++ b/hosts/amsterdam1 @@ -0,0 +1,9 @@ +address = 195.169.146.33 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuksyHS3OGQUUS7hVItJZGHK/RDeOzuSyqmi7jbVv+0/IfRLU/mt+ +kz/wMz2O/UDxyR84wmrLTVdt8TYnOaFBrlNdMGz3k2HjbZc0UxZpKxHMYR4US6Ab +vLApHSxXK44c16wcWDhQB9yHqM3GdMTdbxuKV60qclulHuI9wHkxDtn1qb1dEkbv +2rF2ldfZnNCZ7ktQ1Pnnkv9lOhT1WK8Ye2Sbl+V7klK7leRfE/eTM5e1KP4Zlf62 +iecoBCzFKCAk3Zw88Sv9IlkVG1ZgO8rdZPH7Bb461XH4W0gO9BANg2/SnW0Hlnyp +Ye2Bh+oGwQTlxjxN44nKOcornozC8kZUuwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/augsburg1 b/hosts/augsburg1 index 3550946..2645f91 100644 --- a/hosts/augsburg1 +++ b/hosts/augsburg1 @@ -1,5 +1,4 @@ Address = augsburg1.icvpn.augsburg.freifunk.net -Address = 109.163.229.249 -----BEGIN RSA PUBLIC KEY----- MIGJAoGBALVQaY0axASCewZdfMPbxUBwphhoDHKzm0SvpietNy0gy+43Jb+N/Cs+ d9l9HlAS2ngrCAahVm/GRA3iYHH2i5JdZnzxPFKdkefcZFz7x0ZDaqeqpb2YLWFs diff --git a/hosts/augsburg2 b/hosts/augsburg2 index ea73a25..4e71c79 100644 --- a/hosts/augsburg2 +++ b/hosts/augsburg2 @@ -1,4 +1,4 @@ -Address = augsburg2.icvpn.augsburg.freifunk.net +# Address = augsburg2.icvpn.augsburg.freifunk.net Address = augsburg2.icvpn.freifunk-augsburg.de -----BEGIN RSA PUBLIC KEY----- diff --git a/hosts/badzwischenhahn1 b/hosts/badzwischenhahn1 deleted file mode 100644 index b5ae63c..0000000 --- a/hosts/badzwischenhahn1 +++ /dev/null @@ -1,7 +0,0 @@ -#Address = ffbz.ath.cx -#Port = 655 ------BEGIN RSA PUBLIC KEY----- -MIGJAoGBAMlCF8Yj3adfH6Mssc7J59CMIzO4ZTa4meHXDaGWHXzGIMnUWRUlLIfp -7sa/uJ4U9iQU3ZEwv1cPWweDvWrG1HNL+oJEVv7xQWcBXaYnm0le305qom0E0U5U -cMt+yNZWTh2KfgJjGB78FuOas1yiGpVPnV2wAGgzREKgmiXTOzZnAgMBAAE= ------END RSA PUBLIC KEY----- diff --git a/hosts/bayreuth1 b/hosts/bayreuth1 index 8930844..dd3c88f 100644 --- a/hosts/bayreuth1 +++ b/hosts/bayreuth1 @@ -1,4 +1,4 @@ -Address = freifunk-bt.criede.de +# Address = freifunk-bt.criede.de -----BEGIN RSA PUBLIC KEY----- MIIBCgKCAQEAppgeP431r3K4cgy9s1XUB/+SEb9F64Y9q34jxjwRssIaFx+mtukr JDLFtRNNTi7ao+kL3s1OBhavCeKwYSFAlaQnIm7fLwKwhJiIZwnKVM26SJPUwPfP diff --git a/hosts/bielefeld2 b/hosts/bielefeld2 deleted file mode 100644 index af6ab59..0000000 --- a/hosts/bielefeld2 +++ /dev/null @@ -1,10 +0,0 @@ -Address = vpn2.freifunk-bielefeld.de - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAuNUlmNeftDUvk7FAJFvX7XwI9CYnEpdU7TD3waeE6ZbU1mSW0d+n -9MUArA1iprh9UlPchGrkluIV6lX1XaVYzeXy4HVtf5nLUBssCnbBN8T1PE2qD0rS -pYKQEc/C1fuGLx07uzKHpz9PufOZQrmiRzoAciZBRZ0y16wtkO5aKV+cHawnnaP2 -rzKeNIKq+XvusalDf0gftr0znivFeHZk7C2XzZ27HjJGcZM8k/xtMiCfMVo6NpZX -s9hkCrbT6vKtTVWCdAMcZAk0taF8eTPxkRoMMADExeXcoQXIxazvfdV0z+ou/2it -5X3PohGtF70ZoT98OT2s3xETCea1JyOyDQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/bielefeld4 b/hosts/bielefeld4 new file mode 100644 index 0000000..1a60112 --- /dev/null +++ b/hosts/bielefeld4 @@ -0,0 +1,12 @@ +Address = vpn4.freifunk-bielefeld.de +Port = 655 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvOJHnI0VCn4ZOVitzitHPHpxHesW4TYf7QafYU6ClQy/Sy9WN5Eg +lrfszpwZmzABnJZ7T7BQN8j91neKwzj10qr6ppLCDavP0nqQ0CJ+Bg7SCc6HJbsQ +aDTU1lvNcGKKPD+KchSNxUkOBZjZavVw01taztEnYy6hUy/ml8vdLTUjBBPMUQ0+ +rTe5m/rjPim5J4Eo56kRoJ2TQ3bRNZwTAgV07NAosO5V1qUncPoYsMmS6RrbBVxj +q7UOEyegBrsFF0F5tdK/itvZIWD2T/0DlDUqoPmfh2j+urbzYwAw9VBc1+4DByfS +Unn0cQ8AccXTDtMWQVOrLxIhm0JCmiDi6wIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/hosts/bremen1 b/hosts/bremen1 index 25b6df6..31916c3 100644 --- a/hosts/bremen1 +++ b/hosts/bremen1 @@ -1,12 +1,11 @@ Address = vpn01.bremen.freifunk.net Port = 656 ------BEGIN PUBLIC KEY----- -MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy2FfayKB0nuggl/B9Lff -lLAWf92KPDtmJt6un1nRylX99n1yTatnnzW9r4dv7oDKJVEGxOe9d17CIg0l/lQQ -UDC0sBJmB+JLQE8INHASQPcRbQVvlRrq+jVSUbpezA8H4W/FDc0kyERJG4zHAW4b -Om0c8ndFZBU2eMXTyaeFZ5gi6AETZ+GAOt3BGP3lhzVMIotnSf5Mm1q5EOejjlND -dsz3Fsn3ScWgVeUCjwWK1xs/jg5+pa90he/eqO+DmihxDA0006YBnQcA0kiprjK2 -k6Jo8J1KWD8G3m0XvWOu9z15WAKvkNSw96h28eGefsgQP+XEpEE9aWGcbuj88ycK -dwIDAQAB ------END PUBLIC KEY----- +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAr7aAgyRdDjTjJyUhHaPd8aZIybNvi+paDKwkRJFUEHybsSsZs8pl +mJl+wFFn3sW3y6R7th1iVSqHDU85KYpy7CemKcHRo0VVl0OayToKQGUc9wuUkjM2 +XIpZ6WxJ2+B918780dFA5esdeigSTXnKABt80wllLmBumiumj6fGQnzXOFMfyWSI +TlpW77EQqZY3uXGlZjbzmCbzmspbldHZKwUBr1f8GW6pdeMzEeptg/5nVLLu0rG+ +o+rXQuU2GxJXd6OwrIWEzLCpxbRNqZ6Xo2o1U4Mc3vrKv7yQ61xY/hYB7BLU89Dz +tTNXWxy4cm/xYdxmCBStzWGwNRndqNY7fwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/bremen3 b/hosts/bremen3 new file mode 100644 index 0000000..c9c4369 --- /dev/null +++ b/hosts/bremen3 @@ -0,0 +1,11 @@ +Address = vpn03.bremen.freifunk.net +Port = 656 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAxWLy8tG8W3nV3o7fsm/oD+XwFW2qgGNRDRDiTPGmBNrHVGVCH8cI +s2Gpeu226x803dukxmrKXZskLBf5oCWxtI5wrxhkiIrb21RkODrMzQcKvOJ3pOGk +7GekS8WvhxuMAJEKnWiJIS9T3kcGUTMIETSvlWeG/SWkpVr2oFjD87LX+WDCOW/d +arHyu8xH4XpVaDeKwUHlDz3/QQjI4bOa2UvqmebkdkhX/uWd/hNTdpzUYwghPtPx +VNlKqeh+NSibYuep/VSoxFx8UHFu083nB2gNTF+b4apjB/4d2iFUMM/Mpgi+lYQ1 +8ksoTu8C3e8KFhp4oP3GLlRuQ2QY+o4RpQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/castrop1 b/hosts/castrop1 deleted file mode 100644 index b2e0df1..0000000 --- a/hosts/castrop1 +++ /dev/null @@ -1,10 +0,0 @@ -#Address = ffcas.no-ip.info ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAr1d6XRKMLgt853J8qxguOb017hjVSB4LNWKiLEXk1K5B4sPBP3Sj -6/3PjI38dbZsmWqOV6azMmqTeBjBKt1Ii02sfrIB0hc3JuwcCeLLrPtmxUWCIXon -pA0gv1mstM5BY4HLgfH9h9iwtTQ80k3BaTz5/Wcn3i3tRm/MLeXKNIRbIYLGxmyQ -aSE4QJCnWPXxW+FoKRY6u4jAmYeVi+OyF3Hg9HnVvsBV3AeQ4Ptb90Pkr76udN4D -W5rEIJelvAT2bMGlCZgowtCEgEAVqI2YHujndHemsUv/ApYR1xwKWRB/df9O8Fpr -HqdYAjpMtYoGfBj0UhulKZtHpM06LGDZNQIDAQAB ------END RSA PUBLIC KEY----- - diff --git a/hosts/darmstadt1 b/hosts/darmstadt1 index a0d26c8..813f3c5 100644 --- a/hosts/darmstadt1 +++ b/hosts/darmstadt1 @@ -1,4 +1,4 @@ -Address = gw01.icvpn.darmstadt.freifunk.net +Address = ip4.gw03.darmstadt.freifunk.net -----BEGIN RSA PUBLIC KEY----- MIICCgKCAgEAsFBR3wzdRoFXDy38HQtlYDKHvsbY99fUkPZXxg5v3dBGIfWDWMBR diff --git a/hosts/darmstadt2 b/hosts/darmstadt2 index 80e3f39..535dcf9 100644 --- a/hosts/darmstadt2 +++ b/hosts/darmstadt2 @@ -1,4 +1,4 @@ -Address = gw02.icvpn.darmstadt.freifunk.net +Address = gw04.darmstadt.freifunk.net -----BEGIN RSA PUBLIC KEY----- MIIBCgKCAQEAuohUruR8enzVN1IswdzMuf8f3rY2HOK/yByItBcMHM9b4HMe6Jt6 diff --git a/hosts/diepholz1 b/hosts/diepholz1 new file mode 100644 index 0000000..10547c2 --- /dev/null +++ b/hosts/diepholz1 @@ -0,0 +1,10 @@ +Address = gw1.freifunk-dh.de +Port = 655 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3SOeCXMYhCyoBXd4LhJDEdq8afDcdT2+kX+8Cnv5HHMWfKv0PodZ +1zwPl04D3e7MJ+F73YXOIV6zAdEpwXMW6h15qg3r5vL+ZPKY/ywYnb3c1CIOe2C8 +2rJoo9ynjJJt3rbrSc2qOkKFcEfSZWPn2cs9IiaX/tgZaPwpc/KDjPQ5kQ9AwVJk +2jMhuBHQClPUw/szHwkultrkRehQ7+H/lq7VMXdxfBHBh6Vtk6KX6N8S7NXYcKbG +Gk52yzLnlmGLxqJbPBBg68o54EEPsS9HUe4oKRkhYoHduQu3OTL4oFZTTXqVmaxB +JSXyXDFbJPMPNoSsC2F2D9bfPswIfH/efQIDAQAB +-----END RSA PUBLIC KEY----- \ No newline at end of file diff --git a/hosts/ehingen1 b/hosts/ehingen1 deleted file mode 100644 index 3c7d3ae..0000000 --- a/hosts/ehingen1 +++ /dev/null @@ -1,11 +0,0 @@ -Address = gw01.freifunk-ehingen.de -Port = 656 - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAz1zcs2ZgiZRLVXQyqYXKD3+dx7imqN/cmJ6CYoSfxjesslWaS+qG -29YH+U7qXSDgRyjVtdXdVHIa9dYSKff292H7yzX3LbHPsUEeq5kAAqqieTIsRYoI -6QeUTYkfSuvkqmAe1zUmC5fcf8BRSu2YUHSWhM5Lu9ulWzXuKYoipnXgqQzVz67w -3DnYEx/DEAxn4LKagOpUq+l9OzChOtMWeW1/MSCaEhm7VLYaY9YITdhb5U61PB7F -fdv/77AhRBjL6zfNX6M9ZookKukAz3KHme5EzDYXVA4CiyBN+HMzgCYHbqopOiVZ -BGjNAeO8FjAkBwn5Os608LOSocOEVz9KDwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/erfurt2 b/hosts/erfurt2 new file mode 100644 index 0000000..06a2a65 --- /dev/null +++ b/hosts/erfurt2 @@ -0,0 +1,11 @@ +Address = ffef.securegate.eu +Port = 656 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0R+JEwwaxHJZsTlxTjpwDIjrSvbG6yCkeGO/zablrIdnoctZHgNQ +vcDvuSWeTThBvk7FVuOkgVbpcqTnDNzBNetV1SzpnQTG3yWJcADZtkt7oyEhkvV0 ++fJN4eALaOJT1d1PVROcLyCVjBIP5m+d9rImLRQK0tzQnLWofuqDLxzYm8UjK2Df +hZ4cHQNi0r8EPzQPzLjcz3YmYO6iJ1s27F6iXd16uBCoAX2y4QdSauHQiijah5bf +laM3ZD8ry9Sgrxngz169ybp3yB7l37IPWhVRHy+OISY4z2G5IMEnwkeS+P8eM36X +ZG//Jc/joqqHszKLUAL1zpfNVqygHs06fwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/ffhallevpn1 b/hosts/ffhallevpn1 index 56f0b31..2d3728f 100644 --- a/hosts/ffhallevpn1 +++ b/hosts/ffhallevpn1 @@ -1,5 +1,5 @@ Address = vpn1.freifunk-halle.de -Address = 88.198.51.136 +# Address = 88.198.51.136 Port = 655 -----BEGIN RSA PUBLIC KEY----- MIGJAoGBALF/Wu4pe+f3dHeLYApHxUnOGUBzpNREUet6nDp80uWT/dph7h6Yqtz2 diff --git a/hosts/flensburg1 b/hosts/flensburg1 deleted file mode 100644 index 49f9fe1..0000000 --- a/hosts/flensburg1 +++ /dev/null @@ -1,10 +0,0 @@ -Address = fl1.icvpn.freifunk-flensburg.de -Port = 656 ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAv9Ow8Vkxo03MaYxxpdjQ1/tce2BgyON3+HkHd7/s90wovB6kkFpY -jL+c6nqN8kIBPhAw4Ibz6HmwUm6GIgappkwI2B81TTfrF2k4LR0NX+Nbyw2UqpnF -mt4O4ZRDBoRPRJxyXHgxLox0/VqEH+F044nO5DVaCJihlDDVnmjqvdvazBLjsTrX -d08gPKkyD/VdUMaX6d5eZOfxzRiPYMpZE0rWMzQc+n1kvw1DXfk/jhawqf4ZpaH3 -TD/DGzeuXnDjL2IxMYXHABdfZUug2r7eoP38UM7jVop32SVXQO95gBDs5hTzp9Wh -JdSYnxO3HgIRb+0g3a7Aq9KBBlQ6xCfZjwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/franken2 b/hosts/franken2 index 8767bcb..7a64878 100644 --- a/hosts/franken2 +++ b/hosts/franken2 @@ -1,5 +1,5 @@ -Address = gw2.fffranken.de -Port = 656 +# Address = gw2.fffranken.de +# Port = 656 -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAOvt5phPFC+/KUvmGWJdNfIoPWuHfJb0na25VteGQDUMn0krudoIJQFb snELlAl5emnNbH7W5NWGKfjl7fMRC8RJ7r9eb1/jjsRlDK6aRnN8hHzcCa45PCeI diff --git a/hosts/franken3 b/hosts/franken3 index 2b22447..00c11e8 100644 --- a/hosts/franken3 +++ b/hosts/franken3 @@ -1,5 +1,5 @@ -Address = vpn3.fffranken.de -Port = 657 +# Address = vpn3.fffranken.de +# Port = 657 -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAPIkkqmdnJi3Y+cGKslf0t+swE+7rtfRQTStW29MP62L6Sn0lxb5MufU LRtR0UW31SWQ03HGuUe51e16ppxZ3V1AFQvoLAwxwDD6VvBk4n+XEiupWPt+0XSd diff --git a/hosts/Frankfurt1 b/hosts/frankfurt1 similarity index 100% rename from hosts/Frankfurt1 rename to hosts/frankfurt1 diff --git a/hosts/freiburg1 b/hosts/freiburg1 index e352511..d88b910 100644 --- a/hosts/freiburg1 +++ b/hosts/freiburg1 @@ -1,4 +1,4 @@ -Address = port-87-193-156-225.static.qsc.de +# Address = port-87-193-156-225.static.qsc.de -----BEGIN RSA PUBLIC KEY----- MIGJAoGBALo3VfMiPxK5lxWOYqoCZavMp8Lo4HYTmhLR6w3dHDJTI+UKTNDOf3Tc reO0q+K85uopAtuu9yEshMxapvmijmEO9YsD+XinLNvnwNxx7qSaVQrPFTa4MutK diff --git a/hosts/gera_greiz1 b/hosts/gera_greiz1 new file mode 100644 index 0000000..cb4c04e --- /dev/null +++ b/hosts/gera_greiz1 @@ -0,0 +1,11 @@ +Address = gw1.freifunk-gera-greiz.de +Port = 10781 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEArLhMleQyfCgADO1vPEHK1hTJ8ZW/NljeiFsZcvTHCRKnnfF0AP1S +XfcviGlQCV3sfhXLdKABe0QZiLeHwbJY2R/n0PJxG/UxfscAKH+vRCa6qA4PqVI7 +CLShMe+E/S66UPvYzYYwBpfLBFYlaMzSz+IhvhiRwoCWgk/0+YfPJt85mFSUHNxN +XGiBLJBSRGnGi9BFSw+GbrN86lmknV/fnL4uypFw94TJYF0Q7TexgP7aRtFSOciH +2tDCbzzJh7lmw4XE1Wtz7QWUP/R34zqlOELXlmoilbkTO71y4qlCeTHmaWDOG9/f +VScV3K/v1mrofNlK35GJzfcOp9ueijIbZwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/gueterslohbgp2 b/hosts/gueterslohbgp2 index 5b1fae6..a508444 100644 --- a/hosts/gueterslohbgp2 +++ b/hosts/gueterslohbgp2 @@ -1,10 +1,10 @@ Address = bgp2.guetersloh.freifunk.net -----BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAx3TChQ0jKU/VZOJAnAxFk8IGLowzvhmtAVZrli6JjXp2hyGS0hrC -ZS/aZzQhpqeEmAVgqUJSOicIVT2hwyieyZXEM+fPgfEmD04ZDVjSFpjEPdJCp5iC -rFU8saEg2c/MBnKAOl6YwjYUCADpjGpFrIvgGIv70OnFRzToQDAOZoW06Ka7OPnk -XBAtpzamQpfKjjER5OPkRvj9Ne8KcUHo1vkJO/X4BkuFSOA2HQHYXdLKfPxcBijv -XI+9imHtVCZzvU45XkUpOZ8GC8o4z2FszBjsh8skG2DoPckCe8Hz8S+Ajxl1xelG -5wQ3SZ8gEj5NnP+OY/3OjUkJwsG/CAyAYQIDAQAB +MIIBCgKCAQEAwNqFwx5UvkekzqCArb2BBFBqtdRbOsY5WlL58qXPVm6buVqZhy0R +ZZ497YrX82L3K97sFZ/1jFa/YsY9n6E912Zcca5GxY7ln/wrkO8mSfvCq1KCUpv9 +/00cQxTf+AVlHvryWDupxPasO29wb6b5ftd3HXR1lG/eg3YXmXMAFnWr7wYnrFwW +1YP9YW1cJRZw9AjQ7Y1X2ETa4JkcjCjY7R7hVoJFoVqjf5JLBpqGy/swETrQB0Ln +ZpSRSrmfMhf1dIIYnYLoqH9og6ypl6vAqYAOwN9KIFTODK7uXW9ARVyor9I9R4cC +cMtg3bB/QyS+GJDyvYCGJn/ZL6TrSOw7WwIDAQAB -----END RSA PUBLIC KEY----- diff --git a/hosts/halle1 b/hosts/halle1 index e8e04c2..0cb00eb 100644 --- a/hosts/halle1 +++ b/hosts/halle1 @@ -1,4 +1,4 @@ -Address = ffvpn.3dfxatwork.de +# Address = ffvpn.3dfxatwork.de -----BEGIN RSA PUBLIC KEY----- MIIBCgKCAQEAsYzXhlTKxR7YBUXHY0JscmtNbrFzZzviVzIhpuml499rh8TVhjMU ozyjbaPhSUy+9RY4F1WpRmDi3lyDx7eT0viRlOkFG8huApXEgGLQgah0M/pfwkc1 diff --git a/hosts/hamburg01 b/hosts/hamburg01 new file mode 100644 index 0000000..4e6e83d --- /dev/null +++ b/hosts/hamburg01 @@ -0,0 +1,11 @@ +Address = 01.icvpn.hamburg.freifunk.net +Port = 656 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3IbMWLjnM3S4HsFfKvhJdg9TYRPnzxRyL2CaL5KtcCTu8mMMOeCX +arfhaM0l7l/hr2/TrpjDH3NO+lT0mn9cwl1Jlq3bkNXiBghf+tgGJAr29DLm0teB +bvxy5YgL4qbWknNvqDRuLr7IFn0bScd8twN9mLeXzAmRCl43zzLMoYIf1A67Bt3H +pZ6MoIVF9ziw9E4s0cdaRx4S6Ok3h6ochCfoNAUAJhJvodOdjW9++Ffy+LLayBIZ +S21vezhhcb7fJ2qSO6x42Kp3FBaEY8zpOVdtPRX171xTUIv0vxYfRGsaOsT0biQc +EGCG3ch2HiwR7TDe4gpe7XV7+QpUY1dR/wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/hamburg02 b/hosts/hamburg02 index b52d8c1..b282957 100644 --- a/hosts/hamburg02 +++ b/hosts/hamburg02 @@ -1,5 +1,5 @@ -Address = 02.icvpn.hamburg.freifunk.net -Port = 656 +# Address = 02.icvpn.hamburg.freifunk.net +# Port = 656 -----BEGIN RSA PUBLIC KEY----- MIIBCgKCAQEApyg+KLP9XfIwOIgBHjbGgt0l5ve+/O1Mec3ed/d0q6Bh+oTkJxOn diff --git a/hosts/hamburg31 b/hosts/hamburg31 deleted file mode 100644 index 2498972..0000000 --- a/hosts/hamburg31 +++ /dev/null @@ -1,11 +0,0 @@ -Address = 31c3.icvpn.hamburg.freifunk.net -Port = 656 - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAwxJL8dxTEgfM/oSOzZivDL2NxOtplh6yCusY+cbH5u+x1aRWhfbe -ZBv37xYGXQq1Gx+SX9zASsj50AX/XK634+NQWCHVVcBtcB8VDMA3d4WAnDtvvdwA -L/uZQzFuWzi60Y76LZZJXmvICxatHYO+1TUUdHyxnInLjVVFotKsmNRm5T4EwOoj -US414QvjO3Z8Hdmv8N/mA4RsMfJ7udrIbf7Rbne0w+Tfy7qgeYu1knNYcTObSHSe -JXf0byElmtlCXP/B+/gocvCFAXg87JVrVN8OxoZgF6GvH5GYOD/nz63uQ/SXc6P7 -qsIfCa/XW2J5Jgt7DIfjQImjII55udo7DwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/hannover1 b/hosts/hannover1 deleted file mode 100644 index 95a691b..0000000 --- a/hosts/hannover1 +++ /dev/null @@ -1,6 +0,0 @@ -#Address = vpn.hannover.freifunk.net ------BEGIN RSA PUBLIC KEY----- -MIGJAoGBAJsf2VLpTQlglzwBWe2B9RIgTEl4Y2a22Xt0DMPRw2vRc4aLcYh9G9TC -IvlXl87TKILdkZ8jlK9cMmwupAmtoxlRUCDkode1dqZ/Knf+iIOCP3jBPDggKKcR -/8MmS/ao+Ujb9tTuzv8KhVOqAcezKAHh1rVjriVyhCS/PhmZDViZAgMBAAE= ------END RSA PUBLIC KEY----- diff --git a/hosts/karlsruhe2 b/hosts/karlsruhe2 new file mode 100644 index 0000000..59500a6 --- /dev/null +++ b/hosts/karlsruhe2 @@ -0,0 +1,15 @@ +Address = albufer1.ffka.net + +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAv3w8au8y75sWMzfi1sRzOjI/f+7Gak0qqHcGAQGd+TCwF88OgGDk +c7TUQJfUG1FcLSiEMKUSKyokFBU6qbzrnwxsK+/foEGrcde4CKaJ1/q+wxL1lRu0 +/12ZVIvr6rMHugjD7XfRbHaUoH1p6ki1+mpwRiLKgKimYxaKoTTJGzkR5Gkabu59 +J7zq6NhzDl+n4usI16Hd2rCtdvG5txDQJvnQTXS4oaidYMDbOulAK+FmDSwkPIcU +uaGELGD1eMDKR6e/cp3DqTLG54GgmxamL1i44iGwOWfFGC+JfeNEcS/FgOzIhTrR +a8SRnwJ7FnfqaOee0Ktht1iRmuhJQxtrgusi++WII77SC9jH1kZw2bqh60YbQVlh +szNPfbpu/TRiqlduDJDmmJgXDG0J3eSvzLWT1D+qXG5Swk7R04VYLCh/oXHAiHol +l/3D7423tcW51hq316if/9ncfXpKXcdQiEIjmhVt1vi7FQk+1lwmTOKXBAAXnZDb +7zO2aY1p7YncAudL1CP3oQPazWQHW+2XmLvnOL5guBb/3LL/3CltwBUAz6zfm2Pj +YKNiQJG5+YBZaPAIy+y4mhDbh9TIO3Zw0eNt4jinu7486iWstkjj+V8E7fWkTBZd +t2kGBpR5xOVsd8ettZr5pDni9n/e/SJasizsqGjsQnPjWqEUj+wZKn8CAwEAAQ== +-----END RSA PUBLIC KEY----- diff --git a/hosts/kiel3 b/hosts/kiel3 deleted file mode 100644 index 67a2736..0000000 --- a/hosts/kiel3 +++ /dev/null @@ -1,9 +0,0 @@ -Address=vpn3.freifunk.in-kiel.de ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAqDth8oT1QRrt1usUz2qb+QfWCrva67Vup3TOuV1Lf6Zo6veRDOcT -3jCQtQ+BYGAiLgwhrYtJ13oiMlTbpd32ns1dvp5BgaiTWexJuObsC04LVry0kML5 -WyoInGpUD26sqPdXtcs9bAgNzkDCm7cxMtQiu4SGWyNYpfkkIb+4miUKyjnWCrqi -nWTX2KC4MJh7AMWSrk6vX7aYmV/qmHkIXBqhPKe0Ah6rufc8+ZkSATJJxTM78qwD -sOO78I3V6av1+QlaF9wCr5/X/eAD6XUEOJWPuiTflC27mDcihW2NE2YwCIDX8vk0 -Ccuo6OGrjJpZz+ncEjCcFICPpKrL8kYCdwIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/kiel4 b/hosts/kiel4 new file mode 100644 index 0000000..5a98c54 --- /dev/null +++ b/hosts/kiel4 @@ -0,0 +1,11 @@ +Address = vpn4.freifunk.in-kiel.de +Port = 656 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA49H0NRDyDqVy5eJygLHuwLq7VUhrPhyGMhHNcbJ/ZgnwAMkV2wfd +A+fO4ZXZ498rW3jNLvIxpUH81jsQBe4rFkvnTGZQcY2Lu7Q46XGIp4BNPjtUFIeH +1qhSANElylo6sZtu651pj2Lu3oV/9cxPDLrKWFaLSLmCrJoh9gkB4Xk4T0T7RWxG +NyNqdwcCzd+9ITIpRFtcB/pxlO/Ovirvwie+N/aZw8uC52ZOskhI/MSEYzFw+YYR +aWcoc1sAJ935EY7DET0MV/9yuM+hfRQyex3jKkXzykQL8kQ4t1+0dl3VYMiW6lr6 +LeCasMGtby5sVeA/18H+fu+viZ+qc+wn9wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/koblenz1 b/hosts/koblenz1 deleted file mode 100644 index 52e3e23..0000000 --- a/hosts/koblenz1 +++ /dev/null @@ -1,9 +0,0 @@ -#Address=dsserver.homelinux.org ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEAsnls6tKZlZLjmOhjiMTh63GbOaEJ5L3/N4WQPNZN67YOoL0ISECv -QeQ/p/3iRRhN4EG58CxAJ0X8uqpjqP6xLcbBSDfLbAawjFzU7OrKWiCAmHeW5ZTk -5sRc6FlR45x63AkaUxiX8VEjBLdrxr6WlHG7XdJtaSYtSpeCESjtWnD3qSQVl7Zr -CNekrY0TUC4Q0nlmKhNnSISMmJxqvrlGvV+shH2QKSSTOyvOYhl7SwQpJHKfuIOx -9RbWDG4rrcqks/Kx4WBq/hwiUa8cy0tdoZcbrbjt6rzdIgByDQvcNJ0+hjypbW7H -j0nr+4GJ9zRGWvE2KopZ3WHE3SvvBeHynQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/koeln1 b/hosts/koeln1 index 2c6de0e..b695e20 100644 --- a/hosts/koeln1 +++ b/hosts/koeln1 @@ -1,5 +1,5 @@ -Address = fastd3.kbu.freifunk.net -Port = 656 +# Address = fastd3.kbu.freifunk.net +# Port = 656 -----BEGIN RSA PUBLIC KEY----- MIICCgKCAgEAwzH7Z0W0yIDp80G8sHpaxez7GXL3Lql7DAdJkrNf6KEzZAsZ7usn diff --git a/hosts/leipzig1 b/hosts/leipzig1 index 7163162..4f25546 100644 --- a/hosts/leipzig1 +++ b/hosts/leipzig1 @@ -1,4 +1,4 @@ -Address = vpn1.leipzig.freifunk.net +# Address = vpn1.leipzig.freifunk.net -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAKL7eWHmD2Rn6IP7JlSWtkphokN785g8nccBmfcjbwEwiZv+EFaVoid/ 0dPfvHaX0GaQGOhpef3PVHEbIMuU8dD9+7WbXO3+hUSIAfHoIdGK7n8qFtzTpzqn diff --git a/hosts/ljubljana1 b/hosts/ljubljana1 index ef99e59..c8dda7d 100644 --- a/hosts/ljubljana1 +++ b/hosts/ljubljana1 @@ -1,4 +1,4 @@ -address = gw.kiberpipa.net +# address = gw.kiberpipa.net -----BEGIN RSA PUBLIC KEY----- MIGJAoGBAL4X76pBCF0b/z45rFPbgTrKpISle9MbLqvq3tDc2fTERowis0aBTTuK mfVIQkF3W+8JMcjQdez5tQWKHnfpz4PmdSC4Dmxolgk/d9b7HNQTP8MCmCLzf+D7 diff --git a/hosts/ljubljana2 b/hosts/ljubljana2 deleted file mode 100644 index 0a39b02..0000000 --- a/hosts/ljubljana2 +++ /dev/null @@ -1,6 +0,0 @@ -#Address = AS64768.linuxshell.org ------BEGIN RSA PUBLIC KEY----- -MIGJAoGBALVdchpMeSOA0JBBLwMMdX7hVMlLI2nXZ/0+b8R+36chmsajbKjsDa04 -aw/t/YFo7iLFi3AAXj7Tm/8AXkRz6Rf93rplwo91k47Dz4iEwC/kn7kI8wrGyaTY -iVdBNp2InZzDeD621OfJa1nhh5ROI0q8T0P76b29Z6XkYJJpCa9pAgMBAAE= ------END RSA PUBLIC KEY----- diff --git a/hosts/magdeburg2 b/hosts/magdeburg2 index d2de335..6f2b7e9 100644 --- a/hosts/magdeburg2 +++ b/hosts/magdeburg2 @@ -1,5 +1,5 @@ -Address = 2.icvpn.md.freifunk.net -Port = 656 +# Address = 2.icvpn.md.freifunk.net +# Port = 656 -----BEGIN RSA PUBLIC KEY----- MIIBCgKCAQEA6v9HoQhGnAaWsSofuT4gplTOBhzmDz23wdQeWkVKM2tY7WCA1KNO diff --git a/hosts/moehne003 b/hosts/moehne003 new file mode 100644 index 0000000..da668eb --- /dev/null +++ b/hosts/moehne003 @@ -0,0 +1,15 @@ +address = 003.freifunk-moehne.de +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAt9L7wOZhCIIoRZSFE+AiQ6evhH+I7z2duDULC3COb8EorKZzaFse +cTCfaOdZ6+cbraqFOiwAzigSf6CoaE8XdnSsWcowQGfESL+CJopoC3Be8h3Cz7ct +mWz+XmuRl6hHOKqGKxWRxihHQs5zdhF3k/iloWbBqozgKfqqaD8qkeKF32Fn14Ze +UUm7hWQgicyemGGZhBE3dluV9svN/XmAFty2r05y03wnHB37jc9RdegW3TcNSO4m +Y9K/q7pXQiA9TwoSpOEv+tKzWoVPf6Rp2ZXZb64vgl+tBnjvT8URL+EiYDHz0LTa +EuhHuK8pulXOQ5rZ1WmzuQDHBZWVMOLsiAepNd/zMXVpbp5CHpMW0zAbCDwtSdIv +qKODY28jWPvIxKK+7RyVaIehGrtu38zkelLYBaGuDUI6WLPkF8nM1BuJj69e47cF +NccaZah1wDIHk7WCCSUs9vPCb+rsNoDJUMm0/2dYG4dbDKJVCve6aYfEddlOxlTW +7wtjv592H9KGmf7+xMrcOt9Wvc1eDVvSrf6Ld9nv5Myd03YGYJau5JPPoyDVfCnI +MI8OMdNbEggXBSFFvlkU63JLgJGecuzJsVmb1MJjOMTuzOTl3WUvME8mtCdzZA53 +LrQCHKBfQsK4V5MNURxvmMrLytUfEzjjMsP65HCiaEz9GCsNliNvuCcCAwEAAQ== +-----END RSA PUBLIC KEY----- + diff --git a/hosts/moehne103 b/hosts/moehne103 new file mode 100644 index 0000000..a07102e --- /dev/null +++ b/hosts/moehne103 @@ -0,0 +1,15 @@ +address = 103.freifunk-moehne.de +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAzBMf2LQ7pa12n6VwBMUhMlJ0OXq6QYpPjfJpzJM4mnZ5j4oecpuN +Y1WO3FcbMuvU87eVNUUe+qetK1EuneqFadw4vILI5RNFYoWolqHqEDZmO2rLe9QK +T/CGYcLUi0SAOlXhXtPOod6XY+wcYJC8bq/tZDp/kWUbrwPJ+pl/bIAjex8WddaV +REJEayNvbgy5ehQ9+2JYHm1RSPfsz5UXD6hcgcKbQyqZZfvuL/r1WWQ+7gednVR9 +ZQwgenLCVBZRDs5K7rH0oyv3VrY3SYJijoBTuTLcLiso9s7jJn9gsbv3DtyqkRXD +nhxGGFAfpMk1i4lcf40l9xkoCjiajRvcpCHuXUddl1TNVUXUd6KcciRHLLlqM/hr +Od0QzuW3PGvWHqTPinSvtkwIh+7t2LUlDsH1QfB2FOHppYbjci3YpwnLWJUlzuAh +mAJRM+jBiofKlWnJiU3nnncs58+bGgqhBO8b7F2pjoT5j9qqvOzgZnYAN+g+kvWJ +Abq0eWodCcvLmcbiycVP2HzI/A4lhRGjjvfFLRmLO7R6ZO5iXuBoM6W4AKwoxJrw +SBpf04nphfWBsez1QW6YqxxsTEDI1+y43VQmu1DVxhrQwexldRaMNLpyNVDZzZCv +hmPpPDJLfdAlr3ld78aBZHVAB5mCOygPuNHbtxnTc3xMWW+zDVeBQvcCAwEAAQ== +-----END RSA PUBLIC KEY----- + diff --git a/hosts/mueritz_bgp1 b/hosts/mueritz_bgp1 new file mode 100644 index 0000000..dd8b597 --- /dev/null +++ b/hosts/mueritz_bgp1 @@ -0,0 +1,11 @@ +Address = gw05.4830.org +Port = 655 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuizkPDLiPvMxnom5i6RG0ijqT9tKmuAFWdMT8FIPoP+d4x0M+1WF +F8tPZk6Si1t7AX9Cp4ZhPHbbwvSXb/P4Q2VLX2w0A9F67bZQFUBKCaGdRuFPXd2/ +aPr2mQQFB0agA5rkQgegRVbFhKhxGE3UMLhP2DYkfTSI7Yw0oyzGOnSK1Jga5Y9Z +8W/sxPxj0rpAt/NFfl88qI9aiOYmOD8aFu+spQnNi9/K2yXVdYul0w7w2KAnCyjq +QWZbNzxFT6Lnlr4YnpuN3Yd81eeThPbH9of2wdMKyJSL6cYM+zZxCeniscspWrRw +3LPyinT/hEHLChkrQY507QQWXCM588yZeQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/schwarzach1 b/hosts/schwarzach1 deleted file mode 100644 index 2bc46bf..0000000 --- a/hosts/schwarzach1 +++ /dev/null @@ -1,10 +0,0 @@ -#Address = schwarzach1.hopto.org - ------BEGIN RSA PUBLIC KEY----- -MIIBCgKCAQEApZQmRinQZQq7gPjFmltgFxXAv4REhkCAGcPwYl3uUeOwqe4adSDu -90G99x2sCMAdteQ5YrZsDqYw2DQJS4F0a5IF81+U4wfv97KNil/DG0rxqXALX8v0 -OWfkUJUiblegeBo5R7/x+wDtdJbzmLszsfObo5W+jiyBSBM37RoHI2lfYEhu1+GE -2t1xWhZXsn65krEnF0mwg6sHzZPza051cQiCLIMSyqmI5jk17FzHfuKwdSKFQKMN -7rhVwgUgzL6RI5HQYDNjM5VEKHShIZ0MUvUQlhQuZglzIS9W0kvBhAFWg1zkUpaH -pGl/IK7z2VS5oayGIOpX8e/B0ITWuuzxVQIDAQAB ------END RSA PUBLIC KEY----- diff --git a/hosts/trier1 b/hosts/trier1 new file mode 100644 index 0000000..500dc80 --- /dev/null +++ b/hosts/trier1 @@ -0,0 +1,15 @@ +Address = gw1.freifunk-trier.starletp9.de +Port = 655 +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAtZakSOECioGgkCutgDyq28LLklVstsowc4oahDHhQt5pTv0ncUzE +D1rAVWGxYQuD21wu2gCW6zJpS+ZYxGnREIa799tdRtBSL/bH6QQsVpiQiWzpMk0D +HyOh17fbtqAekOzz3nY6hQFcB3CaJoqY2jrI/iQE15N1iNkA8m1nDnwpHxVtKNmh +9qq+2EtdXuuJP6o7gayjMLXiB0Iaz6rehlS8jzh6FdrCUQbyuRPW/XtT4tiwd0Ch +lVXoCnSrM0+tUW++0yQz9aCpLE+IMKcTGm1W3elNOA107R9BiJrPqM3ClP05ThRx +qWO/hCeJ7/Y0wFZBM2IWNX5ig3bAyhdUOaZA2Pr3HQ7dxRkHMDPOOjIzxPNQUvCm +M4yKXoC9Fuhy7iujd7fVovXqvwBfLAhm/krMZRftEU01qHdN+Qiemqawz/zx9Yok +GJwrVEttqXt1CP0yrm2GpLS0YOFCcTO6OGnzOP1AyCi8XjeoshqhT1GgHGky8TMs +GhMD227a9AIK+XTIGzvOEpYC04CYm9zcWBbcLwQZxZuX4XUIhCsgFtWYN0qHTbc3 +ivhy6Z/MPvJGxiGbipMeZlHu4fEKCtOu4EdddkFLlMKdpA7Jo8PEMXy1zg+LRgWt +qZJ6AL52KEnR+2zjl3aLoXJ7H0eTAGJjiSMDfp4PXiIWr5amoH7d8QUCAwEAAQ== +-----END RSA PUBLIC KEY----- diff --git a/hosts/trier2 b/hosts/trier2 new file mode 100644 index 0000000..7cd10b5 --- /dev/null +++ b/hosts/trier2 @@ -0,0 +1,10 @@ +Address = gw2.freifunk-trier.starletp9.de +Port = 655 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAu5IiDnY5Ix54b0fb6HqXM5GggH9TQCPTXqUnKgurPkiOHr+OcMSB +6LlE3v0N2HJYS+UJmjHZtNd9z4SdhQoft6t1vEM48G9gi0HDJoLvi+ZnEHbW0LdP +PE5H2gwEzrZ6YAtbFiyM55dVY/5G3fYEF7nrB1ItAkqujUfWoLSVE1q08Gt/MbnK +7X5rnr8JWquuj2vcn4KBn4YHuLBMNCotNINzDOECqst3CZLUioKoxQenhpyX/ZP0 +A0RNqpf6msFMiRY5+qEhXQYqP7ztc9MaLb5+7dvSePkjR4tEvBEizV5Qxxzpb6FA +ZnOEZT5UV+Pgx8iyBuyXnHeDB4X4F3gbLwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/hosts/westpfalz2 b/hosts/westpfalz2 new file mode 100644 index 0000000..68605b8 --- /dev/null +++ b/hosts/westpfalz2 @@ -0,0 +1,11 @@ +Address = gw02.freifunk-westpfalz.de +Port = 656 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvBxfjw2x1RB9nlypB0uXbb0Ad+bsPA3lVPUTiqf1jp9J7mq3SzQr +8XXbXSfYENjyLw6rif/7fYvnZsV9Pn+pj+sw7Hwj4JKyloNmLGe26youx+Ik3YXj +kvmPAF+6SShVAv4TEbOeqVNMggksXevJawPdR9lUrdu86uT49ncAWh29x9LBtLM7 +ZzxacAn/ysIsH8oY+niFT0xTysLD0mxbvWuSrXjFaL4zTtGyT1jOvLyTvkpE10OK +bVid5JGlkK8+NWFC6pruy1UR0j3+OZ7lsiQsEFrBcj08Dot/msXlvYjcDVtCVFMU +/SAolG+xq5Olg8dOql4E64N5yoLp7wbTRwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/metanodes b/metanodes new file mode 100644 index 0000000..522ea7f --- /dev/null +++ b/metanodes @@ -0,0 +1,5 @@ +berlin2 +darmstadt2 +luebeck2 +trier1 +hamburg03 diff --git a/scripts/check b/scripts/check new file mode 100755 index 0000000..dc7235b --- /dev/null +++ b/scripts/check @@ -0,0 +1,197 @@ +#!/usr/bin/env python + +import sys +import os +import socket +import subprocess +import nmap +from optparse import OptionParser + +ip4, ip6 = 0, 0 + + +ANSI_COLOR_ERR = "\x1b[31m" +ANSI_COLOR_WARN = "\x1b[33m" +ANSI_COLOR_OK = "\x1b[32m" +ANSI_COLOR_RESET = "\x1b[0m" + + +def error(*arg): + print(ANSI_COLOR_ERR, *arg, file=sys.stderr, + end='%s\n' % ANSI_COLOR_RESET) + + +def warn(*arg): + print(ANSI_COLOR_WARN, *arg, file=sys.stderr, + end='%s\n' % ANSI_COLOR_RESET) + + +def ok(*arg): + print(ANSI_COLOR_OK, *arg, file=sys.stderr, + end='%s\n' % ANSI_COLOR_RESET) + + +def check_host_lookup(hostname, port): + try: + return socket.getaddrinfo(hostname, port) + except Exception: + error("DNS Lookup for {hostname} failed".format(hostname=hostname)) + return [] + + +def check_icmp_reachability(gai_record): + host = gai_record[4][0] + family = gai_record[0] + + if family is socket.AddressFamily.AF_INET: + process_name = 'ping' + else: + process_name = 'ping6' + child = subprocess.Popen([process_name, host, '-c', '1', '-W', '5'], + stdout=subprocess.PIPE) + child.communicate() + if child.returncode: + error("{host} is icmp unreachable".format(host=host)) + return True if child.returncode == 0 else False + + +def check_udp_reachability(gai_record): + global ip4, ip6 + + host, port = gai_record[4][:2] + family = gai_record[0] + + if family is socket.AddressFamily.AF_INET: + arguments = '-sU -PN' + else: + arguments = '-sU -PN -6' + + scanner = nmap.PortScanner() + result = scanner.scan(host, str(port), arguments) # -sU requires root + state = result['scan'][host]['udp'][port]['state'] + + if state == 'closed': + error("{host} port {port}/udp is {state}" + .format(host=host, port=port, state=state)) + else: + ok("{host} port {port}/udp is {state}" + .format(host=host, port=port, state=state)) + + if family is socket.AddressFamily.AF_INET: + ip4 += 1 + else: + ip6 += 1 + + return False if state == 'closed' else True + + +def get_hosts_data(srcdir): + for fname in sorted(list(set(os.listdir(srcdir)))): + if fname.startswith("."): + continue + + fpath = os.path.join(srcdir, fname) + if os.path.isfile(fpath): + with open(fpath) as f: + ignore_key = False + addresses = [] + port = 655 # tinc default port + + for line in f.readlines(): + + if '-----BEGIN RSA PUBLIC KEY-----' in line: + ignore_key = True + elif '-----END RSA PUBLIC KEY-----' in line: + ignore_key = False + + if line.startswith("#") or ignore_key: + continue + + chunks = line.split("=") + if len(chunks) == 2: + (k, v) = (x.strip().lower() for x in chunks) + + if k == "port": + try: + port = int(v) + except ValueError: + error("non-integer default port given") + elif k == "address": + if " " in v: + parts = v.split(' ') + if len(parts) != 2: + error("unknown address format") + try: + int(parts[1]) + addresses.append(parts) + except ValueError: + error("non-integer port given") + else: + addresses.append((v, None)) + elif k in ('ecdsapublickey'): + continue + else: + error("unknown key {key} with value {val}" + .format(key=k, val=v)) + + # set explicit port for address/port pairs + for i, addr in enumerate(addresses): + if addr[1] is None: + item = (addr[0], port) + addresses[i] = item + + yield(dict(community=fname, addresses=addresses)) + + +def do_checks(srcdir): + global ip4, ip6 + + errcnt = 0 + warncnt = 0 + + for host in get_hosts_data(srcdir): + print("Checking {community}".format(community=host['community'])) + if not host['addresses']: + warn("no addresses specified") + warncnt += 1 + for address in host['addresses']: + host, port = address + + # dns lookup + records = check_host_lookup(host, port) + if not records: + errcnt += 1 + else: + for record in records: + if record[1] is not socket.SOCK_DGRAM: + # vpn connections are udp based, so skip + # everything else + continue + + if not check_icmp_reachability(record): + errcnt += 1 + else: + port_state = check_udp_reachability(record) + if not port_state: + errcnt += 1 + + print("\nfound {}/{} working ipv4/ipv6 peers".format(ip4, ip6)) + + error("{} errors".format(errcnt)) + warn("{} warnings".format(warncnt)) + + return 0 if errcnt == 0 else 1 + + +if __name__ == "__main__": + parser = OptionParser() + parser.add_option("-s", "--sourcedir", dest="src", + help="Location of tinc host files. Default: ../hosts", + metavar="DIR", + default="../hosts/") + + (options, args) = parser.parse_args() + + ret = do_checks(options.src) + + sys.exit(ret) diff --git a/scripts/post-merge b/scripts/post-merge index f45b79f..b70396a 100755 --- a/scripts/post-merge +++ b/scripts/post-merge @@ -18,13 +18,13 @@ test -w $TINCCFG || fail "ERR: $TINCCFG is not writeable" sed -i '/^ConnectTo/d' $TINCCFG -for HOST in hosts/*; do +while read HOST; do # skip hosts without address - grep -q '^Address' -- "$HOST" || continue + grep -iq '^Address' -- hosts/"$HOST" || continue - echo "ConnectTo = ${HOST##*/}" >> $TINCCFG -done + echo "ConnectTo = $HOST" >> $TINCCFG +done < metanodes -invoke-rc.d tinc reload icvpn +/usr/sbin/invoke-rc.d tinc reload icvpn exit 0