BPQether interfész

Innen: HamWiki
A lap korábbi változatát látod, amilyen HG2ECZ (vitalap | közreműködések) 2007. augusztus 26., 09:34-kor történt szerkesztése után volt. (apróbb javítások)
Ugrás a navigációhoz Ugrás a kereséshez

Mi ez?

A klasszikus csomagrádió AX.25 csomagját lehetséges etherneten keresztül a helyi hálózaton átvinni. Erre szolgál a BPQether interfész. A helyi hálózatból internetre kilépve azonban ez a megoldás nem alkalmas AX25 adattovábbításra, mivel a BPQether nem TCP/IP-re épül, így az első TCP/IP router eldobja a csomagját. De a switcheken átmegy, így LAN-on kiválóan működik. Tekintettel arra, hogy „egyszerű, mint a faék”, célszerű megismerkedni vele.

Megjegyzés: ha TCP/IP (pl. internet) felett akarunk AX.25 csomagot továbbítani, akkor erre az ax25ipd szoftver használható erre a célra.

BPQether keretfelépítés

  • Célcím (Destination MAC) = 0xFFFFFF FFFFFF - ethernet broadcast cím, azaz minden LAN-on levő eszköznek
  • Forráscím (Source MAC) = saját hálózati kártya MAC címe
  • Protokollazonosító (amely IPv4 esetén 0x0800 lenne) = 0x08ff
  • Tartalom:
    • 16 bites kerethossz, amely 5-tel nagyobb érték, mint az alábbi AX25 keret hossza
    • AX25 keret a felvezető és záró 0x7e nélkül, bitbeszúrás (bitstuffing) nélkül és a keretvégi CRC nélkül. Tehát csak az AX25 keret tartalma.

Mire használható

Mint a fentiekből látható, az AX.25 csomag változtatás nélkül kerül az Ethernetre. Ezáltal teljes egészében ugyanolyan értékű AX.25 kapcsolat alakítható ki rajta két helyi hálózaton levő számítógép között, mint amilyen a rádiók felhasználása esetén a rádión egymást látó számítógépek között.

Felhasználható a szomszédos, vezetéken összeköthető node-ok rádiómentes rendszerbe integrálásába, továbbá rádióamatőr csomagrádiós alkalmazás kipróbálására, tesztelésre.

Hogyan konfigurálható BPQether interfész Linux alatt?

Mindenekelőtt gondoskodjunk arról, hogy legyenek feltelepítve a következő csomagok: libax25, ax25-tools, ax25-apps. Debian vagy Ubuntu disztribúció esetén például

apt-get install ax25-apps ax25-tools

parancs fel is telepíti ezeket. Ha nincs a bpqether a kernelbe fordítva vagy még nincs betöltve modulként, töltsük be:

modprobe bpqether

Nézzük is meg a hatást:

root@hg2ecz:~# ifconfig bpq0
bpq0     Link encap:AMPR AX.25  HWaddr LINUX-1  
         [NO FLAGS]  MTU:256  Metric:1
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0 
         RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

Majd konfiguráljuk fel célszerűen a saját hívójelünkre:

root@hg2ecz:~# ifconfig bpq0 hw ax25 HG2ECZ-8 up

Ennek hatására:

root@hg2ecz:~# ifconfig bpq0
bpq0     Link encap:AMPR AX.25  HWaddr HG2ECZ-8  
         UP RUNNING  MTU:256  Metric:1
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0 
         RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

És innentől kezdve már csak a /etc/ax25/axports állományba kell egy

ether   HG2ECZ-8        38400   255     7       BPQether-en keresztül

bejegyzés, amelyből a leglényegesebb az első két paraméter, a formális név és az ifconfig-gal beállított hívójellel egyező hívójel, majd paracssorból egy

call ether hg2ecz-12

parancsot kiadhatunk, amit tcpdump parancssal a másik számítógépből monitorozva az alábbit kapjuk:

root@hg2ecz-12:~# tcpdump -i eth0 -ne
22:28:26.725455 00:40:95:30:7f:0a > Broadcast, ethertype Unknown (0x08ff), length 60: 
       0x0000:  1400 908e 648a 86b4 f890 8e64 8a86 b471  ....d......d...q
       0x0010:  3f00 0000 0000 0000 0000 0000 0000 0000  ?...............
       0x0020:  0000 0000 0000 0000 0000 0000 0000       ..............

Tehát a 0x0014-5=0x000F byte hosszú AX25 keret (célállomás hívójele+SSID, forrásállomás hívójele+SSID, Control mező, amely épp 0x3F, azaz SABM+, magyarul csatlakozás kérelem. Lásd AX.25 protokoll) kiküldésre került, innetől kezdve már a túloldalon levő node szoftvert kell beállítani és természetesen alatta a hálózati interfészt, amely fogadja a call paranccsal kezdeményezett hívást, majd válaszol rá.