
                       Waldemar Ogonowski 
                             SP2ONG


     -*- A M P R N E T -*-
        PORADNIK TCP/IP



                           TORUN 1994


     Broszura    ta    powstala   w   wyniku   coraz   wiekszego 
zainteresowania  protokolem  TCP/IP  ktory w naszym kraju powoli 
znajduje swoje miejsce a na swiecie jest juz od dawna stosowany. 
Jest  to pierwsze wydanie i moze byc niedoskonale wiec mile beda 
widziane  wszystkie  uwagi  ktore  beda  uwzglednione byc moze w 
kolejnej   edycji   tej   pozycji.  Zawarte  ponizej  informacje 
zaczerpniete  z  roznych pozycji na ten temat maja byc pomocne w 
poruszaniu   sie   po  podstawowych  poszczegolnych  uzytecznych 
uslugach jakie serwuje TCP/IP. 
Material   zawarty   w   tej   pozycji   moze  byc  kopiowany  w 
niezmienionej formie tylko w celach niekomercyjnych.
                                          
Torun 21-IV-1994
Waldek SP2ONG (ex SP8ONG) 

sp2ong@sr2box.by.pol.eu
sp2ong@gw.sp2yap.ampr.org
sp2ong@geofizyka.torun.pl


          T C P / I P
 
 
Co to jest TCP/IP ? 
===================

TCP/IP  (Transmission  Control  Protocol/Internet Protocol) jest 
wspolna  nazwa  rodziny  protokolow  i  aplikacji  uzywanych  do 
komunikacji  miedzy  komputerami  oraz  miedzy roznymi sieciami. 
Poczatkowo TCP/IP byl uzywany w sieci zwanej ARPANET ale obecnie 
uzywa  sie  go  miedzy  innymi  w  duzej  miedzynarodowej  sieci 
uniwersyteckiej, ktora ogolnie nazywa sie INTERNET. 
     AX25   jest   protokolem  komunikacyjnym,  ktory  dostarcza 
podstawowa  i  pewna lacznosc miedzy dwoma komputerami w postaci 
wymiany  pakietow (ramek). Ale na tym koniec. Wlasciwosci, takie 
jak  automatyczny  routing,  skrzynki  pocztowe  itd  musza  byc 
robione  z poziomu oprogramowania. Nawet gorzej, ograniczenie do 
8  didgipiterow  powaznie ogranicza mozliwosci zastosowania AX25 
do sieci duzej skali. 
Na  szczescie  AX25  dostarcza podstawy na ktorej inne protokoly 
komunikacyjne  moga  byc  umiejscowione,  dodajac  w  ten sposob 
ekstra   funkcjonalnosci.   W  swiecie  PACKET  RADIO  znane  sa 
protokoly   takie   NET/ROM,  ROSE.  Innym  zestawem  protokolow 
uzywanych  pod  AX25  jest  TCP/IP, bardziej znany jako Internet 
Protocol Suite. 
     TCP/IP  rozni  sie  od protokolow takich jak NET/ROM i ROSE 
tym,  ze nie byly poczatkowo przeznaczone do uzytku wraz AX25. W 
rzeczywistosci,  TCP/IP  nie  byl  projektowany pod zaden srodek 
lacznosci,  zostal  zbudowany  do pracy z kazdym srodkiem, ktory 
moze  transmitowac pakiety (ramki). TCP/IP jest oparty, podobnie 
jak   AX25,   na   zasadzie   tzw.   datagramow,   tzn  pakietow 
zawierajacych  pelne  adresy  nadawcy,  odbiorcy. Miedzy innymi, 
TCP/IP  dziala  w  ramach AX25, Serial Lines, sieciami Ethernet, 
sieciami Token Ring i sieciami swiatlowodowymi. Srodek lacznosci 
jako  taki  nie  musi  byc wiarygodny - protokol TCP/IP zapewnia 
wiarygodna komunikacje. 
     Ta niezaleznosc srodkow komunikacji oznacza, ze TCP/IP moze 
komunikowac  sie  nie  tylko  wewnatrz sieci lokalnej (LAN), ale 
pomiedzy  sieciami  tworzacymi  siec  szerokiego  obszaru (WAN). 
Uzytkownicy  nie  musza  znac  rodzaju kabli, czestotliwosci itd 
laczacych  ich  z  adresatem  i  nie  musza  znac  ilosci bramek 
(gateways)  pomiedzy  nimi  a  adresatem wystarczy nam znajomosc 
naszego najblizszego routera. 

W sklad rodziny TCP/IP wchodza nastepujace protokoly: 
 
FTP -    File Transfer Protocol umozliwiajacy transmisje zbiorow 
         ASCII  i  binarnych  miedzy  stacjami z zabezpieczeniem 
         dostepu  do  nich za pomoca hasla, ktore musi byc znane 
         stronie  przeciwnej i ograniczenie praw dostepu, np. do 
         tylko czytania zbiorow bez prawa zapisu i kasowania. 
SMTP -   Simple Mail Tansfer Protocol umozliwiajacy automatyczne 
         nadawanie przygotowanych wczesniej wiadomosci polaczone 
         z samoczynnym nawiazaniem polaczenia z adresatem. 
Telnet - program  emulujacy termninal umozliwiajacy bezposrednia 
         konwersacje.
TTYLink - zmodyfikowany  protokol  telnet  umozliwiajacy kontakt 
          klawiatura - klawiatura   pomiedzy   uzytkownikami   , 
         czasami okreslany jako CHAT np. w WNOS 

 
Oczywiscie sa to tylko najbardziej popularne protokoly wchodzace 
w TCP/IP.



Co potrzeba aby ruszyc na TCP/IP
================================

Komputer
-------

Oprogramowanie typu NOS (Network Operation System) jest dostepne 
na komputery: AMIGA, APPLE Macintosh, ATARI ST oraz IBM PC i ich 
klony.   Najbardziej   popularny   IBM   PC  z  MSDOS  moze  byc 
wykorzystany  w  szerokiej  klasie swoich typow tzn PC 8086, XT, 
AT,  386  oraz  486.  Komputer  musi miec jeden RS232 oraz jedna 
stacje  dyskow  oczywiscie  twardy  dysk  HD  jest polecany gdyz 
zwieksza komfort pracy ale nie jest konieczny. 




TNC 
--- 

TNC  (Terminal  Node  Controller)  do  pracy  w  TCP/IP musi byc 
uruchomiony  w  trybie  KISS. Dostepne TNC2 i ich klony wymagaja 
oprogramowania  TAPR ver 1.1.6 lub wyzsze lub NORD><LINK ver 2.3 
i wyzsze. Oczywiscie do pracy z KA9Q mozna wykorzystac Multimode 
Controller PK-232 ktory posiada tryb KISS 
     Ostatnio   popularne  i  tanie  modemy  typu  BAYCOM  mozna 
wykorzystac  do  pracy  dzieki driver AX25.COM na IBM napisanego 
specjalnie dla programow typu KA9Q np. miedzy autorstwa SP9VRC. 

RADIO 
----- 

Do pracy mozemy wykorzystac wszystkie dostepne radiotelefony FM 
typu  3001 oraz fabryczne radia ktore wykorzystujemy do pracy na 
Packet Radio.
Obecnie czestotliowosci pracy stacji TCP/IP sa silnie zwiazane z 
z  kanalami  gdzie pracuje sie na AX25 Packet Radio a wiec sa to 
kanaly   144.625   144.650   144.675  choc  w  miare  rozwoju  i 
dostepnosci  sprzetu  sieci  TCP/IP  beda przechodzily na osobne 
kanaly  i  na  430  Mhz z szybkoscia 9k6 aby poprawic szybkosc i 
sprawnosc polaczen. 

Oprogramowanie NOS 
------------------ 

Obecnie jest dostepna szeroka gama wersji NOS (Network Operation 
Sytem)  w  duzej  mierze na IBM PC. Sa dostepne wersje na AMIGE, 
APLLE, ATARI ST.
     Wersje  poszczegolnych  odmian  oprogramowania  NOS  czesto 
posiadaja nazwy od znaku wywolawczego autora: 
KA9Q 
WG7J (JNOS) 
PA0GRI 
GRINOS         oparty na PA0GRI przez N1BEE 
GRACILIS 
WNOS 
HRLNOS 
GPSNOS         Georgia Packet Switch 
WAMPES 
G1EMM 
PMNOS 
TNOS 

Wiekszosc komend w poszczegolnych wersjach NOS jest taka sama. 
Poszczegolne  wersje NOS klada rozny nacisk na dostepne uslugi i 
sa podobne, ale mozna podzielic je na trzy kategorie: 

PACKET SWITCH - KA9Q, GPSNOS, PA0GRI, GRACILIS, 
SERVICES - uslugi - WG7J (JNOS), TNOS
UI terminal - interfejs uzytkownika - WNOS, PMNOS, HRLNOS, TNOS

Na  przyklad  GPSNOS  jest  dedykowany  jako PACKET SWITCH i nie 
oferuje   innych   uslug.  WNOS  ma  bardzo  dobrze  dopracowany 
interfejs  uzytkownika  a  PMNOS  (  pod  OS/2  ) jeszcze wiecej 
oferuje w tej formie. 

Mozemy podzielic na kilka kategorii programy NOS:

network         -   NETROM, TCPI, AX.25, WAMPES AX25 routing
user-interface  -   dzielony ekran, klawisze funkcyjne, mysz
hardware        -   Standart RS232, DRSI, PACKTWIN, SCC,
                    Hig-Speed, Dialer
services        -   POP,   SMTP,  NNTP,  FINGER,  FTP,  TTYLINK, 
                     CALLBOOK, CONVERS, MAILBOX 

Oto krotkie charakterystyki niektorych wersji NOS: 

KA9Q 
     Autor: Phil Karn 
     Jest  podstawowa wersja na ktorej bazowaly pozostale wersje 
     NOS'a.

WG7J (znany czesto jako JNOS)
     Autor: Johan Reinalda WG7J/PA3DIS 
     Jest jedna z najbardziej rozwijanych wersji. 
     Bazuje   na  wersji  KA9Q  911229,  obecnie  dostepna  jest 
     wersja  JNOS 1.10c ktora jest ostatnia wersja tego programu 
     pod MSDOS.
     JNOS  nalezy  do  wersji  w  ktorych  sa  rozwijane  uslugi 
     (service).  WG7J  ma pelne mozliwosci typowego BBS'a i moze 
     swobodnie byc wykorzystywany w miejsce takich wersji bbs'ow 
     jak MSYS i W0RLI dajac uslugi poczty via SMTP i NNTP. 
     Wersje JNOS czesto sa wykorzystywane jako gateways pomiedzy 
     siecia Internet i amatorska siecia PACKET RADIO. 

PA0GRI 
     Autor: Gerard van der Grinten, PA0GRI 
     Wersja ta jest czesto uzywana przez innych autorow NOS jako 
     podstawa do wlasnych rozwiazan NOS. Obecna wersja to 2.0p 

GRACILIS 
     Autor: Don Lemley N4PCR 
            Milt Heath 
Gracilis  jest specjalna wersja NOS ktora korzysta z rozwiazania 
PackeTen  -  karta  ta  zbudowana  jest na specjalnym procesorze 
stosowanym w komunikacji firmy Motorola 68302

WNOS 
     Autor: Michel Bentrup DB3FL 
            Mike Chace G6DHU 
Bardzo   popularna  wersja  ze  wzgledu  na  przyjazny  inerfejs 
uzytkownika i chetnie przez to uzywany przez wielu kolegow. WNOS 
mial  jako jeden z pierwszych AX.25 autorouting i convers server 
ale  niekompatybilny  z  JNOS.  WNOS  byl  takze  jako  jeden  z 
pierwszych  ktory  korzystal  z  kompresji  LZW przy SMTP i NNTP 
dzieki czemu redukowal do ok 40 % przekazywany tekst co zwieksza 
efektywnosc przesylanych ilosci informacji. 

GPSNOS 
     Autor: B. Nebergall K4TQL 
Podstawa  tej  wersji jest KA9Q NOS 910420 i duzy nacisk autor w 
tej  modyfikacji  polozyl  na  optymalizacje  NOS  jako "switch" 
wykorzystujac  rozwiazanie  GRAPES  i  eliminujac typowe funkcje 
mailbox'a.

