Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Tworzenie własnych hostów

Wpis ten w całości poświęcę możliwością jakie daje nam tworzenie i modyfikowanie adresów docelowych domen w systemie Windows.

Wstęp

Zapewne niejeden z Was pisze aplikacje zarówno webowe jak i zwykłe które wymagają dostępu do internetu. Jeśli nie, to z pewnością nie jeden jest zainteresowany blokowaniem reklam, konkretnych adresów IP jak i tworzenie własnych domen lokalnych.

O co chodzi?

W systemie Windows, Linux jak i OS X oraz Unix znajduje się plik hosts w którym można zmienić adres docelowy programu lub stworzyć własny.
Przykładowo tworząc stronę WWW lub program możemy stworzyć lokalną domenę np. mojastrona.pl , update.mojadomena.pl jak i krótkie wersje np. test, g (np. skrót dla Google) itp.

Możliwości

Używając pliku hosts możemy zmienić adres docelowy domeny np. dla xxx.com ustawić przykładowo na 127.0.0.1 (adres lokalny, inaczej mój komputer) który zablokuje dostęp do strony. Można też zmienić adres na IP zewnętrzne, np. na potrzeby testowania aplikacji. Przykładowo mamy aplikacje którą chcemy przetestować. Komunikuje się z adresem api.mojadomena.pl i ma jakiś adres IP a chcemy zmienić na adres serwera testowego który ma inny adres. Nic trudnego. Możemy też stworzyć własne lokalne domeny np. testprogramu i dać adres IP 127.0.0.1. Dzięki temu program może działać na naszym komputerze i komunikować się z nim zamiast z zewnętrznym serwerem.

Jak ustawić hosty

Jeszcze kilka dni temu wszystkie hosty wpisywałem z ręki do pliku C:\Windows\System32\drivers\etc\hosts w notatniku na prawach administracyjnych (wymagane do edycji pliku).
Jednak przyszedł czas wolny a ja wpadłem na pomysł stworzenia dla siebie wygodnej aplikacji do edycji i generowania pliku hosts. Postanowiłem się podzielić z Wami tą aplikacją, być może ułatwi komuś życie ;-)
Aplikacja ma kilka możliwości jak np. dodawanie, usuwanie, edycję, włączanie i wyłączanie hostów oraz możliwość automatycznego pobierania adresu IP serwera docelowego. O co chodzi?
Jeśli chcemy aby nasza domena np. test miała adres docelowy serwera o domenie mojastrona.pl to możemy zamiast IP wpisać adres strony a program automatycznie pobierze IP serwera docelowego.
Przy każdej zmianie ustawień aplikacja sama od razu zapisuje nowe ustawienia i czyści pamięć cach DNS tak więc w większości aplikacji powinna zmiana zadziałać od razu, w wypadku przeglądarek wystarczy odświeżenie strony jeśli już jest otwarta a w wypadku aplikacji której zmiana dotyczy wymagany jest restart.

Wygląd aplikacji:

Przykładowa zawartość pliku hosts

Dodawanie nowego wpisu

Aby dodać nowy wpis (host) należy w miejsce domeny wpisać adres www jaki chcemy przekierować lub stworzyć np. google.pl, testwww itp.
W miejsce IP lub domena należy wpisać adres docelowy lub domenę www z której program automatycznie pobierze IP docelowe. Jeśli chcemy aby adresem docelowym był nasz komputer dajemy 127.0.0.1.

Aktywacja/deaktywacja wpisu, usuwanie, edycja oraz otwieranie w przeglądarce

Program pozwala na edycję, aktywację lub dezaktywację wpisu(-ów), usuwanie (również za pomocą klawisza delete) oraz otwieranie w przeglądarce.
Można zaznaczyć jednocześnie wiele wpisów i na nich operować np, usuwać, aktywować/dezaktywować oraz otwierać w przeglądarce.

Edycja wpisu

Edycja pozwala na zmianę parametrów wpisu np. domeny lub adresu docelowego.

Problemy

Rozwiązanie niestety to nie jest idealne. Możliwość stworzenia własnej lokalnej domeny działa tylko w niektórych stronach np. bing, google. Działa tylko na tych serwerach których konfiguracja serwera na to pozwala i nie korzysta z vhostów ani rozpoznawania domeny.
W wypadku niektórych stron można znaleźć się w zaskakujących miejscach ;D
Przykładem są chociażby dobreprogramy czy wikipedia gdzie zamiast na stronę wikipedii trafiamy na .... "Serwer narzędziowy - Wikimedia Polska".

Link do programu

