.\" Hey Emacs! This file is -*- nroff -*- source. .\" .\" This manpage is Copyright (C) 1996 Austin Donnelly , .\" with additional material (c) 1995 Martin Schulze .\" .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" .\" This manpage was made by merging two independently written manpages, .\" one written by Martin Schulze (18 Oct 95), the other written by .\" Austin Donnelly, (9 Jan 96). .\" .\" Thu Jan 11 12:14:41 1996 Austin Donnelly .\" * Merged two services(5) manpages .\" .\" Traduzione in italiano di Giovanni Bortolozzo .\" Ottobre 1996 .\" Aggiornamento a man-pages-1.15 di Alessandro Rubini (rubini@linux.it) .\" Febbraio 1998 .\" Correzioni, Ottavio G. Rizzo, ottobre 1998 .\" Aggiornamento a man-pages-2.11 di Giulio Daprelà .\" novembre 2005 .\" .TH SERVICES 5 "11 gennaio 1996" "Linux" "Linux Programmer's Manual" .SH NOME services \- Elenco dei servizi di rete internet .SH DESCRIZIONE .B services è un normale file ASCII che fornisce una mappa tra i nomi testuali dei servizi internet, e i nomi delle porte e i tipi di protocolli loro assegnati. Ogni programma di rete dovrebbe guardare in questo file per sapere il numero della porta (e il protocollo) del suo servizio. Le routine della libreria C .BR getservent (3), .BR getservbyname (3), .BR getservbyport (3), .BR setservent (3), e .BR endservent (3) supportano l'interrogazione di questo file da parte dei programmi. I numeri di porta sono assegnati dallo IANA (Internet Assigned Numbers Authority), e la loro politica attuale assegna entrambi i protocolli TCP e UDP quando si assegna un numero di porta. Perciò, molte voci avranno due voci, anche per i servizi solo TCP. I numeri di porta inferiori a 1024 (le cosiddette porte 'low numbered') possono essere usate solo da root (si veda .BR bind (2), .BR tcp (7), e .BR udp (7)). Questo accade perché i clienti che si connettono a una porta low numbered possono fare affidamento sul fatto che il servizio in esecuzione sulla porta è l'implementazione standard e non un servizio avviato da un utente della macchina. I numeri di porta noti specificati dall'IANA sono normalmente localizzati in questo spazio esclusivo per root. La presenza di una voce per un servizio nel file .B services non significa necessariamente che il servizio è attualmente in esecuzione sulla macchina. Si veda .BR inetd.conf (5) per la configurazione dei servizi Internet offerti. Si noti che non tutti i servizi di rete sono avviati da .BR inetd (8), e così non appariranno in .BR inetd.conf (5). In particolare, i server per news (NNTP) e mail (SMTP) spesso sono inizializzati dagli script di boot del sistema. La posizione del file .B services è definita da .B _PATH_SERVICES in .IR /usr/include/netdb.h "." Questa è usualmente impostata a .IR /etc/services "." Ogni riga descrive un servizio, ed ha il seguente formato: .IP \f2nome-servizio\ \ \ porta\f3/\f2protocollo\ \ \ \f1[\f2alias ...\f1] .TP dove: .TP 10 .I nome-servizio è il nome amichevole con il quale è conosciuto il servizio e con il quale viene cercato dai programmi. È case sensitive. Spesso, i programmi client sono nominati in base al .IR nome-servizio "." .TP .I porta è il numero della porta (in decimale) da usare per questo servizio. .TP .I protocollo è il tipo di protocollo da usare. Questo campo deve corrispondere ad una voce nel file .BR protocols (5). Valori tipici sono .B tcp e .BR udp . .TP .I alias è una lista opzionale separata da spazi o tab di altri nomi per questo servizio (ma si veda la sezione BACHI sotto). Ancora, i nomi sono case sensitive. .PP Sia spazi che tab possono essere usati per separare i campi. I commenti sono iniziati con il carattere `#' e continuano fino alla fine della riga. Le righe vuote non vengono considerate. Il .I nome-servizio dovrebbe cominciare nella prima colonna del file, in quanto gli spazi iniziali non sono scartati. .I nome-servizio può essere composto da caratteri stampabili qualsiasi ad esclusione di spazi e tab, comunque dovrebbe essere usata una scelta conservativa di caratteri per minimizzare i problemi di inter-operabilità. Es.: a\-z, 0\-9 e trattino (\-) è una scelta sensata. Nel file non dovrebbero essere presenti righe che non corrispondono a questo formato. (Attualmente, esse sono scartate silenziosamente da .BR getservent (3), .BR getservbyname (3), e .BR getservbyport (3). In ogni caso, non si dovrebbe far affidamento su questo comportamento). Per compatibilità all'indietro, lo slash (/) tra il numero di .I porta e il nome del .I protocollo può di fatto essere sia uno slash che una virgola(,). L'uso della virgola nelle installazioni moderne è deprecato. Questo file potrebbe essere distribuito su una rete che usa un servizio di network-wide naming come Yellow Pages/NIS o BIND/Hesiod. Un semplice file .B services potrebbe essere così: .RS .nf .sp .ta 3i 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 \- non assegnato telnet 23/tcp .sp .fi .RE .SH BACHI Gli alias per un servizio possono essere al massimo 35, a causa del modo in cui è scritta .BR getservent (3). Le righe più lunghe di .B BUFSIZ caratteri (attualmente 1024) saranno ignorate da .BR getservent (3), .BR getservbyname (3), e .BR getservbyport (3). Tuttavia, ciò causa anche un'analisi sbagliata della riga successiva. .SH FILE .TP .I /etc/services L'elenco dei servizi di rete internet .TP .I /usr/include/netdb.h Definizione di .B _PATH_SERVICES .SH "VEDERE ANCHE" .BR listen (2), .BR endservent (3), .BR getservbyname (3), .BR getservbyport (3), .BR getservent (3), .BR setservent (3), .BR inetd.conf (5), .BR protocols (5), .BR inetd (8) Assigned Numbers RFC, il più recente è il documento RFC 1700, anche noto come STD0002. Guida ai servizi Yellow Pages Guida ai servizi BIND/Hesiod