| 1 | GarliCat HOWTO |
|---|
| 2 | |
|---|
| 3 | This is a quick introduction into setting up I2P for GarliCat. It is assumed |
|---|
| 4 | that you already have installed I2P. This HOWTO is based on I2P version |
|---|
| 5 | 0.7.7-0. |
|---|
| 6 | |
|---|
| 7 | |
|---|
| 8 | 1 DOWNLOAD |
|---|
| 9 | First get the GarliCat branch of OnionCat 0.2.0, revision 529 or higher. It |
|---|
| 10 | is found here: http://www.cypherpunk.at/ocat/download/Source/0.2.0/unofficial |
|---|
| 11 | |
|---|
| 12 | |
|---|
| 13 | 2 COMPILE AND INSTALL |
|---|
| 14 | Unpack it, change into the directory and run './configure', 'make' and 'make |
|---|
| 15 | install'. If something goes wrong, read the error messages and try to fix the |
|---|
| 16 | problem. |
|---|
| 17 | |
|---|
| 18 | |
|---|
| 19 | 3 CONFIGURE I2P |
|---|
| 20 | GarliCat is able to connect to other GarliCats and lets others connect to you, hence, |
|---|
| 21 | the GarliCat software contains a server and a client part. Thus you must configure |
|---|
| 22 | a server and a client tunnel on your I2P router. The server is the "inbound" part. |
|---|
| 23 | I2P will assign an ID (a key) to it which is unique for your server tunnel and your |
|---|
| 24 | GarliCat, respectively. This ID is directly translated into an IPv6 address, hence, |
|---|
| 25 | also this IPv6 address is unique to your GarliCat. |
|---|
| 26 | |
|---|
| 27 | |
|---|
| 28 | 3.1 CONFIGURE SERVER TUNNEL |
|---|
| 29 | Open the I2P Router Console in your browser (http://127.0.0.1:7657/) and go to |
|---|
| 30 | "I2P INTERNALS -> Tunnels". Scroll down and click on "i2ptunnel page" |
|---|
| 31 | (http://127.0.0.1:7657/i2ptunnel/). |
|---|
| 32 | In the bottom right corner of the "I2P SERVER TUNNELS" box select "Standard" |
|---|
| 33 | (which should be selected by default) and click "Create". A new page opens. On |
|---|
| 34 | top enter a name, e.g. "GarliCat Inbound". Select the "Autostart" checkbox. |
|---|
| 35 | In the text field "Port" which is marked as required enter the port number |
|---|
| 36 | 8061. Scroll to the bottom and press "Save". |
|---|
| 37 | |
|---|
| 38 | |
|---|
| 39 | 3.2 CONFIGURE CLIENT TUNNEL |
|---|
| 40 | In the bottom right corner of the "I2P CLIENT TUNNELS" box select "SOCKS |
|---|
| 41 | 4/4a/5" and press "Create". A new page opens. On top enter a name, e.g. |
|---|
| 42 | "GarliCat Outbound". In the "Port" field which is marked as required enter the |
|---|
| 43 | port number 9051. Check the "Autostart" checkbox. Scroll down and press |
|---|
| 44 | "Save". |
|---|
| 45 | |
|---|
| 46 | |
|---|
| 47 | 3.3 FIGURE OUT _YOUR_ GARLICAT I2P-ID |
|---|
| 48 | On the "i2ptunnel page" (http://127.0.0.1:7657/i2ptunnel/) -- you should |
|---|
| 49 | already be on this page after the last step of 3.2 -- you should see your |
|---|
| 50 | "GarliCat Inbound" tunnel in the "I2P SERVER TUNNELS" box. It lists a string |
|---|
| 51 | called "Base32 Address". Copy this string to a file. Truncate it to 16 |
|---|
| 52 | characters and append the domain ".oc.b32.i2p". The result is your GarliCat |
|---|
| 53 | I2P-ID. |
|---|
| 54 | Example: |
|---|
| 55 | Base32 Address: ktmhezukbp6jyuldedcjmso6p4e6aegeikqli2mne67hnttgmvfa.b32.i2p |
|---|
| 56 | GarliCat I2P-ID: ktmhezukbp6jyuld.oc.b32.i2p |
|---|
| 57 | |
|---|
| 58 | Your I2P router is now ready. |
|---|
| 59 | |
|---|
| 60 | |
|---|
| 61 | 4 RUN GARLICAT |
|---|
| 62 | Your Garlicat I2P-ID is directly convertable into an IPv6 address and vice |
|---|
| 63 | versa by Garlicat. You can test if you figured out your GC I2P-ID correct by |
|---|
| 64 | running `gcat -i <your_gc_i2p_id>`. It should output an (your) IPv6 address. |
|---|
| 65 | Now start Garlicat as root and give your I2P-ID as a single parameter: |
|---|
| 66 | `gcat <your_gc_i2p_id>` |
|---|
| 67 | (Note: GarliCat will immediately drop root privileges after initialization). |
|---|
| 68 | You may have a look at the log files. By default, GarliCat logs to syslog with |
|---|
| 69 | facility "daemon". |
|---|
| 70 | If everything works you should now have a tunnel device (`ifconfig`) having |
|---|
| 71 | your IPv6 address configure. You should be able to ping to your own address |
|---|
| 72 | by running `ping6 <your_gc_ipv6_address>`. |
|---|
| 73 | |
|---|
| 74 | |
|---|
| 75 | 5 TELL I2P FROM OTHER GARLICATS |
|---|
| 76 | Basically everything is ready now but you need to enter the I2P-IDs and keys |
|---|
| 77 | from others that you want to connect to to your I2P address book. The best way |
|---|
| 78 | to do this is using SusiDNS. |
|---|
| 79 | If you want to connect to someone else's GarliCat you first need to receive his |
|---|
| 80 | GarliCat IPv6 address, his I2P-ID, and his key. Then go to your Susi-DNS page |
|---|
| 81 | (click on "Addressbook" on your I2P Router console) and add a new entry being |
|---|
| 82 | the I2P-ID the name. Test if it works. Simply try to ping to the IPv6 address. |
|---|
| 83 | (NOTE: THERE MAY BE BETTER OPTIONS BUT THIS SECTION WAS WRITTEN BY SOMEONE |
|---|
| 84 | WHO DOES NOT NO TOO MUCH DETAILS ABOUT SUSIDNS, YET. SORRY.) |
|---|
| 85 | |
|---|
| 86 | |
|---|
| 87 | A APPENDIX |
|---|
| 88 | What is the difference between OnionCat and GarliCat? |
|---|
| 89 | OC and GC is basically the same. They completely share the code base. The |
|---|
| 90 | difference just lies in port numbers and the domain extensions which are |
|---|
| 91 | specific for Tor (.onion) and I2P (.oc.b32.i2p), respectively. |
|---|
| 92 | OC and GC can run in parallel on a host. |
|---|
| 93 | |
|---|
| 94 | |
|---|
| 95 | B AUTHOR |
|---|
| 96 | This HOWTO was written by Bernhard R. Fischer, 15th of November 2009. |
|---|
| 97 | |
|---|