Gnutella Forums

Gnutella Forums (https://www.gnutellaforums.com/)
-   Connection Problems (https://www.gnutellaforums.com/connection-problems/)
-   -   private gnutella network (https://www.gnutellaforums.com/connection-problems/19949-private-gnutella-network.html)

q.wert April 16th, 2003 01:15 PM

private gnutella network
 
hello,
i would like to do some testing with a small number of hosts controlled by me. i thought if i set up my own web cache and comment out all but my own web cache entry from DefaultBootstrapServer.java i should have a private test bed.
but somehow limewire still connects to the world. where does it get the data from? what do i need to change?
please help.
any assumption is welcome

chris

trap_jaw April 16th, 2003 01:37 PM

It would be much simpler to use the host filter in the options to block all IP's except for your private network.
For example, add this to the banned hosts: *.*.*.*
And your private network: e.g. 10.*.*.* to the allowed hosts.

q.wert April 17th, 2003 10:19 AM

well, this would be a solution, but then i still get some initial messages from other clients. also my clients are not on the same subnet, what if someone else has a client running? one thing what i want to study are the initial connections, and behaivior in different enviroments.
thanks for your answer
chris

trap_jaw April 17th, 2003 10:36 AM

Another solution would be to edit the handshake in Connection.java, use "TESTELLA CONNECT/0.6" instead of "GNUTELLA CONNECT/0.6".

q.wert April 18th, 2003 09:59 AM

that is a good idea, thanks.
but now i have another problem, or maybe i'm just to stupid to make simple code changes.....
i changed the connection strings in connection.java and recompiled all, but now it doesn't respond to the new connections string, and it respond to the old connection string but with the modified answer string.
can someone please check this out and tell me if i'm to stupid to make these changes?

thanks,
chris

trap_jaw April 18th, 2003 10:41 AM

There are probably some other occurrences of GNUTELLA CONNECT you have to fix. Try the SettingsManager.java.

The problem is that Acceptor.java doesn't use the strings from Connection.java to identify an incoming Gnutella connection.

q.wert April 21st, 2003 11:02 AM

ok, i changed every occurence and i can do a modified handshake with telnet. but it won't connect if i use the modified programs.
i think it is not a problem with the handshake, i think it is because limewire wants to connect to ultra peers and refuses in the beginning to connect to leaf nodes. is this right?
is there the possibility to change this behavior or to force one of my (two) clients to be a ultra peer?

thanks
chris

trap_jaw April 21st, 2003 11:11 AM

to force ultrapeer mode add the line:

FORCE_SUPERNODE_MODE=true
to your limewire.props file.

q.wert April 23rd, 2003 02:37 PM

thanks, this one works,
btw: do you know, where it is specified that a limewire client connects to ultrapeers and not to leaf nodes?

trap_jaw April 23rd, 2003 02:46 PM

I don't quite understand your question.

When in ultrapeer mode, LimeWire will connect to other ultrapeers and allow leaf connections, when in leaf mode, LimeWire will only connect to ultrapeers.

Whether or not a connection should be allowed is handled by the ConnectionManager class.

q.wert April 24th, 2003 09:09 AM

right now i have a client which i force to be a ultra peer. my other client connects to this one. but if i have a third and fourth one all of them will connect to that ultra peer, which creates a single point of failure and also might be a bottleneck.
one solution is to force every node to be a ultrapeer which somehow defeats the purpose of an ultra peer.
another solution is to let leaves connect to each other, right?
since this is only a small network, perfomance should not matter.
i took a look on the ConnectionManager class and changed the "public boolean allowConnection(HandshakeResponse hr, boolean leaf)" to return always true but this seems to be not enough.

trap_jaw April 26th, 2003 12:08 AM

A small network will usually work just as well if every peer is an Ultrapeer.

However, instead of modifying allowConnection() (which is a bad idea because you don't really want clients that think they are leafs to connect to each other), just put the static addresses of a few seed Ultrapeers into LimeWire's gnutella.net file (and remove all other addresses). It's even possible to hardcode some of those addresses in the HostCatcher.java file.

If you force supernode mode for two or three seed ultrapeers, the others should go into leaf mode automatically.

- By the way, you should really consider modifying the number of ultrapeer connections, because an outdegree of 15 is probably far too much for a small network.

abd March 3rd, 2006 02:15 AM

private network
 
Hello. Trying to set up private p2p network on LAN by blacklisting all IPs exceptintg local. 1st result is all nodes are leaf and do not connects each others. Can I manually set some of them to be peers or ultrapeers? Tried to do that removing blacklist on one node and connecting to global gnutella.net and in that case other private nodes connects just good. 2nd result is linked with addresses, I have 10.0.x.x net and LW says it is behind a firewall at startup even if there is few IN and OUT leaf connections to ultrapeer nodes. All (TCP & UDP 6346) ports are unblocked. Also I can not browse or direct connecto to any of leaf nodes.

LW version is 4.10.3 (4.10.9 on some of nodes).
How to set up stable private network?

Thanks.


All times are GMT -7. The time now is 06:02 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 ©2011, Crawlability, Inc.

Copyright © 2020 Gnutella Forums.
All Rights Reserved.