table of contents
services(5) | File Formats Manual | services(5) |
JMÉNO¶
services - databáze služeb sítě Internet
POPIS¶
services je čitelný textový soubor poskytující převod mezi názvy služeb a jim příslušných čísel portů a protokolů. Každý síťový program by měl z tohoto souboru získat číslo portu a typ protokolu. Knihovna jazyka C poskytuje funkce getservent(3), getservbyname(3), getservbyport(3), setservent(3), a endservent(3), které slouží k obsluze této databáze.
Čísla portů jsou přiřazována organizací IANA (Internet Assigned Numbers Authority), jejich současná strategie je přiřazovat jak TCP tak i UDP protokoly pro čísla portů. Proto má většina záznamů dva záznamy i pro služby provozované pouze nad TCP protokolem.
Porty s čísly menšími než 1024 mohou být přiřazeny pouze superuživatelem (viz bind(2), tcp(7) a udp(7)). To je proto, aby klienti, kteří se připojují na tyto porty mohli důvěřovat, že zde běží standardní aplikace a ne nějaký prográmek nějakého uživatele. Standardní čísla portů specifikovaná IANA jsou normálně umístěna v této oblasti.
Výskyt dané služby v databázi služeb ještě neznamená, že služba na tomto počítači momentálně běží, viz inetd.conf(5), kde je uvedeno více o konfiguraci internetových služeb. Mějte však na paměti, že ne všechny síťové služby musí být startovány pomocí inetd(8), a proto se nemusí vyskytovat v inetd.conf(5). Např. news (NNTP) a mail (SMTP) servery jsou často inicializovány ve startovacích skriptech.
Umístění souboru services je definováno konstantou _PATH_SERVICES v <netdb.h>. Obvykle je nastaveno na /etc/services.
Každý řádek obsahuje jeden záznam ve tvaru:
- service-name port/protokol [aliases ...]
- kde:
- service-name
- je název služby pod kterým je známa a vyhledávána. Velikost písma je rozhodující. Často je klient pojmenován stejně jako služba samotná.
- port
- je číslo portu v desítkové soustavě.
- protokol
- je typ použitého protokolu. Toto políčko by mělo vyhovovat záznamu ze souboru protocols(5). Obvyklé hodnoty jsou tcp a udp.
- aliases
- toto je volitelný seznam přezdívek oddělený mezerou nebo tabulátorem. Opět zde rozhoduje velikost písmen.
Jednotlivá pole jsou oddělena mezerami nebo tabulátorem.
Komentáře začínají znakem # a pokračují až do konce řádku. Prázdné řádky jsou vynechány.
service-name by mělo začínat na začátku řádku, protože mezery na začátku nejsou odstraňovány. service-names mohou být jakékoliv tisknutelné znaky kromě mezery a tabulátoru, ale z důvodu kompatibility se doporučuje použít pouze znaky a-z, 0-9, a pomlčka (-).
Řádky, které nevyhovují tomuto formátu, by se zde neměly vyskytovat. (V současné době jsou funkcemi getservent(3), getservbyname(3), a getservbyport(3) tiše ignorovány, ale na to by se nemělo spoléhat.)
Tento soubor může být distribuován po síti přes jmenné služby jako Yellow Pages/NIS nebo BIND/Hesiod.
Jednoduchý soubor services může vypadat nějak takto:
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
SOUBORY¶
- /etc/services
- databáze služeb sítě Internet
- <netdb.h>
- Definice konstanty _PATH_SERVICES
DALŠÍ INFORMACE¶
listen(2), endservent(3), getservbyname(3), getservbyport(3), getservent(3), setservent(3), inetd.conf(5), protocols(5), inetd(8)
Assigned Numbers RFC, nejnovější RFC 1700, (také známo pod STD0002).
PŘEKLAD¶
Překlad této příručky do češtiny vytvořili Pavel Heimlich <tropikhajma@gmail.com>
Tento překlad je bezplatná dokumentace; Přečtěte si GNU General Public License Version 3 nebo novější ohledně podmínek autorských práv. Neexistuje ŽÁDNÁ ODPOVĚDNOST.
Pokud narazíte na nějaké chyby v překladu této příručky, pošlete e-mail na adresu translation-team-cs@lists.sourceforge.net.
2. května 2024 | Linux man-pages (unreleased) |