hosts je textový soubor, který se v operačních systémech používá ke komunikaci mezi názvy domén a IP adresami. Představuje místní distribuci doménového systému a umožňuje přesměrování požadavků na konkrétní IP adresy, čímž se obejdou běžné servery DNS.
Soubor hosts se často používá k nastavení místních testovacích serverů, k blokování přístupu k určitým webům nebo zdrojům a k řešení problémů s dotazy DNS.
Při zadávání názvu domény do webového prohlížeče nebo jiné aplikace operační systém nejprve zkontroluje soubor hosts a vyhledá odpovídající záznam. Pokud je záznam nalezen, použije se pro připojení k serveru IP adresa uvedená v souboru hosts.
Obvykle se nachází v systémovém adresáři, například /etc/hosts
v nejběžnějších distribucích Linuxu a MacOS a C:WindowsSystem32driversetchosts
v systému Windows.
Windows XP, 2003, Vista, 7, 8, 10 — c:windowssystem32driversetchosts
Linux, Ubuntu, Unix, BSD — /etc/hosts
macOS — /private/etc/hosts
Soubor etc hosts je nutné upravovat jako správce, jinak nebude možné změny uložit.
K provedení změn v souboru hosts potřebujete oprávnění správce nebo superuživatele. Níže jsou uvedeny pokyny, jak provést změny v souboru hosts v různých operačních systémech:
Windows:
C:WindowsSystem32driversetc.
Linux a macOS:
sudo nano /etc/hosts
a otevřete soubor hosts s právy superuživatele a editorem nano (můžete použít jakýkoli jiný textový editor).Po provedení změn v souboru hosts mohou některé operační systémy vyžadovat restart nebo obnovení mezipaměti DNS, aby se změny uplatnily.
Otevřete Průzkumníka a přejděte na následující cestu:
C:WindowsSystem32driversetc.
V této složce najděte soubor s názvem "hosts". Chcete-li soubor otevřít s právy správce, klikněte na něj pravým tlačítkem myši a vyberte možnost Otevřít pomocí > Poznámkový blok.
V souboru proveďte potřebné změny. Každá položka by měla být na samostatném řádku a měla by mít následující formát:>
IP adresa název_domény
Například:
127.0.0.1 localhost
Změny uložte kliknutím na tlačítko "Soubor" v levém horním rohu Poznámkového bloku a výběrem možnosti "Uložit".
K úpravě souboru hosts v systému Windows 7 budete potřebovat práva správce, proto se ujistěte, že tuto operaci provádíte jako uživatel s příslušnými právy.
Otevřete Průzkumníka a přejděte na cestu:
C:WindowsSystem32driversetc.
V této složce najděte soubor s názvem "hosts". Klepněte na něj pravým tlačítkem myši a vyberte možnost Otevřít pomocí > Poznámkový blok.
Pokud není Poznámkový blok v seznamu uveden, klikněte na "Další aplikace" a vyberte "Poznámkový blok".
Pokud nemůžete změny uložit z důvodu omezení přístupu, zkopírujte soubor "hosts" na plochu. Upravte jej na ploše pomocí Poznámkového bloku.
Proveďte v souboru potřebné změny. Každá položka by měla být na samostatném řádku a měla by mít následující formát:
IP adresa_název_domény
Například:
127.0.0.1 localhost
Uložte změny. Pokud jste soubor upravili na ploše, přetáhněte jej zpět do adresáře C:WindowsSystem32driversetc
a odsouhlaste nahrazení stávajícího souboru.
Pro úpravu souboru hosts v systému Linux nebo Unix můžete použít libovolný textový editor, například vi, nano nebo gedit.
Otevřete terminál.
Zadejte příkaz pro otevření souboru hosts pomocí požadovaného textového editoru. Například:
Pro vi: sudo vi /etc/hosts
Pro nano: sudo nano /etc/hosts
Pro gedit: sudo gedit /etc/hosts
Zadejte heslo superuživatele (root), abyste získali přístup k úpravám souboru.
Přidejte nebo upravte položky v souboru hosts. Každý záznam musí obsahovat IP adresu a odpovídající název domény oddělené mezerou nebo tabulátorem.
Například:
127.0.0.1 localhost
192.168.0.1 example.com
Uložte změny a zavřete editor. V okně vi musíte stisknout klávesu `Esc`, poté zadejte `:wq` a stiskněte klávesu Enter. V programu nano musíte stisknout klávesy Ctrl + X a poté klávesu Y pro uložení změn. Zkontrolujte soubor hosts, zda se provedené změny projevily. Pro zobrazení obsahu souboru můžete použít příkaz cat /etc/hosts
.
Úprava souboru hosts vyžaduje oprávnění superuživatele. Použití příkazu `sudo` před otevřením souboru vám tedy pomůže získat správná práva.
Otevřete Finder a přejděte do složky "Applications".
Ve složce "Applications" vyhledejte a spusťte program "Terminal".
V okně terminálu zadejte následující příkaz: sudo nano /etc/hosts
Zadejte heslo k účtu macOS a stiskněte klávesu "Enter".
V otevřeném editoru nano uvidíte obsah souboru hosts.
Přidejte nebo upravte položky v souboru hosts. Každá položka by měla obsahovat IP adresu a odpovídající název domény, oddělené mezerou nebo tabulátorem.
Například:
127.0.0.1 localhost
192.168.0.1 example.com
Pro uložení změn stiskněte klávesy "Ctrl + O" a následně "Enter".
Poté stiskněte klávesy "Ctrl + X" pro zavření editoru nano.
Úprava souboru hosts vyžaduje oprávnění superuživatele. Proto vám použití příkazu sudo
před otevřením souboru pomůže získat správná práva.
Chcete-li zablokovat přístup k určité webové stránce prostřednictvím souboru hosts, musíte soubor upravit tak, že požadovanou webovou adresu přesměrujete na místní IP adresu nebo na nesprávnou IP adresu.
Zde je uveden postup, jak to lze provést:
sudo nano /etc/hosts
a otevřete soubor hosts s právy superuživatele.Po provedení těchto kroků bude váš počítač přesměrovávat požadavky na zadaný web na místní IP adresu nebo na nesprávnou IP adresu, což bude mít za následek nemožnost přístupu na daný web.
Původní soubor hosts v operačním systému Linux, Unix nebo MacOS obsahuje minimální sadu položek, obvykle pouze pro přístup k místním zdrojům, aniž by blokoval přístup k jakýmkoli webovým stránkám.
# Copyright (c) 1993-2006 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handle within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1 localhost
127.0.1.1 user
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
Všimněte si, že obnovení původního souboru hosts odstraní všechna přidaná nastavení (včetně blokování přístupu k webovým stránkám).