Jest to testowa wersja programu tak więc nie gwarantuję, że będzie chodził wyśmienicie na każdym komputerze ;D
Obecnie sprawdzone jest jego działanie na Windows 7 i Windows 8 lecz program korzysta z .NET Framework 4 który równie dobrze działa na Windows XP i Windows Server 2003 oraz 2008.Pobierz program

P.S Jeśli będą problemy piszcie w komentarzach =) 

windows internet porady

Komentarze

0 nowych
kubut   17 #1 03.04.2012 11:52

Modyfikacja hostów rzeczywiście jest przydatna, ale do tej pory robiłem to ręcznie co było dość uporczywe. Dzięki za program :)

patryk9200   8 #2 03.04.2012 12:03

@kubut Cieszę się, że program okazał się przydatny ;-)

  #3 03.04.2012 15:05

A windowsiarze do wszystkiego GUI potrzebują. Dla mnie edycja pliku tekstowego jest wygodniejsza. Może to wynika z tego że windowsowy notatnik jest beznadziejny.

kwpolska   5 #4 03.04.2012 16:20

toolserver to nic dziwnego, ludzie tam trzymają np. boty na wikipedii. Wyskakiwanie chyba oczywiste -- taki serwer nie powinien stac za vhostami.

patryk9200   8 #5 03.04.2012 18:17

#Admc co Ty za bzdury opowiadasz? stworzyłem to nie ze względu na jak to nazwałeś beznadziejny notatnik, który u siebie zastąpiłem genialnym i niezawodnym Notepad++ ale ze względu na wygodę. Chyba łatwiej jest kliknąć w apkę, kliknąć dodaj usuń niż grzebać po struktórze katalogów a potem dopiero na plikach operować. Dodatkowo program w jakimś stopniu aapobiega błędom. Dodatkowo sam potrafi uzyskać adres IP a w wypadku ręcznej edycji musieli byśmy się posłkować jeszcze pingiem, whois itp. To co prawisz jest wręcz śmieszne. Czy w Linux, OS X, Unix nie można również takiego programu zrobić?
W ogóle, czemu z firefoxa korzystasz, na wygodę idziesz? Moż zacznij z linksa kożystać, w końcu w trybie tekstowym jak stwierdziłeś jest lepiej.

patryk9200   8 #6 03.04.2012 18:23

@kwpolska - w zasadzie to nie dziwne, a podsunęło mi pmysł jak dodatkowo można oddzielić panel administracyjny i go ukryć. Co do vhostów - raczej właśnie za nimi stoi. Bo właśnie vhosty pozwalają na tworzenie wielu stron pod jednym IP :)

patryk9200   8 #7 03.04.2012 18:40

a:O co za błąd! :D jak mogłem "korzystać" przez "ż" napisać :D

klerzak   1 #8 03.04.2012 19:35

Zainstalowałem i nie działa - nie wrzuciło "Hosts Editor.exe" do katalogu w którym zainstalowałem program. Mam Frameworka 4, Win 7.
Jedyne exe jakie zainstalowało, to "Hosts Editor.vshost.exe" oraz "Uninst0.exe".
A po za tym to wszystko git :p

tfl   8 #9 03.04.2012 20:40

Chetnie bym poczytal o tym jak aplikacja powstawala... :)

patryk9200   8 #10 03.04.2012 20:41

:D błąd w instalatorze.
Niestety nie umiałem znaleźć darmowego, dobrego kreatora instalatorów który sprawdza czy jest .NET Framework 4.
Jeśli dalej Tobie nie działa, to mogę Ci przesłać sam plik programu ;D

patryk9200   8 #11 03.04.2012 20:44

@tfl, co konkretnie chciał byś wiedzieć? :D w parę godzin powstała, jeśli jesteś zainteresowany jej kodem, budową itp. to mógł bym Tobie co nieco pokazać i wytłumaczyć. Z ciekawostek dodam, że aplikacja jest napisana w C# na Windows 8 Consumer Preview dodatkowo napisana w testowej wersji Visual Studio 2012 ;-)

patryk9200   8 #12 03.04.2012 20:55

Zmieniłem link do programu, dałem wersję bez instalatora, sam program, jednak trzeba pamiętać, że bez .NET Framework w wersji 4 nie zadziała ;D

tfl   8 #13 03.04.2012 21:57

@patryk9200

"technologie programistyczne" sa mi obce jak jezyk niemiecki. Wiem, ze jest der-die-das, ale jak to sie odmienia to juz nie :)

Dlatego chetnie poczytam wszystko - od tego jakie biblioteki wykorzystales, po sam proces robienia gui

patryk9200   8 #14 03.04.2012 22:13