PMNOS 
     Autor: Walt Corey KZ1F 
Presentation   manager   NOS  -  jest  wersja  KA9Q  pod  system 
operacyjny OS/2. 

WAMPES 
     Autor: Dieter DK5SG / N0PRA 
WAMPES  jest  systemem  wykorzystywanym  na  komputerach z UNIX. 
Zawiera  wszystkie  podstawowe uslugi TCP, UDP i IP oraz zawiera 
tryb konferencji. Wersja ta jest dostepna na wiele odmian UNIX i 
miedzy innymi na bardzo popularny LINUX.



IP adres 
========
 
Kazda   stacja   aby  pracowac  na  TCP/IP  musi  posiadac  swoj 
indywidualny adres ktory ogolnie mozna przedstawic: 
 
                            K.X.Y.Z 
 
kazda  z czesci adresu K,X,Y,Z sklada sie z cyfry z przedzialu 0 
- 255. 
Czesc K odpowiedzialna jest za podzial na kilka klas sieci i tak 
numery: 
 
1 - 126 klasa A  
128 -191 klasa B 
192 -223 klasa C 
 
adresy  powyzej 234 przeznaczone sa dla klas D i E ale obecie sa 
nieuzywane. 
Radioamatorzy  naleza do sieci klasy A i maja przydzielony numer 
44  i  nazwe  sieci  AMPRNET ( AMateur Packet Radio NETwork) tak 
wiec  wszystkie adresy amatorskie w TCP/IP beda zaczynaly sie od 
cyfry  44. Pozostale cyfry podaja szczegolowy adres stacji i tak 
cyfra  X  odpowiedzialna  jest  za  podzial amatorskiej sieci na 
regionalne  sieci jest ona zwiazana z danym np. krajem i tak dla 
polskich  amatorow  zostal przydzielony numer 165 wiec wszystkie 
adresy  polskich  stacji  pracujacych  na  TCP/IP  beda  ogolnie 
wygladaly: 
 
                          44.165.Y.Z 
 
Pozostale cyfry tzn Y i Z rozlozone sa na podsieci regionalne na 
terenie  SP i tak np. okreg SP2 ma adresy pomiedzy 44.165.32.xxx 
do 44.165.47.xxx. 

SUBNET           zakres adresow
========= ===============================
TORUN     - 44.165.32.xxx  44.165.34.xxx 
WLOCLAWEK - 44.165.35.xxx  44.165.37.xxx
BYDGOSZCZ - 44.165.38.xxx  44.165.40.xxx
GDANSK    - 44.165.41.xxx  44.165.43.xxx 
ELBLAG    - 44.165.44.xxx  44.165.46.xxx

Hierarchiczne  uporzadkowanie  adresow  IP ulatwia komunikacje i 
przesylanie danych. 
Adresy  przydzielane  sa  przez  administratorow  sieci. Glownym 
administratorem  amatorskiej sieci w Internet jest Braian Kantor 
WB6CYT.  Koordynatorem na terenie SP jest SP5WCA ktory rozdziela 
lokalnym  administratorom na poszczegolne okregi zestawy adresow 
do  ich  dyspozycji. Jesli chcesz otrzymac adres aby pracowac na 
TCP/IP  zglos  sie  do  lokalnego  administratora  sieci TCP/IP, 
wykazy  lokalnych  administratorow  czesto sa w bbs'ach w dziale 
TCPIP oraz w dodatku na koncu tej pozycji. 





DOMAIN SYSTEM
=============

W  celu  ulatwienia  identyfikacji  komputerow  wprowadzono poza 
numerami internetowymi takze nazwe (domena). Nazwa ta sklada sie 
z kilku (zazwyczaj 4) czlonow oddzielonych kropkami i ma rowniez 
strukture  hierarchiczna.  Najbardziej  ogolna klasa umieszczona 
jest  po  prawej stronie, kolejne coraz wezsze klasy ustawia sie 
od  prawej  do  lewej,  najbardziej  po lewej znajduje sie nazwa 
komputera  w  sieci  lokalnej  i  tak np. adresy amatorow packet 
radio ktorzy naleza do domeny AMPR.ORG wyglada: 
 
                      SP2XYZ@SP2ABC.AMPR.ORG 
 
oznacza  to  uzytkownika  SP2XYZ  na  komputerze SP2ABC bedacy w 
podsieci   AMPR   (Amateur   Packet   Radio)   oraz   sieci  ORG 
(Organization) ktora stanowi czesc sieci Internetowej. 
W  pakiecie KA9Q istnieje tabela numerow oraz odpowiadajacych im 
nazw, tak wiec podajac adres w postaci nazwy system sam znajdzie 
mu  odpowiadajacy numer IP i informacja dotrze do adresata. Plik 
ten nazywa sie domain.txt i jego struktura wyglada nastepujaco: 

sp2ong.ampr.org.    IN   A    44.165.32.1 
sp3lyn.ampr.org     IN   A    44.165.53.2 






         T T Y L I N K 


     Komenda   ttylink   sluzy   do  inicjacji  polaczenia  typu 
klawiatura  -  klawiatura  z innym hostem. Dzielony ekran (split 
screen)  daje  komfortowy  sposob  lacznosci z operatorem innego 
komputera.  W  programach  NOS  sa  dwie  komendy  ktore steruja 
komunikatami w sesji ttylink:

- attended [ on | off] 

     komenda  ta  informuje  korespondenta  czy operator systemu 
jest  obecny  przy komputerze. Przy attended on jest realizowane 
polaczenie  z  operatorem systemu i czesto pojawia sie komunikat 
The system is attended. Przy attended off w zaleznosci od wersji 
NOS  jest roznie realizowana ta opcja, mozemy otrzymac komunikat 
The system is unattended lub Sysop is busy. Try again later. 

- motd <dowolny tekst> 

     komenda  ta pozwala ustawic tzw. wiadomosc dnia (message of 
the  day)  ktora  jest  wyswietlana  po  uzyskaniu  polaczenia z 
operatorem np motd "Michal QTH: Torun. Witam ...". 


Przebieg sesji ttylink 
====================== 

Jesli chcemy ropoczac sesje ttylink piszemy w trybie komend np: 

ttylink <hostanme>   np. ttylink sp3lyn

Jesli  docelowy  host  jest  osiagalny w sieci i operator obecny 
przy systemie otrzymamy komunikat: 

Welcome to TTY-Link at sp3lyn.ampr.org - The system is attended 
Jacek QTH: Wyrzysk. Witam ... 

i mozemy prowadzic lacznosc podobnie jak w na AX.25.
Z  drugiej  strony  jesli  mamy wlaczone attended on i inny host 
bedzie chcial nawiazac z nami polaczenie typu ttylink zostaniemy 
poinformowani  o tym sygnalem akustycznym i automatycznie pojawi 
sie nam ekran z sesja ttylik z komunikatem: 

Incoming  Telnet  session  2 from 44.165.53.2:1024 on Mon Jan 23 
18:05:12 1994 

Sesje  te mozemy zakonczyc przechodzac do trybu komend klawiszem 
<F10> i piszac close. 

Zapisywanie i wysylanie plikow 
============================== 

     Sesje  typu  ttylink (telnet) mozemy zapisywac do pliku lub 
wyslac plik typu ASCII do korespondenta. 

- record <nazwa_pliku> | off 
     W  otwarty plik zapisywane sa wszystkie informacje obierane 
     i przez nas wysylane w ramach danej sesji. Jesli jestesmy w 
     trakcie  sesji  telnet  np  typu ttylink i chcemy rozpoczac 
     zapis  musimy  przejsc  do  trybu  komend  klawiszem  <F10> 
     (prompt  net>  )i napisac np. record sp3lyn.txt i otrzymamy 
     komunikat  Recordnig into sp3lyn.txt i nastepnie naciskajac 
     klawisz  <ENTER>  powrocimy  do ekranu z sesja ttylink i od 
     tego  momentu  wszystko  bedzie  zapisywane  do  pliku. Aby 
     zakonczyc  zapis  nalezy  przejsc do trybu komend i napisac 
     polecenie  record off lub zapis jest zamykany automatycznie 
     po zakonczeniu sesji ttylink. 

- upload <nazwa_pliku> 
     Plik ktory chcemy wyslac musi byc typu ASCII, nie binarny. 
     Wyslany  plik  jest wyswietlany na ekranie korespondenta na 
     sesji  ttylink.  Jesli  chcemy  wyslac  plik  bedac w sesji 
     ttylink  przechodzimy  do  trybu  komend  klawiszem <F10> i 
     piszemy  np upload c:\nos\info.txt. Powrot do sesji ttylink 
     klawiszem  <ENTER>. Uwaga wyslany plik nie jest wyswietlany 
     na  naszym  ekranie  i  nie  ma  komunikatu  o  zakonczeniu 
     wyslania  pliku  dlatego  poki  nie  dojdzie  caly  plik do 
     korespondenta  i w tym czasie napiszemy cos do niego bedzie 
     to wplecione do wysylanego tekstu. 

Zakonczenie sesji ttylink. 
========================= 

Zamykanie sesji ttylink robimy komenda close: 

