public inbox for
Atom feed
* Public NNCP Relay is now available
@ 2021-08-01  1:56 John Goerzen
  2021-08-01 23:53 ` Public NNCP Relay now reachable by tor John Goerzen
  2021-08-02 10:13 ` Public NNCP Relay is now available Sergey Matveev
  0 siblings, 2 replies; 5+ messages in thread
From: John Goerzen @ 2021-08-01  1:56 UTC (permalink / raw)
  To: nncp-devel

Hi folks,

I have now established the public NNCP relay I wrote about.  This 
is, of course, experimental and I hope we all can learn from it.

I know Sergey writes that it's intended to build up a "small size 
ad-hoc friend-to-friend" network.  I say - let's push its limits 
and see where we can take it!  I mean, we already know it's going 
to be better than UUCP, right? :-)

I'll include the README.txt that can be freq'd from quux below. 
It describes how to fetch a nodelist.  Of course, that nodelist 
need only list the peers that partner with the relay node 
directly.  -via can always hang more branches off it and the relay 
need not know about them.

Also I think it would be really interesting to see where we can 
take this.  Email?  Usenet?  (rmail/rnews)  There are a lot of 
complexities there, and with email also security questions.  I've 
started to think about these issues but haven't gotten very far.

Basically, there's a pretty big difference between allowing a 
machine you own to run sendmail on a remote node and allowing a 
stranger you don't know to do the same.  There are also questions 
of routing and addressing and...  yeah.  Anyhow, there's nothing 
preventing you from using this public relay to send email anyhow.

The public relay itself will not accept any nncp-exec or nncp-file 
commands from any node.  It will, however, answer nncp-freq 
commands from all nodes it know about.  This will let you relay 
email via it, of course.

Here's the README.txt: public NNCP server
John Goerzen
July 31, 2021

Welcome.  Here you will find basic information on using the
public NNCP relay/server.


To join, please send an email to jgoerzen@complete•org requesting 

Make sure your email includes:

- The preferred nodename for your system.  Note that you can use 
  nodename you like locally, since they are just aliases for NNCP 
  This is to help others in the nodelist.

- If your system is permanently online on the Internet, reachable 
  at a known
  hostname/port, and you wish this to be published in the 
  let me know.  This is completely optional; it is assumed most 
  will not be reachable in this way.  However, if we have ones 
  that are,
  then the relay server can also establish outbound connections to 

- The self section FROM WITHIN THE neigh BLOCK of your nncp.hjson. 
  It should
  look like this:

neigh: {
  self: {
    # You should give public keys below to your neighbours
    id: RKOLY...KAMXQ
    exchpub: 2NZKH...CMI7A
    signpub: EXD7M...YAOFA
    noisepub: MIXYN...BGNDQ

Upon receiving your request, you will be added to the server 
configuration and
the public nodelist.


Add these lines to the neigh section of your nncp.hjson:

    quux: {

      addrs: {
        internet: ""
      incoming: "/tmp" # (or more appropriate path); may be 
      omitted after testing

Then restart your daemons and verify things have loaded 


Once you receive confirmation that your node has been added to the 
you can test your configuration by requesting this file from the 

nncp-freq quux:README.txt

After packets are exchanged and tossed after a few minutes, you 
should have
a copy of README.txt in the directory you labeled as incoming in 
configuration.  At this point, if you no longer wish to be able to
receive freqs or files from quux, you may delete or comment out 
incoming line in your configuration.  However, you probably will 
to be able to freq files from quux; read on.


Part of the fun of this relay is discovering other peers around 
the world.

To that end, every peer on this relay is mentioned in the 

Download the latest nodelist with:


Upon unpacking, you will find a directory with nncp.hjson 
corresponding to the nodes in the system.  (Yes, I know about 
but it doesn't readily support comments and I wanted them.)

You can use a script such as this to emit a more cohesive 
nncp.hjson blub:

rm MYNODE    # Delete your own node; that will be processed under 
for FILE in *; do
   echo "$FILE: {"
   cat "$FILE"
   echo 'via: ["quux"]'
   echo '}'
   # Here you could add lines about incoming dirs, via path

Then, if you have two ready-made nncp.hsjon segments -- the bit 
before this
part of the neigh section, this part, and then the end, you could 
form the
complete nncp.hjson like so (assuming the above script is in 

cat nncp.hjson.pre > nncp.hjson
cat-nodelist >> nncp.hjson
cat >> nncp.hjson


This system is experimental.  No guarantee about correctness of 
longevity, or uptime is provided.

Submitted data, including your name, email address, host keys, and
hostname/port, will be made available to all other present or 
future members
of this relay server.

If you wish to be removed from the relay server, email 
with your request.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-08-04 11:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-01  1:56 Public NNCP Relay is now available John Goerzen
2021-08-01 23:53 ` Public NNCP Relay now reachable by tor John Goerzen
2021-08-02 10:13 ` Public NNCP Relay is now available Sergey Matveev
2021-08-03  2:34   ` John Goerzen
2021-08-04  8:14     ` Sergey Matveev