I have not understood the workflow yet. This is going to be long
because it's my education on the subject that's the problem and it takes
many lines to expose my thought process.
I have two machines---an OpenBSD and a FreeBSD. The OpenBSD is called
home and the FreeBSD is called fbsd. The machine fbsd is 24/7 on the
Internet, but home is behind (at least one) NAT router. Their relevant configuration is shown below---I don't show the entire file because
there are private keys in that file.
The two pages that I've been trying to get help from are
https://nncp.mirrors.quux.org/Workflow.html
and John Goerzen's NNCP concepts page at
https://www.complete.org/nncp-concepts/
which is the one I've been as a guide. At first I tried file
transmissions, but I failed to see the arrival of files, even though I
think I might have transferred a text file properly. I then decided to
try command execution thinking it would be something easier to get
right: so I choose the program /uname/ to execute on the fbsd machine.
(I show the configuration of both machines at the end of this post.)
My attempt is to issue a uname execution on node fbsd but requested from
node home and I expect to see the answer on node home (somehow).
Here's what I said (to my shell) at node home:
b# nncp-exec -cfg /etc/nncp.hjson fbsd uname
2025-04-11T23:49:36Z Tx uname 172 B/0 B 100% (0 B/sec)
2025-04-11T23:49:36Z Tx uname 172 B/0 B 100% (0 B/sec)
2025-04-11T23:49:59Z Tx uname 495 B/0 B 100% (14 B/sec)
2025-04-11T23:49:59Z Exec is sent to fbsd@uname (291 B)
b#
The reason you see three Tx lines is because I didn't know the command
was reading my stdin---so I pressed ENTER (IIRC) a few times and then I
must have pressed ^D to give the program the EOF byte. The program
finished.
So I thought---okay, the request has been added to a queue at node home.
Now I must transfer that request to fbsd. Then I used nncp-call, having (before) ran nncp-daemon with the -ucspi flag at node fbsd: the command
line for nncp-daemon on node fbsd was
tcpserver -DHR -l 0 ::0 uucp nncp-daemon -quiet -ucspi
So, at node home, I said
b# nncp-call -cfg /etc/nncp.hjson fbsd
2025-04-11T23:52:10Z We have got for fbsd: 1 packets, 495 B 2025-04-11T23:52:11Z Connection to fbsd (somewhere.com:540) 2025-04-11T23:52:11Z Tx H2BB55FOK6ODPWVM..A6YIMSVWNXJUCO3Q 495 B/495 B 100% (0 B/sec)
2025-04-11T23:52:11Z Packet H2BB55FOK6ODPWVMUC2BSSB4OQREF7ROI7P3A6YIMSVWNXJUCO3Q is sent
2025-04-11T23:52:22Z Finished call with fbsd (0:0:11): 32 KiB received (32 KiB/sec), 33 KiB transferred (33 KiB/sec)
Looks good. Now I'd think the request has been added to a queue at node
fbsd. In other words, I believe the uname program has not been ran yet.
I would now think that I must somehow process that queue on node fbsd.
The section ``[c]ommands to process packets'' on John Goerzen's guide
seems promising: it seems to say that I must run nncp-toss on the fbsd
node. So I did and I got:
# nncp-toss
2025-04-12T00:25:29Z Got exec from home to uname (15 B)
Makes perfect sense. Now I don't know how I at node home could get the
output of the command. I suppose that a new packet has been added to
the outgoing queue at node fbsd and should be transferred to node home.
(A packet containing the uname output, I mean.) But how could I
transfer something to node home from node fbsd? Node home has no
Internet address. So I'm thinking that node home must request that
transfer itself. What would be the command? It looks like nncp-freq is
only for a file request, not for receiving the output from a command
execution. So I'm stuck here.
I tried running nncp-stat just to see what I could see on both machines,
but that told me not much:
(*) At node home
b# nncp-stat -cfg /etc/nncp.hjson
fbsd
self
(*) At node fbsd
# nncp-stat
home
self
(*) Trying to make sense of the queues at node fbsd
I also looked at /var/spool/nncp at node fbsd to see if I could identify
a possible packet lingering on a queue. My hope was that I could spot a
hash of some sort that would identify the packet that I'm expecting to
get at node home (with the output of uname), but I see no match between
the file names below and the ``hashes'' I see above---I'm not sure
they're really hashes.
# find ./
./
./tmp
./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/tx ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/tx/hdr ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/rx ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/rx/hdr ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/toss.lock ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/tx.lock ./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ
./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ/IUJSLBWMPXYCINOFHJ42LC54T7TRKJAUOAOX6FT73BCRXPRIVMHQ
./T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA/rx.lock
./home
./log.lock
./log
./DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ ./DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ/rx ./DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ/toss.lock ./DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ/tx.lock ./DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ/DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ
#
--8<-------------------------------------------------------->8--- --8<-------------------------------------------------------->8---
(*) Relevant configuration of fbsd
neigh: {
self: {
# You should give public keys below to your neighbours
id: DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ
exchpub: TF3QPHX2ZRK2FTLFIUJVXU6S32WVXJBHE6OWTD4WVFSXVWCC4FEQ
signpub: HY2BWDIKZ6VOUT646MGJRWY7MCF3TKOLT5RROG66I3YA36UJ2UVQ
noisepub: M3MO4SLJMXKDH2GPJ72KDQW2IY6JDVV3GVNJQTFHXJDD6MVLPYBA
exec: {
# Default self's sendmail command is used for email notifications sending
sendmail: ["/usr/sbin/sendmail"]
uname: ["/usr/bin/uname", "-a"]
}
}
home: {
id: T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA
exchpub: LHK42COUVEAJT6HTEO6JAITYLCR5TSYMZZTLI5PRKFFCOVR2SEZQ
signpub: LLSNROV3VOR6MHHHLRV2BJ2DAV3MTETIN55TOCF4K7I2GFR3IRZQ
noisepub: SB76WL2AS6KEL4D35SFFLTIVM3LFIW73AL5ZMEIXAH2NTKUQSJ2Q
incoming: "/home/me/nncp"
exec: {
sendmail: ["/usr/sbin/sendmail"]
uname: ["/usr/bin/uname", "-a"]
}
}
}
(*) Relevant configuration of home
neigh: {
self: {
# You should give public keys below to your neighbours
id: T3ULRRNAFLMMG7354E4KPS37M26SYS5BHZN5U3QIFS4J3SIXXPFA
exchpub: LHK42COUVEAJT6HTEO6JAITYLCR5TSYMZZTLI5PRKFFCOVR2SEZQ
signpub: LLSNROV3VOR6MHHHLRV2BJ2DAV3MTETIN55TOCF4K7I2GFR3IRZQ
noisepub: SB76WL2AS6KEL4D35SFFLTIVM3LFIW73AL5ZMEIXAH2NTKUQSJ2Q
exec: {
# Default self's sendmail command is used for email notifications sending
sendmail: ["/usr/sbin/sendmail"]
uname: ["/usr/bin/uname", "-a"]
}
}
fbsd: {
id: DDZ76CQEAKIQNRLBEFHCU5IRWNOLAZZR2AYV24DXUFTUECKERZYQ
exchpub: TF3QPHX2ZRK2FTLFIUJVXU6S32WVXJBHE6OWTD4WVFSXVWCC4FEQ
signpub: HY2BWDIKZ6VOUT646MGJRWY7MCF3TKOLT5RROG66I3YA36UJ2UVQ
noisepub: M3MO4SLJMXKDH2GPJ72KDQW2IY6JDVV3GVNJQTFHXJDD6MVLPYBA
incoming: "/user/home/me/nncp"
exec: {
sendmail: ["/usr/sbin/sendmail"]
uname: ["/usr/bin/uname", "-a"]
}
addrs: {
internet: somewhere.com:540
}
}
}
By the way, I'm hiding my correct Internet address due to this post
being sent to the USENET.
(*) Thanks
I appreciate any help! Thanks!
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)