close [<numer_sesji #>]

Jesli  jestesmy w ttylink mode wracamy do trybu komend klawiszem 
<F10>  i  na  ekranie mamy prompt net> nastepnie piszemy komende 
close  bez  argumentow  taki  sposob zamyka biezaca sesje. Jesli 
mamy  kilka  jednoczesnie  otwartych roznych sesji powracajac do 
trybu  komend  i  piszac close bez numeru sesji zamykamy biezaca 
sesje.  Aby  zamknac  inne  sesje  piszemy  polecenie  session i 
otrzymamy wykaz otwartych sesji. Podajac numer sesji w poleceniu 
close np. close 2 zamykamy sesje numer 2. 




 FTP - FILE TRANSPORT PROTOCOL 


     Ftp  sluzy  do  transmisji  dowolnych zbiorow oraz zapewnia 
pelna  kontrole  poprawnosci  transmisji  danych. Generalnie ftp 
oferuje: 

-  transfer   zbiorow   tekstowych  typu  ASCII  oraz  binarnych 
   pomiedzy komputerami 
-  listowanie katalogow na odleglym komputerze 
-  kasowanie plikow na odleglym komputerze
-  tworzenie i kasowanie katalogow na odleglym komputerze

Kazdy host oferujacy uslugi FTP moze miec rozny poziom uprawnien 
wykonywanych polecen. Poziom uprawnien jest definiowany w pliku 
ftpusers  (opis  w  dodatku).  W  tym  pliku zdefiniowane sa dla 
poszczegolnych  znakow  ich  hasla  oraz  katalog  do ktorego ma 
dostep  oraz  poziom uprawnien. Poziom uprawnien okresla co dany 
uzytkownik  moze  robic tzn czy tylko czytac pliki czy dodatkowo 
np. moze wpisywac nowe. Generalnie czesto systemy maja konto dla 
wszystkich  nieznanych  uzykownikow  jako  anonymous lub guest z 
dowolnym  haslem.  Uzytkownik  ktory  zaloguje  sie  na FTP jako 
anonymous lub guest ma tylko uprawnienia do czytania plikow. 

Rozpoczecie sesji FTP 
================== 

     Komendy  ftp  uzywamy  do  rozpoczecia  sesji FTP, skladnia 
polecenia jest nastepujaca:

ftp <host>  np ftp 44.165.38.14

Komendy w trybie FTP 
==================== 

Po poprawnym zalogowaniu sie do systemu na ftp uzyskujemy prompt 
ftp>  i  od  tego  momentu  mozemy  wydawac  polecenia  ktore sa 
wykonywane  w  zaleznosci  od  poziomu uprawnien jaki posiadamy, 
jesli  nie  mamy  mozliwosci  wykonania  jakiejs  komendy system 
informuje nas komunikatem: 

ftp> put test.txt 
550 Permission denied 
ftp>  

Oto wykaz najczesciej uzywanych komend dostepnych w sesji FTP:

- dir [<remote_file>|remote_directory>] 
wyswietla liste zbiorow znajdujacych sie w aktulanym katalogu na 
odleglym  komputerze  jesli podamy komende dir bez argumentu lub 
liste  zbiorow  w  podanym katalogu ktory podajemy jako argument 
komendy np. dir docs. Jesli w komendzie dir podamy jako argument 
nazwe pliku to otrzymamy informacje tylko o wskazanym pliku.

- pwd
wyswietla nazwe biezacego katalogu na odleglym komputerze (print 
working directory) 

- cd <remote_directory> 
zmiana katalogu na odleglym  komputerze 

- get <remote_file> [<local_file>] 
powoduje   przeslanie   zbioru  o  podanej  nazwie  z  odleglego 
komputera  na dysk lokalnego komputera. Jesli podamy w komendzie 
get tylko nazwe pobieranego pliku to o tej samej nazwie zostanie 
on   zapisany  na  lokalnym  komputerze.  Czasami  na  systemach 
opartych  na  UNIX  nazwy  plikow maja dlugosc 16 znakow co jest 
niemozliwe  w  systemach  MSDOS  wiec  pobierajac  taki  plik  w 
komendzie  get podajemy drugi argument ktory pozwala nam zmienic 
nazwe  pliku pod jaka bedzie zapisany na lokalnym komputerze np. 
get  jnos_doc_msword.doc  jnos_msw.doc.  Zobacz  na opis komendy 
type jesli chcesz pobierac plik inny niz ASCII. Jesli zbior jest 
wiekszy  niz  10,000  znakow  rob  transfer takiego zbioru tylko 
wtedy  kiedy  kanal  radiowy  jest  stosunkowo  spokojny !. Uzyj 
komendy  abort  (w  trybie  komedn  net>)  jesli  chesz przerwac 
transfer zbioru nim bedzie kompletny. 

-mget <remote_file> [<remote_file> ... ]
powoduje  przeslanie  podanych  plikow  z odleglego komputera na 
dysk  lokalnego  komputera.  Nazwy  zbiorow  moga zawierac znaki 
uogolniajace np mget *.txt powoduje pobranie wszystkich plikow z 
rozszerzeniem .txt. 
 
-put <local_file> [<remote_file>]
powoduje   przeslanie  podanego  zbioru  z  lokalnego  dysku  do 
odleglego  komputera.  Jesli  podamy  komende  put readme.txt to 
zbior  tez  zostanie  o  tej  samej  nazwie zapisany na odleglym 
komputerze.  Mozemy  ten  sam  plik zapisac pod inna nazwa wtedy 
nalezy napisac np. put readme.txt czytaj.to. 

-mput <local_file> [<local_file> ... ] 
powoduje  wyslanie  wymienionych plikow z lokalnego komputera do 
odleglego   komputera.   Nazwy   zbiorow   moga  zawierac  znaki 
uogolniajace  np. mput *.txt powoduje wyslanie wszystkich plikow 
z lokalnego komputera o rozszerzeniu .txt. 

-type [ ascii | binar ] 
ustawia typ przesylanych danych (tekstowe lub binarne) domyslnie 
jest  tryb ascii. Komende te wydaje sie przed uzyciem komend get 
i put.

-dele <remote_file> 
komenda  ta  sluzy  do  usuwania  wskazanego  pliku  na odleglym 
komputerze 

-mkdir <remote_directory> 
komenda  ta  sluzy  do  tworzenia  nowego  katalogu  na odleglym 
komputerze 

-rmdir <remote_directory> 
kasowanie istniejacego katalogu na odleglym komputerze, kasowany 
katalog przed usunieciem musi byc pusty.
-quit 
zakonczenie sesji z odleglym komputerem 

Przyklad sesji FTP 
==================

Ponizej podany jest przebieg sesji ftp przez stacje sp3lyn: 

net> ftp sp2ong

FTP session 1 connected to sp2ong 
220- sp2ong.ampr.org, JNOS FTP version 1.10 (80286-*-SP2ONG) 
220  Ready on Mon Feb 28 09:24:41 1994 
Enter user name (sp3lyn): anonymous
331- Anonymous login OK. Please give e-mail address as password!
331 Enter PASS command 
Password: sp3lyn@sp3lyn.ampr.org
230 Logged in as anonymous, restrictions apply 
ftp> dir 
200 Port command okay 
150 opening data connection for LIST /public 
ka9q/         18:23  5/04/93      hamradio/      10:23  1/02/93 
util/         12:32  1/12/93      docs/          13:14  6/07/93
readme  2,32  11:20  1/03/93 
5 files 
ftp> cd ka9q 
257 "public/ka9q" is current directory 
ftp> dir 
200 Port command okay 
150 Opening data connection for LIST /public/ka9q 
autoexec.nos   4,321  23:30  2/05/93 
ftp> ascii 
ftp> get autoexec.nos autoexec.txt 
200 Port command oky 
150 Opening data connetion for RETR autoexec.nos (4321 bytes) 
226 File sent Ok
ftp> quit 
ftp> Goodbye! 
FTP ssesion 2 closed: EOF 
Hit enter to continue

Uzytkownik  sp3lyn  zalogowal  sie  na host sp2ong.ampr.org jako 
anonymous  ale  jesli  posiada swoje konto moze podac swoje dane 
tzn  w  miejsce  anonymous swoj znak oraz swoj password (haslo). 
Nastepnie wykonal komende dir otrzymujac wykaz dostepnych plikow 
oraz  katalogow.  Kolejna  komenda  wykonana  to zmiana katalogu 
cd ka9q  i nastepnie znow dir w wyniku ktorej otrzymalismy wykaz 
zawartych   plikow   w   katalogu   ka9q.  Nastepnie  pobieranie 
interesujacego   nas  pliku  np  autoexec.nos  komenda  get  ale 
poniewaz plik jest typu ASCII wczesniej wydajemy komende ascii i 
w  drugiej  kolejnosci  get autoexec.nos autoexec.txt - pobranie 
pliku  autoexec.nos  z  zmiana nazwy na auotexec.txt. Jesli plik 
pobierany  bylby  typu  binarnego  *.exe,  *.zip,  *.com  itp to i nalezy napisac binar . Po pobraniu przez 
nas interesujacych plikow konczymy sesje komenda quit. 







            M A I L


Jedna   z   najbardziej   uzytecznych   uslug   na  TCP/IP  jest 
elektroniczna  poczta (e-mail). Nie ma potrzeby, aby adresat byl 
w danym momencie przy swoim komputerze. Co wiecej, twoj komputer 
nie  musi byc zawsze wlaczony i nie musisz laczyc sie z PBBS aby 
przeczytac  swoj list, twoja wiadomosc bedzie czekala w lokalnym 
gateway  SMTP  i  bedzie  przekazana  do twojego komputera wtedy 
kiedy uruchomisz swoj system NOS.

NOS  wysyla  i odbiera poczte przy uzyciu protokolu zwanego SMTP 
(Simple  Mail  Transfer  Protocol). Obecnie jest to zdecydowanie 
dominujacy  protokol  na  sieci  Internet.  W  miare  jak  sieci 
radio-amatorskie  przechodza  na  protokol  IP,  SMTP jest coraz 
czesciej uzywany. 
Mamy  dwie  rozne  drogi  aby  odczytac  i  wyslac swoja poczte: 
poprzez  mailbox  w NOS lub zewnetrzny program do obslugi poczty 
PCELM. 
Nadawca listu musi znac dokladny adres odbiorcy zawierajacy jego 
nazwe  i  nazwe  komputera,  na  ktorej  znajduje  sie  skrzynka 
pocztowa  odbiorcy.  W  szczegolnych przypadkach moze okazac sie 
konieczna  znajomosc  drogi przesylania listu. W przypadku kiedy 
system  nie  ma mozliwosci przeslania listu pod podany adres ( z 
roznych  przyczyn np. bledny adres) nadawca otrzymuje informacje 
zwrotna  z  podaniem  przyczyny,  dlaczego  list  nie  dotarl do 
adresata.  Poczta przychodzaca do uzytkownika gromadzona jest na 
komputerze   w  specjalnym  pliku.  Plik  ten  posiada  atrybuty 
umozliwiajace czytanie i zapis jedynie przez danego uzytkownika, 
dlatego  nie  ma mozliwosci odczytania korespondencji przez inna 
nieuprawniona osobe. 
Jak  juz wczesniej wspomniano, aby wyslac list nalezy znac adres 
kolegi,  do  ktorego  chcemy  wyslac  list.  Oto  kilka sposobow 
adresowania listow: 

Podstawowa  forma  adresu SMTP to <uzytkownik>@<wezel sieci> np. 

sp2xxx@bbs.sr2box.ampr.org 

Inne formy adresowania: 

<uzytkownik>@[address IP] np. vk2fex@[44.136.28.1] 

Poczta  zostanie  przeslana  bezposrednio  do  wezla o wskazanym 
adresie  IP.  Forme te stosujemy jesli wezel, z ktorego wysylamy 
list  nie  potrafi  rozpoznac  nazwy wezla docelowego, lub jesli 
zalezy nam na naprawde bezposrednim dostarczeniu poczty. 
 
<uzytkownik>%<wezel-2>@<wezel-1> 
  np. so9odc%sp2xde.ampr.org@gw.sp9kby.ampr.org 
W  tym  wypadku  poczta zostanie przeslana najpierw do wezla-1 a 
nastepnie  wezel-1  posle ja do wezla-2. Sposob ten stosuje sie, 
jezeli  chcemy wymusic okreslona sciezke przesylania poczty, lub 
gdy wezel-2 nie jest osiagalny bezposrednio. 
 
@<wezel-2>:<uzytkownik>@<wezel-1> 
  np. @gw.sp9kby.ampr.org:so9odc@sp9xde.ampr.org 
Efekt  jest  taki  sam,  jak  w  poprzednim przykladzie. Do bazy 
danych   wezlow  Internetowych  mozna  wprowadzac  "drogowskazy" 
kierujace  ruchem  pocztowym,  tzw. "MX records". Np. jesli jest 
pozadane, aby poczta do wezla sp2xxx.ampr.org byla kierowana nie 
do  niego,  lecz do bbs.sr2box.ampr.org. MX record wyglada wtedy 
tak: 
 
sp2xxx.ampr.org      IN      MX      0       bbs.sr2box.ampr.org 
    
Jezeli wiec wysylamy list do sp2xxx@sp2xxx.ampr.org to zostanie 
on  najpierw  skierowany  do  bbs.sr2box.ampr.org,  a  ten wezel 
pokieruje list dalej. 
Program typu NOS moze poslugiwac sie MX recordami (jest to opcja 
"smtp  usemx").  Jezeli nie ma ustawionych takich "drogowskazow" 
wtedy program dostarcza poczte bezposrednio. 
Przy  okazji krotka informacja o konwencji nazewnictwa wezlow na 
sieci  typu  IP.  Nazwa  wezla  sklada sie z dwoch czesci: nazwy 
wlasciwej oraz koncowki (tzw. suffix) np. bbs.sr2box.ampr.org => 
"bbs.sr2box" to nazwa, a "ampr.org" to suffix. 
Jest  pozadane,  aby koncowka nazw wezlow nalezacej do logicznej 
grupy  (domeny  -  mowi  sie  tez  "domain  suffix") wezlow byla 
identyczna.  Np. koncowka nazw wszystkich wezlow w Obserwatorium 
Astronomicznym  to  "oa.uj.edu.pl".  "Domain  suffix" oddaje tez 
pozycje  domeny  w  pewnej  hierarchii:  "oa"  to  Obserwatorium 
Astronomiczne,  "uj"  to Uniwersytet Jagiellonski, "edu" to siec 
edukacyjna, "pl" to Polska. 
Inne czesto uzywane skroty w kontekscie nazw to: 
gov = goverment 
com = commercial 
ac  = academic 
ed  = education 
org = organization 
 
Skroty w odniesieniu do niektorych krajow: 
pl = Polska 
nl = Netherlands - Holandia 
at = Austria 
de = Deuschland - Niemcy 
su = Soviet Union - Zwiazek Radziecki 
be = Belgia 
itd. 
 
Uwaga:  brak  nazwy kraju oznacza domyslnie USA, skad "wyszly na 
swiat" sieci komputerowe. 
Dla  sieci radio-amatorskiej przyjeto koncowke "ampr.org" "ampr" 
= AMateur Packet Radio), "org" = organizacja. 
Klopoty  zwiazane  z wysylaniem poczty SMTP przy uzyciu programu 
NOS: 
-  jezeli  po  rozkazie  "s  <address>"  nie ma odpowiedzi przez 
   dluzszy  czas  oznacza to, ze program oczekuje na odpowiedz z 
   bazy  danych  (ktora  moze  byc na innym wezle) apropos wezla 
   docelowego. 
