Bewerken enz./Host Linux

Edit Etc Hosts Linux



In verschillende gevallen moet u het hostbestand in het systeem bewerken. Dat kan zijn om het ofwel als firewall te gebruiken, d.w.z. om wat netwerkverkeer te regelen, een domeinnaam toe te voegen of de functionaliteit ervan te testen.

Het hostbestand is een lokaal bestand of lokaal DNS-systeem dat een statische tabelzoekopdracht bevat voor hostnamen en IP-adressen. Het is beschikbaar in alle besturingssystemen, inclusief Windows, Linux en macOS.







Omdat het een lokaal DNS-systeem is, heeft het voorrang op andere DNS-systemen, waardoor het een goede keuze is voor niet-herkende domeinen.



Deze korte zelfstudie helpt u te begrijpen wat het bestand bevat en hoe u het kunt bewerken.



Hoe het hostbestand te bewerken

U vindt het Linux-hostbestand dat is opgeslagen in de map /etc. Dat betekent dat je sudo-rechten of root-gebruiker nodig hebt om de inhoud te wijzigen.





De algemene syntaxis voor de vermeldingen in het hostbestand is:

IP_adres canonieke_hostnaam [aliassen...]

Het IP-adres dat is opgegeven in het hostbestand kan een IPv4- of IPv6-adres zijn, zolang het maar wordt omgezet in het opgegeven domein.



Opmerkingen in hostbestand

Het hostbestand ondersteunt ook opmerkingen die het systeem negeert. Ze beginnen met een octothorpe (#).

Het systeem zal bijvoorbeeld de volgende invoer negeren.

# De volgende regel is een opmerking en wordt door het systeem genegeerd
127.0.0.1 localhost
::1 lokale host

Regels voor het benoemen van hostnamen

Nu zijn er enkele regels voor het benoemen van hostnamen in het hostbestand, zodat het systeem kan worden omgezet naar het opgegeven IP-adres.

De regels omvatten:

  • Hostnamen mogen niet beginnen met een koppelteken of een speciaal teken, behalve een jokerteken zoals een asterisk.
  • De opgegeven hostnaam mag alleen alfanumerieke tekens bevatten, een minteken (-) en/of punt (.)
  • De hostnaam mag alleen beginnen en eindigen met alfanumerieke tekens.

Voorbeeld use-case 1

Sta me toe u een voorbeeld van een bewerking van het hostbestand te laten zien. In mijn voorbeeld heb ik een lokale website die draait op poort 8000 en ik wil het domein development.local gebruiken.

Aangezien het domein development.local geen geldig domein is, kan ik niet op DNS vertrouwen om het op te lossen. Daarom kan ik het hostbestand bewerken als:

$ sudo nano /etc/hosts

Ten slotte kan ik het onderstaande item toevoegen:

127.0.0.1 ontwikkeling.lokaal *.lokaal

Sla het bestand op en sluit het.

Open ten slotte de browser en navigeer naar het adres

http://ontwikkeling.local:8000.

Als de hostnaam correct is, wordt de website die op de opgegeven poort wordt gehost, geladen.

Voorbeeld use-case 2

De volgende use case is om een ​​website te blokkeren door het verkeer om te leiden naar een ongeldig IP-adres. Als u bijvoorbeeld google.com wilt blokkeren, voegt u het IP-adres toe aan localhost als:

OPMERKING: In het bovenstaande voorbeeld hebben we de Hex IP-notatie gebruikt om localhost weer te geven.

Om de wijzigingen te bevestigen, opent u de browser en navigeert u naar google.com

Zoals je kunt zien, wordt het adres niet naar het juiste adres omgezet, ondanks dat mijn internetverbinding correct werkt.

Een eenvoudige ping laat ook zien dat het adres wordt omgezet naar localhost, zoals hieronder wordt weergegeven:

OPMERKING: Wijzigingen aan de /etc/hosts-bestanden werken onmiddellijk, met uitzondering van gevallen waarin toepassingen het bestand in de cache plaatsen.

Conclusie

In deze zelfstudie hebben we besproken hoe u het hosts-bestand in Linux kunt bewerken en gebruiken als lokale DNS of een firewall. Het bewerken van het hostbestand is handig, vooral in gevallen waarin de DNS-server niet beschikbaar is.