Flexd and uronode

I had some problems getting the flexnet destinations in uronode. Xnet node is running with various flexnet links. Now I also want uronode to know these flexnet destinations. There appears to be a small secret in the “prompt” that flexd expects. I had a prompt “pi1lap ==>” That is not what flexd expected. Flexd expects a prompt “=>” So now I had to adjust the Xnet prompt to the expectations of flexd. (Tnx Brian n1uro for the hint)
Maybe the “pi1lap =>” prompt will work, I have to test that

There is also something with the buffer size of flexd. See the README.flexd in the source dir.

root@gw:/etc/ax25# cat /usr/local/src/uronode-2.8/README.flexd
If you find that your flexd isn't properly working, scroll down to line 120
where it says:
char  buffer[256], port[14], path[AX25_MAX_DIGIS*10]
and adjust the buffer per your neighbor's screens. The formula is:
2 data frames: 256
3 data frames: 512
4 data frames: 1024

Okay so how muts frames i have, let’s have a look

[3] fm PI1LAP-15 to PI1LAP ctl SABM+
[3] fm PI1LAP to PI1LAP-15 ctl UA-
[3] fm PI1LAP to PI1LAP-15 ctl I00^ pid F0 (211)
(X)net V1.39 Node PI1LAP

That are 2 frames. I had to set the buffer size to 256 and recompile flexd.c

int download_dest(char *gateway, char *fname)
{
  FILE *tmp;
  char buffer[256], port[14], path[AX25_MAX_DIGIS*10];

Also i have made a change to line 277. Also change to 256 buffer size

    if (FD_ISSET(s, &read_fd)) {
//      if ((n = read(s, buffer, 512)) == -1) break;
	if ((n = read(s, buffer, 256)) == -1) break;

Setup flexd.conf

# /etc/ax25/flexd.conf
# see man flexd.conf

# The callsign-ssid you wish to poll your flex neighbor with:

MyCall          pi1lap-15

# How often do we poll our flex neighbor (in seconds):

PollInterval    300

# The FlexNet node we're to poll:

FlexGate        pi1lap

The prompt for Xnet

root@gw:/etc/ax25# grep prompt /usr/local/xnet/AUTOEXEC.NET
my prompt =>

Let’s give it a try.

[3] fm PI1LAP-15 to PI1LAP ctl SABM+
[3] fm PI1LAP to PI1LAP-15 ctl UA-
[3] fm PI1LAP to PI1LAP-15 ctl I00^ pid F0 (211)
(X)net V1.39 Node PI1LAP

Lap = F6fbb bbs PI8LAP
Jnos = Jnos 2.0k.1 PD2LT
Dx = Cluster Dxspider PI1LAP-4
Uro = Uronode PI1LAP-15

=>
[3] fm PI1LAP-15 to PI1LAP ctl I10^ pid F0 (2)
d
[3] fm PI1LAP to PI1LAP-15 ctl I11^ pid F0 (236)

BBS     0-0     33  CE8FGC  0-0     33  CX2SA   0-0     34  CX2SA   5-5      5
DB0ERF  0-12     4  DB0ERF 13-13     3  DB0ERF 14-14    30  DB0ERF 15-15    30
DB0RES  0-9      5  DB0RES 10-10     4  DB0ZWI  0-1      6  DB0ZWI  3-3
[3] fm PI1LAP to PI1LAP-15 ctl I12^ pid F0 (236)
5
DB0ZWI  4-15     4  DH4LAR  1-1      4  DL0HBS  7-7     30  F1ZYS   8-8     10
F3KT    0-10     4  F4DUR   7-7      5  F4DUR   8-8     39  F5ZFC   0-7    132
F8KHI   3-3     39  F8KHI   7-7     39  FGCBBS  0-0     33  HB9CSR  1-1
[3] fm PI1LAP to PI1LAP-15 ctl I13^ pid F0 (236)
40
HB9CSR  3-3      5  HB9CSR  8-8     40  HB9ON   1-1     39  HB9ON   8-8     34
HB9ON   9-9     34  HB9ON  10-10     4  HB9ON  14-14     5  HG0PLA  0-0      5
HG6PGA  0-0    109  HG8IT   0-0     35  HG8LXL  0-0     31  HG8PCS  0-0

Uronode

pd2lt@uro.pd2lt.ampr.org-IPv6: d
FlexNet Destinations:
BBS     0-0     34  CE8FGC  0-0     34  CX2SA   0-0     35  CX2SA   5-5      5
DB0ERF  0-12     5  DB0ERF  13-13    4  DB0ERF  14-14   31  DB0ERF  15-15   31
DB0RES  0-9      6  DB0RES  10-10    5  DB0ZWI  0-1      7  DB0ZWI  3-3      6
DB0ZWI  4-15     5  DH4LAR  1-1      5  DL0HBS  7-7     31  F1ZYS   8-8      6
F3KT    0-10     4  F4DUR   7-7      5  F4DUR   8-8     39  F5ZFC   0-7    116
F8KHI   3-3     39  F8KHI   7-7     39  FGCBBS  0-0     34  HB9CSR  1-1     41

Yes, all looks okay.

The flexnet destinations are saved in “/usr/local/var/ax25/flex” on a debian wheezy system.

URONode ipv6 ready

URONode van Brian N1URO is ipv6 ready.
Dit wou ik natuurlijk even uitproberen. Nu was ik nog niet zo veel met ipv6 bezig geweest dus het was even uitzoeken hoe het moest. Het viel allemaal wel weer mee 🙂

Eerst moet de nieuwste versie van uronode geïnstalleerd worden (versie 2.7)
Verder moet er een regel aangepast worden in /etc/inetd.conf

Hier onder hebben we de (tcp6) toegevoegd. kill -HUP inetd

uronode  stream  tcp6,tcp     nowait  root    /usr/local/sbin/uronode  uronode

Maak je gebruikt van xinetd, dan ziet het er zo uit.

service uronode
{
        disable         = no
        socket_type     = stream
        protocol        = tcp
        flags           = IPv6
        user            = root
        server          = /usr/local/sbin/uronode
        wait            = no
        instances       = 20
}

Hier wordt de “flags = IPv6” toegevoegd.

Nu moest ik nog wat aanpassingen doen aan me router en firewall om het werkend te krijgen. Dit is natuurlijk voor een ieder verschillend.
Verder heb ik bij me hosting provider nog een AAAA record aan gemaakt in de DNS server zodat je dat langen ipv6 adres niet hoeft te onthouden.
Nu wordt het pi1lap.packet-radio.net mooi omgezet naar een ipv6 adres  2a02:f6d:2d:0:212:3fff:fe2b:c66f

telnet -6 pi1lap.packet-radio.net 3694
Trying 2a02:f6d:2d:0:212:3fff:fe2b:c66f...
Connected to pi1lap.packet-radio.net.
Escape character is '^]'.
(pi1lap.packet-radio.net:uronode) login: pd2lt
*** Password required! If you don't have a password please email pd2lt@packet-radio.net for a password you wish to use.
Password:
[URONode v2.7]
Welcome pd2lt to the pi1lap.packet-radio.net packet shell.
       _ _ _
 _ __ (_) | | __ _ _ __
| '_ | | | |/ _` | '_ 
| |_) | | | | (_| | |_) |
| .__/|_|_|_|__,_| .__/
|_|               |_|



SystemD - pd2lt@pi1lap.packet-radio.net:

Werkt dus uit de kunst.

https://sourceforge.net/projects/uronode/
https://uronode.n1uro.com/