- jezeli otrzymuje komunikat "unknown host" lub podobny, oznacza 
to,  ze  NOS  nie  otrzymal  zadnych  informacji  na temat wezla 
docelowego.  Nalezy  wtedy  ponowic  probe  za  jakis czas, gdyz 
informacja  z  bazy danych moze dotrzec z duzym opoznieniem, lub 
wyslac   list  bezposrednio  na  znany  numer  IP.  Na  sieciach 
radio-amatorskich,   czesto   zdarza   sie,   ze  wezly  nie  sa 
rejestrowane w globalnych bazach danych. 
-  Niektore  przekazniki  pocztowe  "obcinaja"  najwyzszy  bit z 
tresci listow. Bezpowrotnie niszczy to zbiory typu 7plus. Jezeli 
chcemy przesylac poczta zbiory binarne, lepiej jest posluzyc sie 
koderem  UUencode/UUdecode. Nie jest on tak efektywny jak 7plus, 
ale nie uzywa najwyzszego bitu. 





Simple  Mail  Transport Protocol 
             (SMTP) 


Programy  NOS  uzywaja  do  wysylania i odbioru poczty protokolu 
ktory  sie  nazywa  Simple Mail Transport Protocol (SMTP). Kiedy 
poczta jest odebrana SMTP wyswietla informacje na ekranie: 

New mail arrived for <user> from <nadawca> 

np. 

New mail arrived for sp2ong from <sp3lyn@sp3lyn.ampr.org> 

Jesli masz wpisane w autoexec.nos komende smtp timer SMTP bedzie 
sprawdzal  zawartosc  katalogu  /nos/spool/mqueue  gdy ustawiona 
jest  opcja  smtp  route  tzn  wszystkie listy w tym katalogu sa 
sprawdzane i jesli sa lokalne to dolaczane do mailbox'a, a jesli 
nie to sa wysylane do adresata. 

- smtp kick 
komenda ta wymusza sprawdzanie czy jest jakas poczta do wyslania 
poza czasem ustawionym w smtp timer. 

-smtp list 
lista wiadomosci ktore czekaja do wyslania via smtp np. 

S  Job   Size   Date   Time   Host    From
L  534   2456   02/16  18:23  sp3lyn sp2ong@sp2ong 
   to: sp3lyn@sp3lyn 

-smtp kill <job_number> 
kasowanie   z   kolejki   do   wyslania   wiadomosci  o  numerze 
<job_number>  ktory  jest  podany  w  kolumnie  Job po komendzie 
smtp list. 





   POST OFFICE PROTOCOL (POP) 


     Post  Office  Protocol  (POP)  jest bardzo dobra usluga dla 
radioamatorow.  Poniewaz  charakter  pracy stacji indywidulanych 
jest  zalezny  od  ich  czasu  jakim dysponuja tzn nie zawsze sa 
obecni  na czestotliwosci wiec dobrze jest wtedy adresowac listy 
do  takiego  uzytkownika  na jego lokalny system pocztowy, ktory 
pracuje  24  godziny  na  dobe.  W momencie jak stacja na TCP/IP 
uruchomi  sie  moze  korzystajac wlasnie z POP sprawdzic lokalna 
skrzynke  pocztowa  czy  jest  do  niej  poczta, jesli tak to ja 
automatycznie pobierze i umiesci w mailbox'ie wlasnego systemu a 
w lokalnej skrzynce pocztowej zostana skasowane listy. Nastepnie 
mozemy  wlasna  poczte odczytac juz na wlasnym systemie czy to w 
mailbox'ie czy poprzez program do obslugi poczty PCELM. 

Jak uzywac POP
============== 

     Aby  korzystac  z uslugi POP nalezy umiescic w autoexec.nos 
nastepujace polecenia, ktorego skladnia wyglada tak: 

popmail  addserver  <host>  [<sekundy>] [hh:mm-hh:mm] <protocol> 
                    <mailbox> <username> <password> 

 host  -  nazwa symboliczna lub IP adres servera lokalnego POP z 
          ktorego pobieramy poczte
 sekundy  -  co ile sekund ma byc sprawdzana 24 godzinna lokalna 
            skrzynka pocztowa
 hh:mm-hh:mm    -   pomiedzy  jakimi  godzinami  bedzie  uzywany 
                    protokol 
 protocol  -  wersja  protokolu  ktory  bedzie uzyty, generalnie 
              obecnie uzywa sie POP3
mailbox  -  nazwa naszej skrzynki na tym hoscie, generalnie jest 
            to nasz znak wywolawczy (callsing)
username  - nasz identyfikator na tym hoscie, generalnie jest to 
             nasz znak wywolawczy (callsing)
password - nasze haslo 

uwaga:  username i password musza byc w pliku popusers na server 
z  ktorego  korzystamy  uslug  POP  wiec  dane  te  nalezy podac 
operatorowi systemu, ktory wpisze w plik popusers. 

przyklad: 

popmail addserver 44.165.34.14 7200 POP3 sp2bzw sp2bzw xxxxx 

uzytkownik sp2bzw za pomoca POP3 co 7200 sekund bedzie sprawdzal 
lokalny server POP o adresie 44.165.34.14 

-popmail kick <host>
uaktywnia  protokol  POP do danego hosta poza wyznaczonym czasem 
podanym w komendzie popmail addserver . Komende te mozemy wpisac 
w   autoexec.nos  zaraz  po  komendach  popmail  addserver  .... 
Spowoduje  to,  ze  zaraz po uruchomieniu naszego systemu bedzie 
sprawdzony lokalny serever POP. 








         M A I L B O X


NOS  dostarcza  usluge  zwana  mailbox  lub  BBS (Bulletin Borad 
System). Mailbox umozliwia czytanie i wysylanie listow, czytanie 
i  wysylanie  biuletynow,  listowanie  katalogow  dostepnych dla 
uzytkownika  i  pobierania plikow w systemie UUDECODE, umozliwia 
realizowanie  lacznosci z inna stacja na AX.25 oraz wiele innych 
uzytecznych  uslug.  Nalezy zwrocic uwage w tym miejscu ze wiele 
systemow  na  NOS  ma  rozne  zestawy  serwowanych uslug poprzez 
mailbox. Najlepszym wykorzystaniem mailbox'a jest uzywanie go do 
obslugi  poczty  choc  programy zewnetrzne jak PCELM daja lepsze 
mozliwosci  w  tej formie ale wymagaja dodatkowej wolnej pamieci 
aby uruchomic je z poziomu programu NOS. 

     Polaczenie  z  mailbox'em innego systemu mozemy zrealizowac 
komenda:
- stosujac komende telnet <hostname> 
lub  lepsza  forma  jest  skorzystanie  z komendy ttylink, ktora 
dostarcza tzw split screen (dzielony ekran). Piszemy wiec: 

ttylink <hostname> 23

jak  widac to polecenie sklada sie z trzech czesci w odroznieniu 
od  komendy telnet po nazwie hosta lub IP adresie piszemy liczbe 
23  co  oznacza  ze  ma  byc  realizowane polaczenie typu TELNET 
ktoremu numer portu odpowiada liczba 23. Jesli zapomnimy napisac 
liczby  23  to  bedzie podejmowana proba polaczenia typu TTYLINK 
czyli  konwersacji  klawiatura  -  klawiatura.  Wersja  MFNOS ma 
ulatwiona  obsluge  TELNET z split screen wystarzy podac komende 
stelnet <hostname>. 

Twoj lokalny mailbox 
==================== 

Nie  musisz  uzywac  komendy telnet, aby polaczyc sie z odleglym 
mailbox'em,    zeby    zostawic   informacje   przeznaczona   do 
uzytkownikow  tego hosta. Mozesz polaczyc sie z swoim mailbox'em 
i  odpowiednio  adresujac list bedzie on automatycznie przeslany 
do tego hosta. Aby uruchomic swoj mailbox napisz w trybie komend 
polecenie  bbs. Nastepnie po podaniu swoich danych login i haslo 
mozesz wyslac list na odlegly komputer komenda: 

s callsign@nazwa_odleglego_komputera 
np.
s sp3lyn@bbs.sr2box.ampr.org 

Po  zakonczeniu wprowadzania tresci listu bedzie on wyslany przy 
uzyciu  protokolu SMTP na komputer o nazwie bbs.sr2box.ampr.org. 
Patrz wiecej na temat poczty do rozdzialu o MAIL. 

Oto   przebieg  rozpoczecia  sesji  telnet  po  wydaniu  komendy 
telnet sp2ong:

Trying sp2ong:telnet... 
Telnet session 1 connected to sp2ong 
 
JNOS (sp2ong.ampr.org) 
 
Please use your callsign to login. Thank you. 
 
login: sp3lyn 
Password: xxxx

Po  poprawnym  zalogowaniu  sie  i podaniu hasla otrzymamy tekst 
powitalny oraz prompt mailboxa np: 
 

[JNOS-1.10-IHM$] 
 
Welcome sp3lyn, 
to the bbs.sr2box.ampr.org TCP/IP Mailbox (JNOS 1.10 (80286)). 
Currently 1 user. 
                        Bydgoszcz, Poland, JO83XC. 
                   Type 'A NEWS' for latest BOX-news! 

You have 2 messages - 1 new. 
New mail in: TCPIP AMSAT DX
Area: sp3lyn Current msg# 1. 
?,A,ALI,B,D,F,H,I,IH,IP,J,K,L,M,R,S,U,V,W,X,Z > 
 
Mailbox  informuje  nas  jakie  nowe  listy doszly od ostatniego 
zalogowania   do   tego   systemu   w  poszczegolnych  obszarach 
tematycznych oraz adresowanych do nas. 

KOMEDNDY MAILBOX'a 
================== 

     Mailbox  w  zaleznosci  od wersji ma szeroka game komend do 
sterowania  przez  uzytkownika.  Skrot  tych  komend  w  postaci 
pierwszych liter mamy podany w prompt mailbox'a. 


?
lista dostepnych rozkazow: 
Mail   : Area Kill List Read Send Verbose 
File   : Download Upload What Zap 
General: ?-Help ALIas Bye CONVers Finger Help Info IHeard 
         IProute Jheard Mbox Operator Xpert 


Area            lista obszarow (tematow) wiadomosci 
AF              lista obszarow z opisem 
AN              lista   obszarow   z   nowymi  wiadomosciami  od 
                ostatniego zalogowania 
A name          przejscie do danego obszaru wiadomosci 
 
ALIas            lista  dostepnych  aliasow  w systemie jesli sa 
              zdefiniowane 
 
B               Bye ( rozlaczenie sie) 
 
 
CONV [chan]     przejscie do trybu konferencji 
                domyslnie  jest  kanal  0, lub na wskazany kanal 
[chan]. 
 
D filename      pobranie pliku typu ASCII 
DU              pobranie pliku binarnego w systemie uuencoded  

F <username>    informacje  o  podanym  uzytkowniku  zapisane  w 
                systemie

H               Help 
H x             opis wskazanej komendy np x 
 
I               informacja o systemie 
 
IH              lista slyszanych pakietow IP                  
 
Jh              lista slyszanych stacji na wszystkich portach 
 
K # #           usunie wiadomosci o wskazanych numerach np K 1 2 
KM              usunie wszystkie wlasne listy przeczytane 
 
L               lista nowych wiadomosci 
LA              lista wszystkich wiadomosci w danym obszarze  
LB              lista tylko wiadomosci ktore sa typu biuletyn 
LM              lista nowych wiadomosci adresowanych do nas 
LL n            lista ostatnich n wiadomosci np LL 3 
LS xyz        lista wiadomosci ktore maja ciag liter 'xyz' w 
                tytule 
L> xyz          lista wiadomosci kierowanych do: XYZ 
L< xyz          lista wiadomosci od: XYZ 
 
