How do I use this software? I downloaded it, but when I run it there's no GUI.
Fred (the Freenet REference Daemon) runs as a daemon, or service, in the background. You normally talk to it with a Freenet client. One of the services that Fred offers is called fproxy, which lets you talk to Freenet with a web browser. Point your web browser to
http://127.0.0.1:8888/∞; for the gateway page. Try clicking the various links in the "Bookmarks" panel to reach some of the popular Freenet index sites.
If you're looking for applications that run on top of Freenet and provide a different interface or functionality, please see the
Third Party Tools page.
I'm only getting "Data Not Found" or "Route Not Found" errors!
It will take your new node some time some time to integrate into the network. Go to
http://127.0.0.1:8888/servlet/nodeinfo/networking/ocm∞; to open the Open Connections Manager. There you can see how many connections to other freenet nodes your node has open. If the number of connections is at least 50, your node should be well on the way to being usable.
If the number of Open Connections doesn't appear to be rising for hours, you may need reseed your node.
Reseeding your node is done by
o remove file: rt*
o remove file: lsnodes*
o remove file: ngrt_*
- optionally resetting your node reference file, by removing the file: node and by using another Listen Port?? (useful to prevent nodes from a different / old network to contact yours)
Upon next restart, your node will try to bootstrap the network from a few nodes contained in your seednodes.ref file and start building a new routing table.
Why am I not supposed to use the freenet package supplied by Debian?
The freenet package that can be found in Debian's software archive is several years old. As Freenet is still a lon way from a 1.0 version, there is still a lot of development going on, even on the communication protocol between the nodes. To aid in this development, a node will refuse incoming connections from nodes which are too old. A node installed from the Debian software archive would simply not be able to connect to the current network.
Is Freenet searchable?
No search mechanism has yet been implemented. One of the design goals was to make it impossible to locate the exact place where any piece of information is stored. Even a server operator cannot determine what is stored at his own node. This naturally makes searching very difficult. Information is currently retrieved by "keys" which should be guessable, or communicated by some other means.
Proposals for adding safe searching and indexing capabilities to Freenet are being discussed for the future. For example, Freenet documents can contain hyperlinks which could be spidered in the same way as the web. Alternately, lists of keywords or other metadata could be circulated through the network.
How do I get freenet working with a Firewall/NAT?
Open the freenet.conf or freenet.ini file in a text editor. On Windows you will normally find this file in C:\Program Files\Freenet, on Linux you will find it wherever you unpacked the Freenet tarball.
Find the line containing listenPort and take a note of the number it is set to - do not change it.
Configure your NAT or firewall to forward connections to the listenPort number that you noted in the previous step, to the same port on your computer (you will probably need to know your computer's internal IP address which will often begin with 192.168.x.x)
Configure your NAT or firewall, if necessary, to allow outgoing connections to any port on any host. Freenet does not use a standard port number, to make it harder to block.
Do I need a permanent connection to run a node?
No, but it is preferred. You can run the software and test it from a "transient" connection (such as provided by typical modem/ISP setups), but for the network as a whole to be most useful, we will need as many permanent nodes as possible (most cable modem or DSL setups are sufficiently "permanent" for this). A later version of Freenet may take better advantage of transient nodes.
A permanent connection will result in notably better performance for the user.
Why does Freenet only download 1 or 2 files at a time?
Many browsers limit the number of simultaneous connections to something far too low for efficiently browsing Freenet (since Freenet pages often have much higher latency than web pages). This can usually be reconfigured. For example, for Mozilla, create a file with the following contents called user.js in the directory with prefs.js, or append to an existing user.js:
user_pref("network.http.max-connections", 200);
user_pref("network.http.max-connections-per-server", 100);
user_pref("network.http.max-persistent-connections-per-server", 10);
user_pref("network.http.max-persistent-connections-per-proxy", 50);
Note that these settings will cause mozilla to use more connections for all your browsing, which may not be desirable from a network congestion point of view; volunteers to make mozilla allow this sort of settings to be set per host would be welcome...
How do I browse Freenet from other computers?
If you want everyone to be able to use your node, then add the following lines to your freenet.conf or freenet.ini file:
mainport.bindAddress=*
mainport.allowedHosts=*
Of course, this leaves your node wide open, unless you control access with a firewall of some sort. If you'd prefer to use access controls within Freenet, then you can use lines like this:
mainport.bindAddress=*
mainport.allowedHosts=127.0.0.1,192.168.1.0/24
However, it may be more useful to set up an Ssh Tunnel
? instead.
My freenet.ini (or .conf) file is empty, or nearly so!
If you tried to install Freenet at a time when your Java runtime environment was not working, you might have created a broken configuration file. Make sure your Java environment works. Then, remove the config file and try running the Freenet setup again. (On Unix, this is ./start-freenet.sh .)
If that fails, try doing it the long-hand way:
java -jar freenet.jar --config
My browser can't save large files from Freenet. Can I retrieve them from the command line?
Yes, you can. Use this command:
java -cp freenet.jar freenet.client.cli.Main get KEY filename
Be sure to specify the filename you want to save the key into. You can use the --help option to learn the other switches, such as healing percentage, HTL for the individual blocks, etc.
You can also use standalone freenet tools like FUQID∞ (windows only, link only works if you have fproxy running on 127.0.0.1:8888), or FCPTools∞.
What's this distribution servlet? How do I use it?
The distribution servlet allows you to provide friends/colleagues/people you meet in IRC to download a copy of Freenet from your node. They get seednodes extracted from your node's routing tables, speeding their integration into the network. To use it, go to
http://127.0.0.1:8891/∞; and create a URL. This URL will be good for 24 hours or 100 hits, whichever comes first. People visiting the URL will find a copy of Freenet for download.
How do I extract the necessary seedNode values from my own node?
Temporarily stop your node with sh stop-freenet.sh . Then type sh start-freenet.sh --export myref.ref . Wait a few seconds, until java processes stop. Then do sh start-freenet.sh again to start the node normally. myref.ref will contain your node reference. Make sure that if you post this for others to use, that you avoid extra linebreaks.
How can I change from stable to unstable?
Stop your node.
Download freenet-unstable-latest.jar∞ and unstable.ref∞ to your freenet directory.
Rename the two new files to freenet.jar and seednodes.ref (overwriting the old ones).
It is not strictly necessary, but it is recommended you open freenet.ini / freenet.conf and change your listenPort=XYZ to a new random number (just adding one will do). If you have some firewall settings, remember to change them accordingly! It is also recommended that you wipe your node file and your routing table files to change your node id and start from scratch.
Start your node.