@tfl, w takim razie, może przygotuję wpis na ten temat? :D co do j. niemieckiego, nie tylko Tobie jest obcy. Wręcz nie trawię tego języka, za to angielski bardzo lubię i sobie cenię.

Druedain   13 #15 03.04.2012 22:45

Niemiecki piękny język… C# to nie jest trochę jak z armatą w muchę?

patryk9200   8 #16 03.04.2012 22:56

@Druedain, nie dla czego? co prawda, ma możliwości ogromne, ale szybkość pisania i jakość kodu jest wyjątkowo dobra w C#. De facto większością zajmuje się .NET Framework i skupiam się tylko na faktyczych algorytmach w programie, a rysowanie okien itp. zostawiam C#. Kolejna sprawa- podoba mi się to, że program sam się kompiluje podczax pierwszego uruchomienia. Właczasz program na x64 - kompiluje się na tę platformę, jeśli na x86 to dostosowuje się do 32 bit. Osobiście nie przepadam za C++.
W C# nie muszę się martwićwskaźnikami, wyciekami pamięci itp. Wszystko to za mnie robi C#.
Dodatkowo zobacz jak niewielki rozmiar ma ten program.... całe 32KB ;-)

tores1977   8 #17 04.04.2012 00:47

Przyda się przyda. Czy mogę przekazać link do tego wpisu/programu dalej?

patryk9200   8 #18 04.04.2012 08:18

@tores1977 pewnie, jak najbardziej :)

kamil_w   10 #19 04.04.2012 13:14

Pierwsze zdanie - byk (możliwościom). Dalej nie czytam.

Druedain   13 #20 04.04.2012 13:16

@patryk9200 32KiB w na dysku, czy w RAMie, he?

patryk9200   8 #21 04.04.2012 21:51

@Druedain na dysku, w ram 4,5 Mb

mjarosz   2 #22 07.04.2012 11:09

Przydała by się w ustawieniach konta na dp opcja "Nie pokazuj komentarzy od...", nie musiał bym wtedy oglądać głupot pisanych między innymi przez użytkownika RaveStar

  #23 08.04.2012 10:58

RaveStar to pewnie wielki programista C++ któremu nie przystoi rozmawiać z developerami .NET

patryk9200   8 #24 08.04.2012 11:23

@mjarosz dokładnie!

  #25 09.04.2012 15:26

I co z tego, że program mało waży, jak teraz 95% waszych znajomych ma neta minimum 2 mbity więc nawet jakby program miał 2 MB, to nie robiłoby to nikomu żadnej różnicy, tym bardziej, że część ludzi ma dysk 1 TB, 2 TB (a większość ludzi ma przynajmniej dyski powyżej 100, 300 GB).

Co do programu to nie pobierałem go, ale wydaje się w porządku, choć nie lubię programów, które używają .NET Frameworka, albo Javę (np. taki JDownloader używa javy, wolałbym wersję normalną, bez javy durnej. Tak samo minecraft, każdemu znana gra, javy używa niestety) :(

Co do kodu źródłowego programu, to autor mógłby udostępnić go, bo taki program dość szybko można napisać i nie potrzeba siedzieć 12 godzin przy nim nawet.

DonM$   9 #26 16.04.2012 19:15

RaveStar
Bzdury piszesz, bez problemu uruchomisz program w .net z 128MB ramu.

DonM$   9 #27 16.04.2012 19:15

RaveStar
Bzdury piszesz, bez problemu uruchomisz program w .net z 128MB ramu.

  #28 19.03.2014 00:35

wyskakuje bład wczytywania strony

  #29 16.04.2014 00:22

Link do programu Nie działa

Proszę o podanie nowego Linku

patryk9200   8 #30 16.04.2014 16:22

Link poprawiony :-) nożna pobierać z http://download.patrykgolus.pl/Hosts%20Editor.exe

  #31 06.05.2014 11:31

Panowie a jeśli dodaje do pliku hosts nową stronę za pomocą notatnika i gdy próbuję to zapisać mam komunikat że potrzebuję zgody administratora to powinienem skontaktować się z dostawcą internetu ??

patryk9200   8 #32 06.05.2014 16:08

@BsdRec - spowodowane jest to tym, że plik ten jest plikiem systemowym, a co za tym idzie- od Windows Vista w górę jest chroniony przed modyfikacją przez zwykłych użytkowników. Tylko administrator może wprowadzać do niego modyfikacje. Jeśli chcesz go zmodyfikować za pomocą notatnika to najpierw uruchamiasz notatnik w trybie administracyjnym a potem wchodzisz w menu->otwórz->dysk C:/windows/system32/drivers/etc i tam znajdziesz ten plik.

Dostawca internetu nie ma z tym zupełnie nic wspólnego :-)