Mbox            lista     uzytkownikow     skrzynki    aktualnie 
                podlaczonych 
ML              lista   uzytkownikow,   ktorzy   laczyli  sie  z 
                mailbox'em 
ML call         wykaz kiedy dana stacja laczyla sie z maibox'em 
MS              stan mailbox'u: czas pracy, ilosc pamieci, 
                ilosc uzytkownikow. 
 
R n             czytaj wiadomosc o podanym numerze              
RH n            czytaj list z naglowkiem, podobnie jak komenda V
RM              czytaj wszystkie moje nowe nieczytane listy 
 
REGISTER        wpisanie swoich danych do systemu 
 
S  adres        wyslij wiadomosc prywatna na adres          
SB              wyslij biuletyn na adres     
SR              odpowiedz na wlasnie przeczytany list 
SR n            odpowiedz na numer listu n       
 
 
U file          zapis pliku typu ASCII na dysku sr2box 
 
V n             czytanie listu z naglowkiem                     
 
W               lista zbiorow na dysku                   
W path          lista zbiorow w wskazanym katalogu (path) 
 
X               przelaczanie w tryb: expert/noexpert 



Powyzszy  wykaz  komend  odpowiada  JNOS 1.10 w wersji jako BBS. 
Niektore  wersje  maja  poszerzony zestaw komend dostepnych np o 
komendy  GATEWAY:  Connect  Ports  Telnet  -  ktore  umozliwiaja 
polaczenie  sie  z innymi stacjami na AX25 komenda Connect lub z 
innym systemem typu TCP/IP komenda Telnet.
 
Connect <nazwa_portu> <call>  
pozwala  polaczyc  sie  z  inna stacja na AX25 przez podany port 
ktorego nazwe otrzymamy wykonujac komende Ports

Telnet <hostname>  
pozwala polaczyc sie z innym systemem typu TCP/IP 

Ports 
wykaz i nazwy dostepnych portow radiowych w danym systemie przez 
ktore mozemy pracowac. 

Opisany  zestaw  komend moze roznic sie w zaleznosci od wersji i 
przeznaczenia  programu  typu NOS ale wiekszosc komend jest taka 
sama na poszczegolnych wersjach. 






    A X 2 5   S E R V I C E


     Programy  NOS umozliwiaja normalna prace protokolem na AX25 
czyli  standardowym protokolem PACKET RADIO. Pozwala wiec laczyc 
sie  z lokalnymi stacjami, ktore nie uzywaja TCP/IP oraz PBBS na 
AX25. 

Rozpoczecie lacznosci na AX25 
============================= 

Mamy do dyspozycji dwie komendy : 

connect nazaw_portu callsing 
split nazwa_portu callsing 

W  celu rozpoczecia lacznosci na AX25 z inna stacja musimy podac 
nazwe  portu  radiowego  oraz znak stacji wolanej. Druga komenda 
split  (dostepna  w  JNOS)  daje komfortowy tryb pracy na AX25 w 
postaci  dzielonego  ekranu,  w  ktorym  jest wydzielona linia w 
dolnej  czesci  ekranu,  w  ktorej wpisujemy tekst, ktory ma byc 
wyslany  do  korespondenta, a pozostala czesc ekranu przenaczona 
jest  na  tekst  odebrany  i  nasz  tekst  wyslany,  ktory  jest 
wyrozniony od tektu odebranego. 
Po  wydaniu  polecenia  np.  split  2m  sp3lyn  nastepuje  proba 
uzyskania polaczenia z wskazana stacja przez dany port radiowy w 
postaci komunikatu na ekranie: 

Trying SP3LYN on 2m ... 

Jesli dojdzie do polaczenia z dana stacja uzyskamy komunikat: 

AX25 session 1 connected to sp3lyn 

i  od  tej  chwili  mozemy  prowadzic  typowa lacznosc na Packet 
Radio. 

Aby  zakonczyc  sesje  na  AX25  przechodzimy  do  trybu  komend 
klawiszem  F10 (prompt net> ) i piszemy polecenie disconnect lub 
mozemy uzyc komendy close. 

W  ramach  sesji na AX25 mozemy uzywac polecen do wyslania pliku 
tekstowego  upload <filename>  lub  tez  komendy  do zapisywania 
tresci,   ktora  przychodzi  w  trakcie  sesji  AX25  -  komenda 
record <filename>  (zakonczenie  zapisu  w  trakcie  sesji  AX25 
piszemy record off). 





      SIECIOWE INFORMACJE 


Osobna  czesc  komend  w NOS stanowia komendy, ktore dostarczaja 
informacji  o  sieci  i uzytkownikach oraz status programu NOS i 
mailbox'a.

ax25 heard 
Wyswietla   liste  slyszanych  stacji  na  AX.25  na  wszystkich 
zdefiniowanych portach.
Na przyklad: 

Interface  Station    Time since send  Pkts sent 
2m         SP2ONG-5     0:00:00:15          112 
Station    Time since heard  Pkts rcvd :
SR2BOX-5    0:00:00:06             88  : 
SR2DBY-2    0:00:00:23            139  : 
SR2DTO-2    0:00:01:45             23  : 
Pierwsze  dwie  linie  podaja  informacje  o  hoscie,  z ktorego 
pracujemy i ilosc pakietow wyslanych przez port 2m. 
W  nastepnych  liniach  mam liste stacji slyszanych na porcie 2m 
czas  jaki  minal  od  ostatniego slyszanego pakietu oraz liczbe 
slyszanych pakietow wymienionej stacji w liscie. 

ax25 flush 
komenda ta pozwala wyczyscic liste slyszanych stacji 

finger [<user>][@<host>] 
komenda  ta pozwala uzyskac informacje o odleglym komputerze lub 
o  znanych  uzytkownikach  na  tym systemie jesli ta usluga jest 
dostepna.  Piszac  np. finger @44.165.38.14 otrzymamy informacje 
jacy uzytkownicy sa podlaczeni w danej chwili na tym hoscie oraz 
liste  znanych  uzytkownikow  przez ten system. Piszac nastepnie 
np.  finger sp3lyn@44.165.38.14 otrzymamy informacje o wskazanym 
uzytkowniku   jesli   te   informacje   system  zawiera.  Dobrym 
wykorzystaniem  tej  funkcji  jest  sprawdzanie  jakie stacje sa 
slyszane na odleglym hoscie bez koniecznosci laczenia sie.

conf         wykaz users na konferencji (krotka forma) 
convers      wykaz users na konferencji (dluga forma) 
iheard       wykaz stacji slyszanych na TCP/IP
info         informacja o systemie

ping <host> 
komenda  ta  pozwala  nam  sprawdzic  czy  odlegly komputer jest 
osiagalny  w  sieci  TCP/IP  i jak dlugi czas jest potrzebny aby 
uzyskac  potwierdzenie odbioru danych. Pozwala to nam ocenic jak 
mocno  obciazona  jest siec w zaleznosci od podanych czasow. Np. 
jesli po komendzie ping 44.165.152.34 otrzymamy odpowiedz: 

44.165.152.34: rtt 5023 

oznacza ze dany host jest osiagalny i czas potwierdzenia pakietu 
kontrolnego trwal ok 5 sekund (podane czasy po komendzie ping sa 
w milisekundach) 

trace [<iface> [off | <btio_flag> [<tracefile>]]] 
komenda  ta  uzywana  jest  do monitorowania na wybranym porcie. 
Flagi   kontrolne  zezwalaja  lub  zabraniaja  oraz  determinuja 
informacje wyswietlana na sesji monitorowania klawisz <F9>.

Flagi  Broadcast/Type/Input/Output  (BTIO)  ustawiaja  co ma byc 
wyswietlane. 

     B=1   wlaczony   filtr   na   Broadcast.   Tylko   ramki  z 
           wyszczegolnionymi  adresami  beda  wyswietlane. Ramki 
           typu Broadcast beda nie wyswietlane.
     B=0   wylaczony filtr Broadcast 
     T=2   Naglowki  sa  decodowane  i wyswietlane dane: ASCII & 
           Hex 16 znakow na linie. Znaki ktore nie sa mozliwe do 
           drukowania wyswietlane sa w postaci kropek. 
     T=1   Naglowki  sa  dekodowane i wyswietla tylko dane ASCII 
           64 znaki na linie 
     T=0   Naglowki sa dekodowane ale dane nie wyswietlane 
     I=1   Wlaczone sledzenie ramek przychodzacych 
     I=0   Wylaczone sledzenie ramek przychodzacych 
     O=1   Wlaczenie sledzenie ramek wychodzacych 
     O=0   Wylaczene sledzenie ramek wychodzacych 

Domyslnie  jest  ustawione,  ze monitorowanie jest skierowane na 
ekran  ale  mozna  to  zmienic  podajac  nazwe  pliku i kierowac 
monitorowanie   do   wskazanego   pliku   na  dysku.  Wylaczanie 
monitorowania odbywa sie poprzez ustawienie wszystkich flag na 0 
np. trace 2m 000 lub trace 2m off. 
mbox status 
Wyswietla  status  o naszym mailbox'ie tzn kto jest podlaczony i 
co robi np. 

User      State     S#   Where
sp2abc    CMD       145  44.165.45.99:1027 
sp3xyz    LOGIN     149  44.165.53.99:1028 

Jest  dwoch uzytkownikow jeden jest w trybie komend a drugi jest 
w  trakcie  logowania  sie na nasz system. Podane sa IP adresy z 
ktorych pracuja. 

tcp status [<tcb_adres>] 
komenda  ta uzyta bez argumentow opcjonalnych wyswietla tabele z 
informacjami dla wszystkich sesji TCP np. 
Pierwsze  7  linii  to  statystyka  na  poziomie TCP zawierajaca 
liczbe  odebranych  ramek  (tcpInSegs),  liczba  wyslanych ramek 
(tcpOutSegs),   liczba   retransmitowanych  ramek  spowodowanych 
kolizjami     (tcpRetransSegs),     liczba    biezacych    sesji 
(tcpCurrEstab),  liczba  sesji  otwartych  przez  odlegle  hosty 
(tcpPassiveOpens),  liczba  sesji otwartych przez lokalnych host 
(tcpActiveOpens).  W  tabeli  ponizej  danych  statystycznych sa 
sumaryczne  informacje  o  wszystkich  istniejacych polaczeniach 
TCP.  "&TCB" - TCP adres, Tcv-Q i Snd-Q liczba znakow bedacych w 
kolejce  do odebrania i wyslania. local socket and Remote socket 
podaje  IP  adresy  i porty na lokalnym i odleglym hoscie, State 
podaje status danej sesji (Established - sesja zalozona) 

tcp kick <tcp_adrs> 
jesli  dane  sa  w kolejce do wyslania (co mozemy zobaczyc w tcp 
 status)  mozemy wymusic retransmisje danych bedacych w kolejce. 
Komendy  tej  mozemy  probowac  wtedy  gdy  polaczenie jest typu 
'stuck' w tcp status.




         D O D A T K I 
 
DODATEK A
========= 

