Provided by:
manpages-pl_20060617-3_all 
NAZWA
services - lista usług sieci Internet
OPIS
services jest plikiem tekstowym umożliwiającym wzajemne
przyporządkowanie pomiędzy przyjaznymi nazwami usług a odpowiednimi
numerami portów i rodzajami protokołów. Każda aplikacja sieciowa
powinna konsultowac z tym plikiem numer portu (i protokołu) dla
określonej usługi. Funkcje biblioteki C getservent(3),
getservbyname(3), getservbyport(3), setservent(3) i endservent(3)
obsługują zapytania dotyczące zawartości tego pliku od programów.
Numery portów są przydzielane przez IANA (Internet Assigned Numbers
Authority), ich aktualna polityka to przydzielanie numeru portu
jednocześnie dla obu protokołów: TCP i UDP. Dlatego większość usług w
pliku services posiada podwójne rekordy, nawet w przypadku usług
działających tylko po TCP.
Numery portów poniżej 1024 (tzw. niskie porty, porty o niskich
numerach) mogą być otwierane jedynie przez administratora (patrz
bind(2), tcp(7) i udp(7)). Oznacza to, że klient łączący się z niskim
numerem portu może mieć pewność, że program obsługi na tym porcie jest
standardowym programem systemowym, a nie dowolnym programem użytkownika
danego komputera. Popularne numery portów określone przez IANA są
zwykle umieszczane w tym właśnie przedziale portów administratora.
Obecność pozycji dotyczącej usługi w pliku services nie oznacza, że
dana usługa jest aktualnie obsługiwana przez maszynę. Konfigurację
obsługiwanych usług internetowych można znaleźć w pliku inetd.conf(5).
Należy również pamiętać, że nie wszystkie usługi sieciowe są
uruchamiane przez inetd(8), a zatem plik inetd.conf(5) nie zawiera
wszystkich usług świadczonych przez dany komputer. W szczególności
serwery news (NNTP) i poczty (SMTP) są zwykle uruchamiane z systemowych
skryptów startowych.
Położenie pliku services jest zdefiniowane jako _PATH_SERVICES w pliku
/usr/include/netdb.h. Zwykle jest to /etc/services.
Każdy wiersz tego pliku opisuje jedną usługę i ma następującą postać:
nazwa-usugi port/protok [aliasy ...]
gdzie:
nazwa-usugi
jest to przyjazna dla człowieka nazwa, pod którą usługa jest
znana i pod którą jest poszukiwana. Rozróżnia się małe i
wielkie litery. Często program kliencki jest nazywany tak jak
nazwa-usugi.
port numer portu (liczba dziesiętna), z którego ma dana usługa
korzystać.
protok rodzaj protokołu, jaki ma być wykorzystywany. To pole powinno
zawierać jeden z protokołów zdefiniowanych w pliku
protocols(5). Zwykle jest to tcp lub udp.
aliasy jest to opcjonalna lista rozdzielonych spacjami lub znakami
tabulacji innych nazw tej samej usługi (ale zajrzyj też do
sekcji BŁĘDY, poniżej). Tu też rozróżnia się małe i wielkie
litery.
Poszczególne pola mogą być rozdzielane spacjami lub znakami tabulacji.
Komentarze rozpoczynają się od znaku krzyżyka # aż do końca wiersza.
Puste wiersze są pomijane.
nazwa-usugi powinna się rozpoczynać w pierwszej kolumnie pliku,
ponieważ początkowe spacje nie są pomijane. nazwa-usugi może się
składać z dowolnych widocznych znaków, z wyjątkiem spacji i znaku
tabulacji. Jednakże w celu zmniejszenia kłopotów z przenośnością
powinny być użyta znaki z bardziej ograniczonych zakresów. Np. a-z, 0-9
i myślnik (-) wydaje się być rozsądnym wyborem.
Wiersze nie odpowiadające temu formatowi nie powinny znajdować się w
pliku. (Obecnie są one pomijane przez funkcje getservent(3),
getservbyname(3) i getservbyport(3). Jednakże nie należy polegać na
tym zachowaniu.)
Jako cecha zgodności z poprzednimi wersjami, ukośnik (/) pomiędzy
numerem portu a nazwą protokou może być w rzeczywistości również
przecinkiem (,). Jednak stosowanie przecinka w nowych instalacjach nie
jest zalecane.
Plik ten może być rozpowszechniany w sieci za pośrednictwem takich
ogólnosieciowych usług nazewnictwa, jak Yellow Pages/NIS lub
BIND/Hesiod.
Przykładowy plik services mógłby wyglądać tak:
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol
msp 18/udp # message send protocol
chargen 19/tcp ttytst source
chargen 19/udp ttytst source
ftp 21/tcp
# 22 - unassigned
telnet 23/tcp
BŁĘDY
Ze względu na sposób, w jaki jest napisana funkcja getservent(3)
istnieje ograniczenie liczby aliasów do 35.
Wiersze dłuższe niż BUFSIZ (obecnie 1024) będą ignorowane przez funkcje
getservent(3), getservbyname(3) i getservbyport(3). Spowoduje to
również błędne zinterpretowanie następnego wiersza.
PLIKI
/etc/services
lista usług sieci Internet
/usr/include/netdb.h
definicja stałej _PATH_SERVICES
ZOBACZ TAKŻE
listen(2), endservent(3), getservbyname(3), getservbyport(3),
getservent(3), setservent(3), inetd.conf(5), protocols(5), inetd(8).
Przydzielone numery można znaleźć w RFC 1700 (inaczej, STD0002)
Przewodnik po usłudze Yellow Pages
Przewodnik po usłudze BIND/Hesiod
INFORMACJE O TŁUMACZENIU
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu
Tłumaczenia Manuali i moe nie by aktualne. W razie zauważenia różnic
między powyższym opisem a rzeczywistym zachowaniem opisywanego programu
lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją
strony podręcznika.