Jak uzyskać dostęp do komputera lokalnego za pomocą nazwy komputera zamiast adresu IP?


20

Deweloper tutaj prototypuje aplikację mobilną, nieco nową na urządzeniach mobilnych:

  • Mam prostą usługę HTTP działającą (obecnie) na moim głównym laptopie z nazwą komputera latitude.
  • Inny laptop o nazwie vaiowspółużytkujący tę samą sieć Wi-Fi może uzyskać dostęp do tej usługi za pośrednictwem http://latitude:8080- innymi słowy, może z łatwością rozwiązać (obecny) adres IP 192.168.xy (lub dowolny dynamiczny adres IP, jaki ma w danym momencie) latitude.
  • Teraz moje telefony HTC z systemem Android, podłączone do tej samej sieci Wi-Fi, mogą uzyskać adres IP, latitudewięc otwarcie w przeglądarce http://192.168.x.y:8080działa.
  • Ale chciałbym również użyć tutaj nazwy komputera, na przykład kiedy uzyskuję dostęp do usługi HTTP vaio, po prostu pisząc http://latitude:8080i każąc telefonowi rozpoznać bieżący dynamiczny adres IP latitude. To nie działa, wyświetl tylko standardową stronę błędu przeglądarki: „Strona internetowa niedostępna” .

Czy muszę zmienić ustawienia DNS w Androidzie? Nie znalazłem niczego do zabawy z ustawieniami, a takie pytanie jest również bardzo trudne do znalezienia w Google ...

One V ma Androida 4.0, a One M7 ma Androida 4.2 w przypadku, gdy robi to różnicę.

(Uwaga: powinno to działać nawet wtedy, gdy Android nie jest podłączony USB do moich komputerów i nie działa jako hotspot Wi-Fi - oczywiście, ponieważ i tak zużywa moją główną sieć Wi-Fi).

Odpowiedzi:


4

Niezależnie od tego, czy masz połączenie z siecią lokalną za pośrednictwem Wi-Fi i DHCP jest używany, Android zawsze wydaje się zastępować wpisy DNS za pomocą serwerów Google. Jest nieco ukryty, ale łatwy do zmiany - pod warunkiem, że masz własny DNS (wiele routerów już to oferuje).

Aby to zrobić, przejdź do listy sieci Wi-Fi w Ustawieniach , naciśnij długo wpis WiFi, wybierz, aby go edytować. Aktywuj ustawienia zaawansowane . Teraz możesz edytować wpisy DNS. Po prostu zamień pierwszy wpis na własny adres IP serwera DNS i pozostaw drugi wpis (DNS 2) nietknięty na wypadek cofnięcia.

Teraz, jeśli twój własny DNS może rozwiązać problemy z komputerami w sieci lokalnej, powinieneś być w stanie użyć ich nazw hostów, aby się z nimi skontaktować. Nie wymaga rootowania ani edycji hostspliku (uważam, że może to być alternatywa, jeśli nie masz uruchomionej własnej usługi DNS). Działa doskonale tutaj ze mną i moją siecią;)


Dzięki! Oto dziwna rzecz: kiedy to robię, mój router (brama) jest już wpisany jako DNS1 (a Google lub 8.8.4.4 jako DNS2). Cóż, korzystam z tych ustawień domyślnych i
stosuję

2
Nie mam planów z Windows. W moim przypadku jest to środowisko oparte na systemie Linux, a router (AVM Fritz! Box) ma uruchomiony serwer nazw. Działa płynnie.
Izzy

Powinno to co najwyżej (jeśli nawet) dotyczyć tylko starszych wersji Androida. Moje pierwsze dns to moje lokalne, a awaryjne to Google 8.8.8.8. Sprawdziłem to za pomocą getprop | grep -i dnsZobacz także android.stackexchange.com/a/32278/15713
ce4

Firefox zachowuje się inaczej i nie pokazuje tego zachowania, myślę, że robi to omnibox Chrome (połączone pole wyszukiwania / URI), który to robi
ce4,

Firefox nie używa własnych serwerów DNS (przynajmniej zastanawiałbym się, czy). Całe oprogramowanie zwykle prosi system o podanie tych informacji, więc przeglądarka nie powinna mieć tutaj znaczenia. @ ce4: Tak, tak skonfigurowałem to ręcznie na moim urządzeniu: ta sama awaria, ale podstawową musiałem ręcznie zmienić z 4.4.4.4 na mój lokalny serwer DNS. Wiem, że mój serwer DHCP wysyła te informacje, ale nie widziałem ani jednego urządzenia z Androidem, które by to honorowało.
Izzy

1

Kiedy chcę nazwę komputera zamiast adresu IP, edytuję plik HOSTS. Spróbuj dodać tam urządzenia i ich adresy IP. Wyszukiwanie w Google pliku hosts dla twojego systemu operacyjnego powinno być łatwe.


2
Edycja HOSTÓW jest przydatna tylko wtedy, gdy adres IP laptopa zawsze pozostaje niezmienny / taki sam. Nie będzie tak, ponieważ pracuję w podróży, różne sieci WiFi, dynamiczne adresy IP. Również edytowanie HOSTÓW wymaga zrootowanego Androida, ale muszę go pozostawić bezrootowym i w dużej mierze niezmodyfikowanym, aby przetestować go w warunkach „normalnego telefonu konsumenckiego”.
metaleap

0

Dodaj dwa wiersze na końcu pliku hosts ( /etc/hosts) pliku urządzenia za pomocą ES Explorera (wymaga zrootowanego urządzenia).

Szablon:

your_host_machine's_IP_address  domain_name   

Przykładem domain_namemoże być localhost.

Przykład:

::1  domain_name 

Działa dobrze podczas wpisywania localhostpaska adresu URL zamiast adresu IP.


Poprawiłem \etc\hostssię /etc/hostsi dokonała pewnych zmian w formatowaniu. Starałem się nie zmieniać intencji, ale sprawić, by wyglądała lepiej. Daj mi znać, jeśli gdzieś coś pomieszałem.
Firelord

0

W moim przypadku w systemie Windows 10 tymczasowe wyłączenie zapory systemu Windows umożliwiło surfowanie http://latitude:8080.

Na dłuższą metę stworzyłem regułę pozwalającą na tego rodzaju połączenia przez zaporę ...

  • {Windows}> Start> „Firewall”> Windows Defender Firewall z Advance Security. Reguły przychodzące> Nowa reguła ...

    • Generał
      • Nazwa: połączenia sieciowe TCP z sieci LAN
      • Zezwól na połączenie, jeśli jest bezpieczne ...
      • Wybierz: „Zezwalaj na połączenie, jeśli jest uwierzytelnione i chronione pod względem integralności”
    • Protokoły I Porty
      • Typ protokołu: TCP
      • Port lokalny: 80, 880
    • zaawansowane
      • Określ profile, które mają zastosowanie do tej reguły: Prywatne
  • {Android}. Testuj w przeglądarce Firefox lub Chrome, a nie Dolphin

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.