-*- PROCEDURY NOS DLA PROGRAMOW TYPU JNOS  ver 1.10 -*- 
JAK UZYWAC FTP (File Transfer Protocol): 
  1.Uruchom NOS. Czekaj az bedzie prompt: "jnos>". 
  2.Napisz "FTP callsign <cr>"  aby rozpoczac sesje FTP. 
  3.Po prompcie "Login:" podaj swoj callsign <cr>. 
    Po prompcie "Password:" podaj swoje haslo <cr>. 
    Typowe  podstawowe  typy  Login  moga  byc:  twoj  callsign, 
     "guest", lub "anonymous". 
  4.Napisz "DIR <cr>",  aby otrzymac wykaz katalogu (directory). 
    Napisz "CD subdirname/subdirname <cr>", aby zmienic katalog. 
  5.Napisz  "TYPE  <cr>"   wyswietla  jaki  jest  ustawiony  typ 
    transferu plikow. 
    Napisz  "TYPE  A  <cr>",   aby  ustawic transfer plikow typu 
    ASCII. 
    Napisz  "TYPE  I  <cr>,"   aby  ustawic transfer plikow typu 
    IMAGE (BINARY). 
  6.Napisz "GET remotefile <cr>",  aby pobrac plik. 
    Napisz   "GET  remotefile  con  <cr>",   aby  odebrany  plik 
    obejrzec na ekranie swojej konsoli. 
    Napisz  "GET  remotefile  myfile  <cr>",   aby pobrac plik i 
    zapisac na swoim dysku jako "myfile". 
    Napisz  "PUT myfile remotefile <cr>",  aby wyslac "myfile" i 
    zapisze go jako "remotefile" 
  7.INNE KOMENDY: 
    a.Napisz "ABORT <cr>",  aby zatrzymac transfer pliku. 
    b.Napisz  "DELE  remotefile <cr>",  aby usunac plik z remote 
      dir. 
    c.Nacisnij F10,  aby powrocic do "nos>" prompt. 
    d.Nacisnij <cr>, aby powrocic do biezacej sesji FTP. 
    e.Aby  wyswietlic status sesji nacisnij F10 nastepnie napisz 
      "SE <cr>". 
      biezaca sesja jest oznaczona znakiem "*". 
    f.Aby  przejsc  do innej sesji nacisnij F10 nastepnie napisz 
      "SE  number  <cr>" nastepnie nacisnij <cr>, aby przejsc do 
      nowej sesji. 
    g.Aby  zamknac  biezaca sesje nacisnij F10. Nastepnie napisz 
      "CLOSE <cr>". 
 
JAK WYKONAC POLACZENIE NA AX25 PACKET: 
  1.Uruchom NOS.  Czekaj az pojawi sie prompt: "jnos>". 
  2.Napisz  "split 2m callsign <cr>" aby zainicjowac ax25 Packet 
    polaczenie. 
  3.INNE KOMENDY: 
    a.Nacisnij F10,  aby powrocic do trybu komend: "jnos>". 
    b.Nacisnij <cr>, aby powrocic do biezacej sesji na Packet. 
    c.Aby  wyswietlic status sesji nacisnij F10 nastepnie napisz 
      "SE <cr>". biezaca sesja jest oznaczona znakiem "*". 
    d.Aby  przejsc  do innej sesji nacisnij F10 nastepnie napisz 
      "SE  number  <cr>" nastepnie nacisnij <cr>, aby przejsc do 
       nowej sesji. 
    e.Aby  zamknac  biezaca sesje nacisnij F10. Nastepnie napisz 
      "CLOSE <cr>". 
    f.Aby  wyslac  plik  typu  ASCII do innego systemu w trakcie 
      sesji AX25 nacisnij F10. 
      Nastepnie napisz "UPLOAD /dirname/filename <cr>". 
 
JAK URUCHOMIC TELNET: 
  1.Uruchom NOS.  Czekaj az pojawi sie prompt: "nos>". 
  2.Napisz "TELNET callsign <cr>"  aby zainicjowac sesje TELNET. 
  3.Po  "connected"  bedzie  wyswietlony status oraz zapytania o 
    LOGIN i PASSWORD. 
  4.INNE KOMENDY: 
    a.Nacisnij F10  aby wrocic do trybu komend: "jnos>". 
    b.Nacisnij <cr> aby wrocic do biezacej sesji TELNET. 
    c.Aby  wyswietlic status sesji nacisnij F10 nastepnie napisz 
      "SE <cr>". biezaca sesja jest oznaczona znakiem "*". 
    d.Aby  przejsc  do innej sesji nacisnij F10 nastepnie napisz 
      "SE  number  <cr>"  nastepnie nacisnij <cr> aby przejsc do 
       nowej sesji. 
    e.Aby  zamknac  biezaca sesje nacisnij F10. Nastepnie napisz 
      "CLOSE <cr>". 
    f.Aby  wyslac  plik  typu  ASCII do innego systemu w trakcie 
      sesji   TELNET  nacisnij  F10.  Nastepnie  napisz  "UPLOAD 
      /dirname/filename <cr>". 

JAK UZYWAC KOMENDY TRACE: 
  1.Bedac  w  trybie  komend "jnos>" napisz "TRACE vhf nnn <cr>" 
    gdzie "nnn" jest nastepujace: 
                                      Display Display Display 
                                      HEADERS HEADERS HEADERS 
                                              DATA    DATA 
                                                      HEX 
                                     +-------+-------+-------+ 
              Wyswietlanie WYLACZONE :   0   :   0   :   0   : 
      Wyswietla PRZYCHODZACE Packets :  010  :  110  :  210  : 
        Wyswietla WYCHODZACE Packets :  001  :  101  :  201  : 
                  Wyswietla WSZYSTKO :  011  :  111  :  211  : 
                                     +-------+-------+-------+ 
 SKROTOWY WYKAZ KOMEND NOS: 
