Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Jun 2015 20:58:47 GMT
From:      roam@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r287338 - soc2015/roam
Message-ID:  <201506192058.t5JKwl4P051749@socsvn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: roam
Date: Fri Jun 19 20:58:46 2015
New Revision: 287338
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=287338

Log:
  Add testing instructions to the README file.
  
  ObQuote:	"If you want it, come and get it"

Modified:
  soc2015/roam/README.txt

Modified: soc2015/roam/README.txt
==============================================================================
--- soc2015/roam/README.txt	Fri Jun 19 20:58:43 2015	(r287337)
+++ soc2015/roam/README.txt	Fri Jun 19 20:58:46 2015	(r287338)
@@ -42,3 +42,121 @@
 additional data that the node will ignore.  This allows the administrator or
 the userland utility to keep more information for clarity, documentation and
 so on, without interfering with the operation of the node.
+
+
+Building ng_ayiya
+-----------------
+
+Building the AYIYA Netgraph node should be straightforward: obtain a copy of
+the source tree, change into the ng_ayiya/ subdirectory (the one containing
+the ng_ayiya.c file) and run the following commands:
+
+  make cleandir && make cleandir
+  make depend
+  make
+
+If you'd like to install it into the system's kernel modules directory, run:
+
+  make install
+
+
+Using ng_ayiya
+--------------
+
+Bringing up an IPv6 tunnel using the AYIYA Netgraph node involves
+the following steps:
+
+1. Use the sixxs-aiccu utility to make sure that your SixXS tunnel is active
+   and there are no network connectivity issues in running AYIYA.
+
+2. Get the Net-SixXS Perl distribution from its Git repository:
+
+   git clone https://gitlab.com/ppentchev/Net-SixXS.git
+
+3. Build and optionally install Net-SixXS:
+
+   cd Net-SixXS
+   perl Build.PL
+   ./Build
+   ./Build test
+
+   # If you'd like to install Net-SixXS system-wide, do this as root:
+   ./Build install
+
+4. Use the sixxs-tic-tunnels tool from Net-SixXS to obtain information about
+   your configured SixXS tunnels in a format usable by ng_ayiya's testing
+   infrastructure:
+
+   # If you have installed Net-SixXS system-wide:
+   sixxs-tic-tunnels -s tic.sixxs.net -f /usr/local/etc/aiccu.conf > tic-tunnels.txt
+
+   # If you have only built it and are still within the Net-SixXS directory:
+   perl -Iblib/lib scripts/sixxs-tic-tunnels -s tic.sixxs.net -f /usr/local/etc/aiccu.conf > tic-tunnels.txt
+
+5. Copy the tic-tunnels.txt file to the ng_ayiya source directory.
+
+6. Change into the ng_ayiya source directory (the one containing ng_ayiya.c)
+
+7. Build ng_ayiya:
+
+   make cleandir && make cleandir
+
+   # Do not run "make obj"; the testing scaffold does not really understand
+   # object directories just yet
+
+   make depend
+   make
+
+8. Load the kernel module and create an AYIYA node:
+
+   make down     # or make teardown
+   make up       # or make setup
+
+9. Check to see that the AYIYA node is loaded properly; these commands
+   should report that it has not been configured yet and it has no hooks:
+
+   sudo ngctl list
+   sudo ngctl status sc_ayiya:
+   sudo ngctl config sc_ayiya:
+ 
+10. Use the testing scaffold to create a simple graph and connect to your
+    SixXS tunnel; replace "T22928" with the name of your tunnel as listed
+    in the tic-tunnels.txt file:
+
+   make tic TIC_TUNNEL=T22928
+
+11. Check that your tunnel is up and running:
+
+   sudo ngctl status sc_ayiya:
+   sudo ngctl config sc_ayiya:
+
+   ifconfig ng0
+
+   ping6 -c1 your-tunnel's-peer-IPv6-address (usually one less than
+   the local IPv6 address configured on the ng0 interface, but check
+   tic-tunnels.txt for the exact value)
+
+   sudo route -6 add default your-tunnel's-peer-IPv6-address
+
+   curl -6s http://www.kame.net/ | fgrep -e 'Dancing kame'
+
+
+To-do list
+----------
+
+- respond to AYIYA queries, maybe with content supplied via more Netgraph
+  control messages
+
+- send AYIYA queries, maybe in response to more Netgraph control messages
+
+- use a callout to periodically send an AYIYA heartbeat packet
+
+- write a ng_ayiya manual page
+
+- finish the Net-SixXS Perl distribution (mostly documentation) and
+  release it to CPAN
+
+- extend the testing scaffold to make it easy to pit two ng_ayiya nodes
+  against each other
+
+- teach sixxs-aiccu about ng_ayiya



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506192058.t5JKwl4P051749>