Bind bpq to ax25 interface

I’m using uronode as front end node, but i’m also like to connect to different packet software.
This time it’s linbpq. Lets go…..

First of all bpq32.cfg
Change the comport to COMPORT=/dev

PORT
 PORTNUM=1
 ID=Link Local
 TYPE=ASYNC
 PROTOCOL=KISS
 FULLDUP=0
 COMPORT=/dev
 SPEED=19200
 CHANNEL=A
 NOKEEPALIVES=0
 PERSIST=160
 SLOTTIME=180
 TXDELAY=180
 TXTAIL=23
 QUALITY=192
 MINQUAL=100
 MAXFRAME=4
 FRACK=5000
 RESPTIME=1000
 RETRIES=25
 PACLEN=128
 UNPROTO=APBPQ1,PI1LAP-5
 BCALL=PI1LAP-9
 L3ONLY=0
 DIGIFLAG=1
 DIGIPORT=0
 USERS=0
ENDPORT

Axports

root@gw:/usr/local/linbpq# cat /etc/ax25/axports
ax1     PI1LAP-9        19200   256     2       Linbpq pi1lap-9

Now the linbpq start file

setcap "CAP_NET_ADMIN=ep CAP_NET_RAW=ep CAP_NET_BIND_SERVICE=ep" linbpq

# Link local pi1lap-9
        echo "Starting ax1 "
        if grep ax1 /etc/ax25/axports ; then
        tmpfile="/tmp/$.startax5.pts"
        kissnetd -p 2 > "$tmpfile" &
        sleep 2
        attachthem () {
                read PTS1 PTS2
                kissattach -l $PTS1 ax1 44.137.31.73 || return=$rc_failed
                ifconfig ax1 44.137.31.73 netmask 255.255.255.224 up
                sleep 1
                sed -i "s,COMPORT=/dev/.*$,COMPORT=$PTS2," /usr/local/linbpq/bpq32.cfg
        }

        tail -n 1 $tmpfile | attachthem
        rm $tmpfile
        sleep 3
        else
               echo  "Error ax1 not found in the file axports"
                return="Failed"
        fi
        echo "$1 $return"

cd /usr/local/linbpq
sudo ./linbpq  >/dev/tty4

Ok let’s look it ok now

ps ax | grep kissattach

root@gw:/usr/local/linbpq# ps ax | grep kissattach
 5910 ?        S      0:00 kissattach -l /dev/pts/16 ax1 44.137.31.73
 6504 pts/19   S+     0:00 grep kissattach

Now have a look in bpq32.cfg

root@gw:/usr/local/linbpq# grep COMPORT=/dev bpq32.cfg
 COMPORT=/dev/pts/17

Here you see there is a PTS couple /dev/pts/16 and /dev/pts/17

So we are good to go.

pd2lt@uro.pd2lt.ampr.org-IPv6: r
Routes:
Link Intface Callsign  Qual Nodes Lock  QSO
---- ------- --------- ---- ----- ----  ---
>    ax1     PI1LAP-9   203     2         0

The route to pi1lap-9 is there in uronode. Let’s try a connect.

pd2lt@uro.pd2lt.ampr.org-IPv6: c pi1lap-9
Trying LAPBPQ:PI1LAP-9... <Enter> aborts.
Virtual circuit established to LAPBPQ:PI1LAP-9
Connected to PI1LAP-9.
Packet/Switch Node, Kortgene JO11VN

LAPBPQ:PI1LAP-9} BBS,URO,FPAC,APP,RMS,DX,JNOS,CHAT,C,B,I,N,R,P,U,V,S,MH
l
LAPBPQ:PI1LAP-9} Links
PI1LAP-5 PI1LAP-9 S=5 P=1 T=3 V=2

😉

2 thoughts on “Bind bpq to ax25 interface”

  1. hoi niels
    ik heb dus geprobeerd maar krijg tijdens het startscript een fout melding
    Starting ax8
    ax8 NL6NOD-4 115200 255 2 Linbpq Link AX25
    AX.25 port ax8 bound to device ax1
    SIOCSIFADDR: No such device
    ax8: ERROR while getting interface flags: No such device
    SIOCSIFNETMASK: No such device
    ax8: ERROR while getting interface flags: No such device
    als ik bpq dan opstart dan werkt hij wel alleen er ins giind bind naar ax25

    mvg Alex,nl0bsa

    1. Ha Alex,
      Dat zou kunnen kloppen.. Dit komt omdat je als je kissattach gebruikt hij altijd naar de eerste poort kijkt. Hij start altijd bij ax1 en dan zo oplopend. Probeer dit eens.
      /etc/ax25/axport
      ax1 NL6NOD-4 19200 256 2 Linbpq lin ax25

      en het scritp
      # Link local Linbpq
      echo “Starting ax1 ”
      if grep ax1 /etc/ax25/axports ; then
      tmpfile=”/tmp/$$.startax5.pts”
      kissnetd -p 2 > “$tmpfile” &
      sleep 2
      attachthem () {
      read PTS1 PTS2
      kissattach -l $PTS1 ax1 44.137.31.73 || return=$rc_failed
      ifconfig ax1 44.137.31.73 netmask 255.255.255.224 up
      sleep 1
      sed -i “s,COMPORT=/dev/.*$,COMPORT=$PTS2,” /usr/local/linbpq/bpq32.cfg
      }

      tail -n 1 $tmpfile | attachthem
      rm $tmpfile
      sleep 3
      else
      echo “Error ax1 not found in the file axports”
      return=”Failed”
      fi
      echo “$1 $return”
      73 Niels
      Zal het even aanpassen voor de duidelijkheid.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.