Nacisnij F10 aby powrocic do trybu komend "nos>".
Nastepnie: 
  Napisz   "AX25   HEARD   <cr>"   aby  wswietlic  liste  stacji 
   slyszanych. 
  Napisz   "AX25   FLUSH   <cr>"   aby  wyczyscic  liste  stacji 
   slyszanych. 
  Napisz "AX25 KICK <cr>" aby wymusic transmisje Packet. 
  Napisz "AX25 RETRY n <cr>" aby ustawic liczbe powtorzen ramek. 
  Napisz "EXIT <cr>" aby wyjsc z NOS. 
  Napisz "IP S <cr>" aby wyswietlic IP status. 
  Napisz "PARAM AX0 255 <cr>"  aby wylaczyc tryb KISS w TNC. 
  Napisz  "PING  callsign  <cr>"  pytanie o stacje. Jesli bedzie 
   wyswietlony adres Packet to znaczy ze stacja jest na kanale 
  Napisz "RO <cr>"  aby wswietlic tablice routes. 
  Napisz "SE <cr>"  aby wyswietlic status sesji. 
  Napisz "SO <cr>"  aby wyswietlic socket status. 
  Napisz "T S <cr>" aby wyswietlic status TCP. 
  Napisz "T S nnnnnnnnn <cr>"  wyswietla szczegolowy status TCP. 
   (gdzie: "nnnnnnnnn" jest TCB#.) 
  Napisz "? <cr>"  wyswietla komendy. 
  Napisz  "!  <cr>"  aby  przejsc do DOS shell. Nastepnie napisz 
  "EXIT <cr>" aby wrocic do NOS. 
Uwagi: 
-  opisane  procedury  moga  troche  roznic  sie w zaleznosci od 
   wersji programu KA9Q, ale roznice moga byc nieznaczne. 


DODATEK B 
=========

Przyklad autoexec.nos 
################################################################
#             SETUP FOR JNOS 1.10 by SP2ONG   1.III.94 
################################################################ 
#  Miscellaneous stup 
################################################################

# dla XT wylaczyc 
isat on 

log yes 
mem debug off 
mem ibuf 2048 

# dla baycom modem 5
mem ni 0

watchdog on 
strace on 
 
################################################################
# Set up domian defaults 
################################################################
 
domain cachesize 20 
domain suffix ampr.org. 
 
################################################################
# Station Identification 
################################################################
 
ax25 mycall sp2XXX-5 
host name sp2XXX.ampr.org 
 
################################################################
# Set up the TNC COM2
################################################################
 
attach asy 0x2f8 3 ax25 2m 1024 256 9600 

################################################################
# BAYCOM MODEM 
# attach packet 0x60 2m 5 1500 

 
################################################################
# Start network service 
################################################################
 
start ax25 
start telnet 
start finger 
start ttylink 
start smtp 
start ftp 
start pop3
 
################################################################
# Set Up PORT 2 meter 
################################################################
 
ifc 2m netm 0xff000000 
ifc 2m broad 44.255.255.255 
ifc 2m ipaddress 44.165.XX.XX 
ifc 2m descr "144.625 MHz" 
ifc 2m mtu 256 
ifc 2m tcp mss 200 
ifc 2m tcp win 1000
ifc 2m tcp timer linear 
ifc 2m tcp blimit 25 
ifc 2m tcp irtt 30000 
################################################################
# Set up AX.25  
################################################################

ifc 2m ax25 version 2 
ifc 2m ax25 maxframe 1 
ifc 2m ax25 paclen 256 
ifc 2m ax25 retry 20 
ifc 2m ax25 window 2048 
ifc 2m ax25 timertype org 
ifc 2m ax25 irtt 4000 
ifc 2m ax25 t3 0 
ifc 2m ax25 t4 1800 

ax25 ttycall sp2XXX 

ax25 digi 2m off 
ax25 hsize 15 
mode 2m vc 
 
################################################################
# Set up the mailbox  
################################################################
 
third-party on 
smtp timer 900
smtp usemx off
smtp kick 


mbox tmsg "Please use your callsign to login. Thank you.\n" 
mbox attend on
mbox td 1800 
mbox sendq no 
mbox newmail on 

################################################################
# Set up POPMail - pobieranie poczty z lokalnej skrzynki
################################################################ 

pop add 44.165.XX.XX 3600 pop3 sp2XXX sp2XXX ***** 

################################################################
# IP CONFIGURATION 
################################################################
 
ip add 44.165.XX.XX 
ip ttl 25 
ip rtim 240 
ip hport 2m 

 
################################################################
# ARP  
################################################################
 
arp eaves 2m 
arp poll 2m 
arp sort yes 
arp add [44.255.255.255] ax25 2m QST
 
################################################################
# INNE  
################################################################
 
lzw bit 16 
ftp tdisc 1800 
eol standard trace 2m 311 
popmail kick

############################################################### 
# Routing 
###############################################################

route add default 2m 
route add 44.165.38.0/24 2m 
route add 44.0.0.0/8 2m 44.165.38.14 

Uwagi do komendy route:
Komenda  ta  informuje  system  o  trasach  polaczen  na IP i ma 
nastepujaca skladnie: 

route  add  <docelowy_adres>[/bits] default <iface> [<gateway> | 
direct] [metric] 

Komenda  ta  ustawiamy  trasy polaczen w protokole IP do systemu 
lub wybranej grupy adresow poprzez interfejs ewentualnie poprzez 
stacje posredniczaca gateway lub lokalny IProuter. Przyklady:
route add default 2m
oznacza  ze  wszystkie  ramki  nie  wyszczegolnione  w komendzie 
router beda kierowane na interfejs o nazwie 2m. 

route add 44.165.53.2/32 2m 44.165.38.14 

oznacza  ze wszystkie ramki do adresu 44.165.53.2 beda kierowane 
przez  interfejs o nazwie 2m do lokalnego IProutera 44.165.38.14 
ktory pokieruje dalej ramki

route add 44.165.38.0/24 2m

oznacza  ze  wszystkie  ramki  kierowane  do  adresow ktore maja 
poczatkowy  adres  44.165.38.xx  beda  kierowane  na interfejs o 
nazwie 2m 

route add 44.0.0.0/8 2m 44.165.38.4 

oznacza  ze  wszystkie ramki adresowane do jakiegokolwiek adresu 
zaczynajacego  sie od 44.xx.xx.xx (czyli wszystkie inne adresy w 
sieci AMPRNET) ktory wczesniej nie zostal wymieniony w komendzie 
route  beda  przkazane poprzez interfejs o nazwie 2m i nastepnie 
do lokalnego gateway 44.165.38.4 ktory przekaze je dalej 

Wlasciwe  ustawienie  tras  polaczen  jest  niezbedne aby system 
funkcjonowal  poprawnie  i  znal w jakim kierunku i poprzez jaki 
interfejs  ma  wysylac  ramki do okreslonych adresatow lub grupy 
adresow. 

Usuniecie informacji o trasie dokonuje sie komenda: 

route drop <docelowy_adres> <iface> 
np route drop 44.165.38.5 2m 



DODATEK C 
========= 

Plik FTPUSERS 

Poziomy uprawnien: 
Nazwa:        wartosc     
FTP_READ        1       /* Czytanie plikow */ 
FTP_CREATE      2       /* Tworzenie nowych plikow */ 
FTP_WRITE       4       /* Nadpisywanie i kasowanie plikow */ 
AX25_CMD        8       /* AX.25 gateway operation allowed */ 
TELNET_CMD      16      /* Telnet gateway operation allowed */ 
NETROM_CMD      32      /* NET/ROM gateway operation allowed */ 
SYSOP_CMD       64      /* Remote sysop access allowed */ 
EXCLUDED_CMD    128     /* user jest nie akceptowany */ 
/* 256 and 512 are used in PPP*/ 
NO_SENDCMD      1024    /* Zabronione uzycie komendy send */ 
NO_READCMD      2048    /* Zabronione uzycie komendy read */ 
NO_3PARTY       4096    /* Zabronione third-party mail */ 
IS_BBS          8192    /* user jest BBS'em */ 
IS_EXPERT       16384   /* user jest expertem */ 
NO_CONVERS      32768   /* Zabronione uzycie komendy convers */ 
NO_ESCAPE       65536   /* Default is no escape char */ 
NO_LISTS        131072  /* Nie wyswietla Mheard w mailbox */ 

Format  danych  w  pliku  FTPUSERS  w  ktory  ustawiamy  poziomy 
uprawnien   dla   poszczegolnych  uzytkownikow  naszego  systemu 
wyglada nastepujaco:

name password /rootdir #perm 
 
password   -   moze  byc  *  wtedy  haslo  podane  przez  danego 
uzytkownika moze byc dowolne.
Jesli jako name uzyjemy slowo "univperm", wtedy akceptowany jest 
kazdy  znak,  ktory  nie  jest  wymieniony w pliku FTPUSERS i ma 
odpowiedni  poziom  uprawnien,  ktory jest wyszczegolniony w tej 
karcie np:
univperm * /public 9

dowolny  uzytkownik,  ktory  polaczy  sie  z  naszym systemem ma 
mozliwosc  czytac  pliki,  czytac  i  wysylac listy, korzystac z 
konferencji oraz moze robic polaczenia na AX25.
 


DODATEK D
========= 

Pliki ALIAS & REWRITE 
===================== 

Poczta wysylana 
--------------- 
Program  PCELM ktory jest uzywany do tworzenia poczty korzysta z 
pliku ALIAS i przed umieszczeniem listu w katalogu /spool/mqueue 
jest analizowany plik ALIAS i odpowiednio poczta jest adresowana 
jesli  dany  alias  wystepuje  w  przeciwnym przypadku pozostaje 
tylko  oryginalny adres. Kiedy SMTP Client uaktywnia sie pobiera 
poczte z w/w katalogu i wysyla ja w jedno z dwoch miejsc: 

1.  Jesli  poczta jest adresowana do odleglego hosta SMTP Client 
    wysyla ja do SMTP Server odleglego hosta. 
2.  Jesli  poczta  jest  adresowana do uzytkownika naszego hosta 
    SMTP  Client  wykonuje  lokalne bezposrednie polaczenie (nie 
    przez siec) z naszym SMTP Server 

Poczta przychodzaca 
------------------- 
Przychodzaca  poczta  jest  przejmowana przez SMTP Server. Jesli 
poczta  jest z odleglego hosta (typowa sytuacja), docelowy adres 
poczty  jest w pierwszej kolejnosci sprawdzany z plikiem REWRITE 
a  nastepnie ALIAS. Pliki te moga byc uzyte do przeadresowywania 
poczty. 

Plik REWRITE 
------------ 
Jesli  chcemy ulatwic sobie adresowanie naszej poczty albo jesli 
chcemy  wyslac poczte w nietypowy sposob np poczte do wiecej niz 
jednego  adresata korzystamy z plikow ALIAS i REWRITE ktore maja 
swoje miejsce w katalogach: /nos/spool/rewrite i /nos/alias. 
     Plik  REWRITE  daje duza elastycznosc w adresowaniu poczty, 
szczegolnie  uzyteczny  do  manipulacij niekompletnymi adresami, 
niedokladnymi adresami oraz adresami hierachicznymi. 
Dzieki temu plikowi mozemy orginalny adres zmienic na nowy adres 
w innym formacie. 
Kazdy  rekord  w pliku REWRITE jest w pojedynczej linii i sklada 
sie  z  dwoch  pozycji  oddzielonych  od siebie spacja. Pierwsza 
czesc  dotyczy  orginalnego  adresu  a  druga  odpowiada za nowy 
format adresu np: 
*@* $1%$2@bbs.ar2box.ampr.org 
oryginalny  adres  jest  przedstawiony  jako  *@*. Gwiazdka jest 
znakiem, ktory zastepuje dowolna czesc oryginalnego adresu w tym 
przypadku  dowolnego  user i dowolny mailhost (user@mailhost) np 
sp2zyx@sp2abc. 
Druga  czesc ( $1%$2@bbs.sr2box.ampr.org) jest wzorem jak nalezy 
przeadresowac  orginalny  adres.  Zmienne  $1  i  $2 odpowiadaja 
odpowiednio  pierwszej  gwiazdce i drugiej gwiazdce (maksymalnie 
moze byc 9 zmiennych) wiec w naszym przykladzie adres oryginalny 
sp2zyx@sp2abc bedzie wygladal sp2zyx%sp2abc@bbs.sr2box.ampr.org 
Innymi   slowy   ogolnie  wszystkie  adresy  user@mailhost  beda 
zamieniane na user%mailhost@bbs.sr2box.ampr.org. 
     Nalezy  wspomniec o jeszcze jednej opcji stosowanej w pliku 
REWRITE.  Gdy  NOS  analizujac  plik REWRITE trafi na odpowiedni 
wzor  adresu,  ktory  nalezy zmienic i zmieni go zgodnie z nowym 
wzorem  i  jesli  w  wierszu tym znajduje sie na koncu wiersza w 
trzecim  polu litera r oznacza to, ze system ma ponownie wykonac 
analize pliku REWRITE, ale juz z nowym adresem np: 

*@ve* $1%ve$2@wa3nbc 
*@ve*.ca $1@ve$2 r 
Oto sposob wykorzystania tego wzoru: list zostal zaadresowany do 
np ve3qer@ve3bbs.ca w wyniku skanowania pliku REWRITE system NOS 
natrafil  na  wzor  bedacy  w  drugiej  linii,  ktory  odpowiada 
zaadresowanemu  listowi  i  zmieni  go  na nowy format zgodnie z 
wzorcem czyli na ve3qer@ve3bbs, ale poniewaz w trzecim polu jest 
litera  r  ktora  wymusza  ponowne  skanowanie od poczatku pliku 
REWRITE  ale juz z nowym adresem. Teraz pierwsza linia odpowiada 
nowemu  wzorcowi  i  ostatecznie  adres  zostanie przepisany na: 
ve3qer%ve3bbs@wa3nbc. 

Plik ALIAS 
---------- 

Z  pliku  alias  korzysta SMTP Server do adresowania poczty oraz 
zewnetrzne  programy  do  obslugi  poczty  np PCELM. Na przyklad 
jesli w pliku alias mamy: 

jacek sp3lyn@sp3lyn.ampr.org 

Mozemy  wyslac  list  do  sp3lyn  adresujac  do  jacek  a system 
automatycznie  przeadresuje  ten list na sp3lyn@sp3lyn.ampr.org. 
Mozemy  ten  plik  uzyc  do  np  rozsylania tego samego listu do 
roznych adresatow np: 

friends sp3lyn@sp3lyn.ampr.org sp2bzw@bbs.sr2box.ampr.org 

jesli   wiec   wyslemy   list  na  adres  friends  to  ten  list 
automatycznie  zostanie  rozeslany  do wszystkich, ktorych w tej 
linii wymienilismy na poszczegolne hosty. 

Oto  trzy  wazne punkty ktore nalezy przestrzegac przy tworzeniu 
aliasu: 

a.  alias  musi  sie zawsze zaczynac w pierwszej kolumnie i musi 
    byc nazwa lokalna tzn nie moze zawierac znaku @ 
b.  musza byc po jednej spacji pomiedzy kazdym polem w pliku 
c.  jesli  lista  odbiorcow  jest  dluga mozemy kontynuowac ja w 
    nastepnym  wierszu,  ale  warunek aby nie rozpoczynal sie od 
    pierwszej kolumny musi byc jedna spacja

Na przyklad: 

dxman sp2bmx@bbs.sr2box.ampr.org sp2abc@sp2abc.ampr.org 
 dx@bbs.sr2box.ampr.org sp3lyn@sp3lyn.ampr.org

gdzie przed dx@bbs.sr2box.ampr.org jest jedna spacja
Jesli  adresujesz  poczte  do  dxman  NOS  umieszcza ja zwykle w 
katalogu  /nos/spool/mqueue.  Kiedy  SMTP  Client  przetwarza te 
poczte  i  poniewaz  adres  jest  bez  @ tzn. ze jest to lokalna 
poczta wiec robi wewnetrzne polaczenie z lokalnym SMTP Server. 
     SMTP  Server  czyta  plik ALIAS i robi kopie tego listu do: 
sp2bmx@bbs.sr2box.ampr.org,               sp2abc@sp2abc.ampr.org 
dx@bbs.sr2box.ampr.org  i sp3lyn@sp3lyn.ampr.org. Poniewaz kazdy 
z  nich  nie  jest  lokalnym odbiorca wiec SMTP Server umieszcza 
poszczegolne  kopie  listow  w katalogu /nos/spool/mqueue. Kiedy 
nastepnym  razem SMTP Client bedzie przetwarzal poczte, listy te 
poniewaz  nie  sa dla lokalnego uzytkownika, wysle je na odlegle 
hosty zgodnie z adresami. 
     Nalezy  miec  na  uwadze jeszcze jedna sprawe poniewaz SMTP 
Server  przetwarza  kazda  poczte  poprzez plik ALIAS wiec jesli 
ktos  wysle  poczte  np do dxman@nasz_host to jego list zostanie 
rozeslany  do  wszystkich  odbiorcow wymienionych przy definicji 
aliasu dxman. 





DODATEK E 
=========

Do kogo zwrocic sie po adres w AMPRNET. 
---------------------------------------

# 44.165.xxx.xxx * AMPR.ORG Amateur Packet Radio Domain Internet 
Addresses 
#                            POLSKA 
# --------------------------------------------------------------
Ponizej  podane  sa  serie  adresow przydzielone na poszczegolne 
okregi  i  znaki  administratorow okregowych. Do nich nalezy sie 
zwracac o adres IP. 
# -------------------------------------------------------------- 
# 
# -*- SP1 -*- 
# 44.165.16.xxx do 44.165.31.xxx   
# Administrator: SP1NQN 
# Tadeusz Swietochowski 
# Nowowiejska 3/38 
# 76-200 Slupsk 
# 
# -*- SP2 -*- 
# 44.165.32.xxx do 44.165.47.xxx   
# Administrator: SP2ONG  
# Waldemar Ogonowski 
# ul.Rydygiera 15/109 
# 87-100 Torun 
# 
# -*- SP3 -*- 
# 44.165.48.xxx do 44.165.63.xxx  
# Administrator: SP3UQS 
# Piotr Sczepanski 
# Osiedle Winiary 24 m 6 
#   PoBox 42 
# 60-967 Poznan 9 
# tel. 23-32-47 
# 
# -*- SP4 -*- 
# 44.165.64.xxx do 44.165.79.xxx   
# Administrator: SP4DGN 
# Jerzy Mironiuk 
# ul. Pomorska 79a 
# 15-546 Bialystok 
# tel. 43-13-77 
# 
# -*- SP5 -*- 
# 44.165.80.xxx do 44.165.95.xxx   
# Administrator: SP5WCA 
# poprzedni: SP5UGK, SP5SMP 
# 
# -*- SP6 -*- 
# 44.165.96.xxx do 44.165.111.xxx   
# Administrator: SP6XRA 
# Witold Hanakul.  
# Trentowskiego 17 
# 54-430 Wroclaw 
# poprzedni: SP6NVK 
# 
# -*- SP7 -*- 
# 44.165.112.xxx do 44.165.127.xxx  
# Administrator: SP7MGD 
# Slawomir Niemkiewicz 
# Mlodzianowska 11/17 m  
# 526-600 Radom 
# 
# -*- SP8 -*- 
# 44.165.128.xxx do 44.165.143.xxx   
# Administrator: SP8CGR 
# Andrzej Mazur 
# Slaska 64 
# 22-400 ZAMOSC 
# 
# -*- SP9 -*- 
# 44.165.144.xxx do 44.165.159.xxx   
# Administrator: SP9VRC 
# Pawel Jalocha 
# Rynek Kleparski 14/4a 
# 31-150 KRAKOW 
# 
# Komentarz: struktura adresow: 
# 
Dla  SP  przydzielony  zostal  blok  adresow  44.165.  Do naszej 
dyspozycji  pozostaje  zatem  16  bitow  adresu. Aby ekfektywnie 
wykorzystac  przyznany  nam blok adresow, a jednoczesnie ulatwic 
przyszle  routowanie  miedzy okregami, uzylem jedynie pierwszych 
4-ech  bitow  adresu  dla  opisania  numeru okregu, co z zapasem 
wystarcza (numery 0 i 10-15 sa na razie "bez przydzialu"), dajac 
ew.  przyszlym koordynatorom okregowym po 12-bitow (4064 adresow 
-  adres  nie  moze  sie  konczyc  na  0  lub  255)  przestrzeni 
adresowej.   Obawiam  sie,  ze  przy  aktualnym  tempie  rozwoju 
packet'u  w SP wystarczy to do  konca 21-ego wieku, zwlaszcza ze 
razem  daje  to  36576 adresow (plus ca 28448 w rezerwie), czyli 
wiecej niz jest w SP krotkofalowcow... 
Andrzej SP5WCA glowny administrator w SP 




SLOWNIK terminow
================

ARP      the Address Resolution Protocol (Protokol Przemiany 
Adresow)
Uzywany do mapowania adresow IP na adresy lacza fizycznego. 
Dlatego w AMPRNET, ARP jest uzywany do mapowania adresow IP na 
znaki wywolawcze i odwrotnie. 

CHAT     (POGAWEDKA) Odmiana uzycia TCP w protokole Telnet. 
Zaimplementowana w wiekszosci wersji NOS, uzywana na porcie TCP 
o numerze 87. Umozliwia bezposrednie polaczenie z konsola innego 
host'a (komputera, wezla).

CONVERS  (Od ang. CONVERSATION - ROZMOWA, KONWERSACJA) System 
konferencji rownowaznej i rownoczesnej, ktory jest uzywany na 
porcie TCP o numerze 3600. Pozwala wielu uzytkownikom w 
konferencji wspoldzialac (rozmawiac) z wielu komputerow 
(hostow). 

CONSOLE  W niniejszym opisie, konsola oznacza PC-ta. Typowo jest 
to polaczenie ekranu i klawiatury. 

DISCARD  Serwer TCP na porcie 53. 
Ramki przychodzace do tego portu powoduja wyslanie potwierdzenia 
i sa porzucane. Port ten jest uzywany do testow. 

DOMAIN   Usluga UDP na porcie 53. 
Umozliwia zapytanie o nieznane hosty (komputery) lub adresy IP 
na zdalnym serwerze obszaru (domeny) ("...on a remote domain 
server."). 

ECHO     (ECHO) Usluga TCP na porcie 7. 
Przeciwienstwo DISCARD. Wszystkie ramki wysylane do tego portu 
sa odsylane wraz z potwierdzeniem. Uzywany do celow testowych. 

FINGER   (DOTYKAC, POMACAC) Usluga TCP na porcie 79. 
Umozliwia uzytkownikom zapytanie o informacje o uzytkownikach 
zdalnego systemu (badz biezacego systemu). 

FRAME    (RAMKA) Dane przesylane pomiedzy hostami (komputerami) 
sa dzielone na ramki. Moga one byc (luzno) rozumiane jako 
pakiety. Zawieraja one informacje kontrolne, takie jak adres 
docelowy i.t.d. oraz pierwotne dane przesylane do celu. 

FTP      the File Transfer Protocol (Protokol Transmisji Pliku) 
Usluga TCP na portach 20 i 21. 
Protokol Transmisji Plikow, uzywany do przesylania plikow 
zarowno tekstowych jak i binarnych pomiedzy roznymi maszynami 
(komputerami). 

HEADER   (NAGLOWEK) Ten termin jest uzywany do okreslania tej 
czesci ramki, ktora zawiera informacje kontrolne. Zazwyczaj 
zawiera on adresy, liczbe bajtow i inne wazne informacje. 

HOST     Sposob identyfikacji wezla w sieci. W AMPRNET, hostem 
zwykle jest Amatorska Stacja Radiowa. 

IP       the Internet Protocol (Protokol Miedzysieciowy) 
IP jest odpowiedzialny za routing (kierowanie trasy, 
marszrutowanie) ramek TCP i UDP pomiedzy hostami. Logiczne 
polaczenie jest zestawiane i rozlaczane przez TCP. 
IP jest protokolem Warstwy 3 (Siec). 

LZW      Lempel-Ziv-Welch (nazwiska tworcow)
Metoda kompresji danych. WNOS uzywa LZW do kompresji w czasie 
rzeczywistym komunikatow wysylanych przez SMTP, NNTP.

MODE DATAGRAM  (Tryb Datagram) Oznacza, ze ramki TCP/IP sa 
wysylane przy uzyciu trybu transmisji AX.25 (ramek UI). Znaczy 
to ze, AX.25 jest uzywany wylacznie jako sposob transmisji, bez 
aktywnego udzialu w polaczeniu. 

MODE VC  Oznacza, ze ramki TCP/IP sa przesylane przez polaczenie 
AX.25. AX.25 bierze aktywny udzial w polaczeniu przez 
dostarczanie znaczenia dla potwierdzen i ponowien w warstwie 
polaczenia. VC = Virtual Circuit (Polaczenie Wirtualne). 

MODE IPCAM  Odmiana trybu VC, w ktorej zamiast wysylania ramek 
TCP/IP przez polaczenie AX.25 z PID (Identyfikatorem Protokolu) 
"IP", uzywany jest normalny PID "Text". Pozwala to na uzywanie 
TCP/IP w sieciach AX.25, ktore moga nie uzywac innych PID niz 
text. 

MTU      Maximum Transmission Unit (Maksymalna Jednostka 
Transmisji) 
Maksymalna dlugosc ramki wysylanej przez IP w dowolnych 
warunkach. 

NET      Pierwsza implementacja Amatorskiego TCP/IP wykonana 
rowniez przez Phil'a Karn'a (KA9Q). NOS zostal stworzony na 
bazie doswiadczen zebranych podczas rozwijania NET. 

NET/ROM  Protokol Sieciowy zarzadzajacy funkcjami zarowno 
routingu (marszrutowaniem) (poziom 3) jak i transportu (poziom 
4). Zastepowany obecnie przez bardziej inteligentne protokoly o 
wiekszych mozliwosciach i mniejszych wymaganiach. 

NNTP     the Network News Transfer Protocol (Protokol Sieciowej 
Transmisji Wiadomosci) Usluga na porcie TCP 119. Umozliwia 
dystrybucje wiadomosci pomiedzy wezlami okreslonymi przez 
hierarchie grup dyskusyjnych. 

NOS      the Network Operation System (Sieciowy System 
Operacyjny). Implementacja TCP/IP rozwijana na klonach IBM PC 
przez KA9Q (Phil Karn). 

POP      the Post Office Protocol (Protokol Obslugi Poczty). 
Usluga na porcie TCP 109. Umozliwia gromadzenie i odbior 
osobistej poczty ze zdalnego wezla. 

RFC      Request For Comments (Odpowiedz na Uwagi). Zbior 
dokumentow (sa ich setki), ktore definiuja i standaryzuja 
protokoly Internetu. 

REMOTE   (Zdalny) Zwykle oznacza drugi koniec polaczenia. W 
NOS'ie jest to rowniez serwer, na porcie UDP o numerze 1234 
ktory pozwala na zdalna kontrole innych wezlow. 

RTT      Round Trip Time (Czas Przejscia) Czas pomiedzy 
wyslaniem ramki, a otrzymaniem potwierdzenia ze zdalnego konca. 

SESSION  (Sesja) W tym opisie, polaczenie ustanowione przez 
dowolny protokol, ze zdalnym wezlem. 

SLIP     the Serial Line Internet Protocol (Protokol Internet na 
Laczu Szeregowym). Pozwala wezlom TCP na komunikacje przez 
normalne lacze szeregowe. 

SMTP     the Simple Mail Transfer Protocol (Protokol Transmisji 
Prostej Poczty) Usluga na porcie TCP o numerze 25. Pozwala 
wysylac, odbierac i przesylac indywidualna poczte elektroniczna 
pomiedzy uzytkownikami kazdego wezla TCP/IP. Jest to 
przeciwienstwo NNTP gdzie wiadomosci (artykuly) sa "nadawane" 
normalnie tj. jak biuletyny BBS. 

SRTT     Smoothed Round Trip Time (Usredniony Czas Przejscia). 
RTT usredniony po wszystkich ramkach wyslanych w pewnym czasie. 

SYSOP    SYStem OPerator (Operator Systemu) Zwykle wlasciciel 
(zarzadca) mechanizmow strazniczych systemu. 

TCP      the Transmission Control Protocol (Protokol Kontrolny 
Transmisji). Odpowiedzialny za wszystkie aspekty kontroli 
polaczenia, konfiguracji polaczenia, rozlaczenia i upewnienia, 
ze dane dotarly do zdalnego wezla i nie zostaly utracone. TCP 
uzywa IP do marszrutowania wezel - wezel. TCP jest protokolem 
Poziomu 4 (transport). 

TCP/IP   Ogolny termin uzywany dla kazdego systemu sieciowego, 
ktory uzywa TCP do funkcji Transportowych i IP do Sieciowych. 

TELNET   Usluga TCP na porcie 23. 
Umozliwia logowanie sie na zdalnych wezlach pracujacych pod 
kontrola TCP/IP. 

TTYLINK  Odmiana protokolu Telnet, ktora umozliwia bezposrednie 
polaczenie z konsola innego wezla TCP/IP. 

UDP      the User Datagram Protocol (Protokol Datagramow 
Uzytkownika). 
Podobnie jak TCP, jest to protokol warstwy 4 Poziomu 
(Transport), ale ustanawia niepewne, zawodne polaczenie. Ramki 
UDP sa wysylane do portow wezla, jak w TCP, ale nie sa 
potwierdzane przez ten wezel - sa poprostu wykonywane jesli 
zostana odebrane. UDP uzywa IP jako protokolu marszrutowania. 

UNIX     System Operacyjny popularny na wielu mini i duzych 
komputerach. TCP, IP i UDP sa niemal zawsze dostepne na 
maszynach pracujacych pod Unix'em. Znacznie silniejszy 
(sprawniejszy, elastyczniejszy) system od DOS'u poniewaz w 
zalozeniu projektowany byl i rozwijany jako system 
wielozadaniowy (wiele programow na raz) i wielodostepny (wielu 
uzytkownikow na jednym komputerze na raz). 

USER     (Uzytkownik) Uzytkownik wezla TCP/IP. 

WAMPES   the Wuerttemberg Amateur Multi-Protocol Experimental 
System (Amatorski Wielo-Protokolowy Eksperymentalny System 
Wuerttemberg'a).
Bazujaca na Unix'ie i NOS'ie implementacja TCP/IP. Pozwala na 
zdalne logowanie do w pelni Unix'owej Powloki (Unix Shell), a 
udostepnia SMTP, NNTP, Convers, NET/ROM, AX.25 i wszystkie inne 
zwykle uslugi TCP. 

XCONVERS Patrz CONVERS. System konferencji rownowaznej i 
rownoczesnej, ktory jest uzywany na porcie TCP o numerze 3601. 
Transportuje dane konferencji uzywajac kompresji LZW. 





LITERATURA 
==========

1. "Beginer's  Guide  to  TCP/IP  on  the  Amateur  Packet Radio 
    Network Using the KA9Q Internet Software" 
    Gary E. Ford, N6GF 1992r
2. "The KA9Q Internet Software Package"
    Bdale Garbee, N3EUA 1989r
3. "Networking Operating System User Reference Manual"
    Phil Karen KA9Q and Gerard van der Grinten PA0GRI 
4. "What are TCP/IP & NOS and Why use them?" 
    Warren Toomey, Vk1XWT 1991r 
5. "Nos Alias and Rewrite" 
    Ian Wade, G3NRW 
6. "Krotkie wprowadzenie do poczty elektronicznej" 
    Pawel Jalocha , SP9VRC

