Редактиране на Etc/Hosts Linux

Edit Etc Hosts Linux



В различни случаи ще трябва да редактирате хост файла в системата. Това може да бъде или да го използвате като защитна стена, тоест да контролирате някакъв мрежов трафик, да добавите име на домейн или да изпробвате неговата функционалност.

Хост файлът е локален файл или локална DNS система, която съдържа статично търсене на таблици за имена на хостове и IP адреси. Той е наличен във всички операционни системи, включително Windows, Linux и macOS.







Тъй като това е локална DNS система, тя има предимство пред другите DNS системи, което я прави добър избор за непризнати домейни.



Този бърз урок ще ви помогне да разберете какво съдържа файлът и как можете да го редактирате.



Как да редактирате хост файла

Ще намерите Linux хост файла, съхраняван в директорията /etc. Това означава, че ще се нуждаете от sudo привилегии или root потребител, за да промените съдържанието му.





Общият синтаксис за записите в хост файла е:

IP_адрес canonical_hostname [псевдоними ...]

IP адресът, посочен в хост файла, може да бъде или IPv4, или IPv6 адрес, стига да се разреши към посочения домейн.



Коментари в хост файла

Хост файлът също поддържа коментари, които системата игнорира. Те започват с октоторп (#).

Например системата ще игнорира следния запис.

# Следният ред е коментар и системата ще го игнорира
127.0.0.1 локален хост
:: 1 локален хост

Правила за именуване на имена на хостове

Сега има някои правила за именуване на имена на хостове във файла на хоста, което позволява на системата да разреши посочения IP адрес.

Правилата включват:

  • Имената на хостовете не трябва да започват с тире или специален знак, с изключение на заместващ знак като звездичка.
  • Посоченото име на хост трябва да съдържа само буквено-цифрови знаци знак минус (-) и/или точка (.)
  • Името на хоста трябва да започва и завършва само с буквено -цифрови знаци.

Примерен случай на използване 1

Позволете ми да ви покажа примерна редакция на хост файла. В моя пример имам локален уебсайт, работещ на порт 8000, и искам да използвам домейна development.local.

Тъй като домейнът development.local не е валиден домейн, не мога да разчитам на DNS за разрешаването му. Следователно мога да редактирам хост файла като:

$ sudo nano /etc /hosts

И накрая, мога да добавя записа, показан по -долу:

127.0.0.1 развитие.локално *.локално

Запишете и затворете файла.

Накрая отворете браузъра и отидете до адреса

http: //development.local: 8000.

Ако името на хоста е правилно, уебсайтът, хостван на посочения порт, ще се зареди.

Примерен случай на използване 2

Следващият случай на използване е да блокирате уебсайт, като пренасочите трафика към невалиден IP адрес. Например, за да блокирате google.com, добавете IP адреса към localhost като:

ЗАБЕЛЕЖКА: В горния пример използвахме Hex IP нотация за представяне на localhost.

За да потвърдите промените, отворете браузъра и отидете на google.com

Както можете да видите, адресът не разрешава правилния адрес, въпреки че интернет връзката ми работи правилно.

Един прост пинг също показва, че адресът се разрешава до localhost, както е показано по -долу:

ЗАБЕЛЕЖКА: Промените във файловете /etc /hosts работят незабавно, с изключение на случаите, когато приложенията кешират файла.

Заключение

В този урок разгледахме как да редактираме файла hosts в Linux и да го използваме като локален DNS или защитна стена. Редактирането на хост файла е полезно, особено в случаите, когато DNS сървърът не работи.